On Mon, Mar 01, 2021 at 05:38:34PM +0800, Perry Yuan wrote: > + /* Micmute LED state changed by muted/unmute switch */ > + if (mc->invert) { > + if (ucontrol->value.integer.value[0] || ucontrol->value.integer.value[1]) { > + micmute_led = LED_OFF; > + } else { > + micmute_led = LED_ON; > + } > + ledtrig_audio_set(LED_AUDIO_MICMUTE, micmute_led); > + } These conditionals on inversion seem weird and counterintuitive. If we're going with this approach it would probably be clearer to define a custom operation for the affected controls that wraps the standard one and adds the LED setting rather than keying off invert like this.