On Thu, 15 Aug 2019 18:33:50 +0200, Jerónimo Borque wrote: > > Hi Takashi, > Modifying Mic Mute-LED Mode does indeed alter the behavior. The thing is that > this ends being confusing as in all machines I've been testing this setting > Mic Mute-LED Mode to "Follow Capture" actually makes it follow mute, as > setting it to "On" turns the LED off. > There is other setting called "mute_led_polarity" but this does not work, as > currently mic mute LED and mute LED do not follow the same logic. > What I think may be causing confusion is "cxt_update_gpio_led" "enabled" > parameter. Setting "enabled" to "true" sets the GPIO pin to 0 causing the led > to be turned off. I think "enabled" used to refer to the input capture or > output status and not to the LED being lit or not. Output or input not enabled > (enabled==false) caused the LED to be turned on. > This logic in the function negates it on the GPIO output. > > if (enabled) > spec->gpio_led &= ~mask; > else > spec->gpio_led |= mask; > > May be I can do a more comprehensive fix, reversing the behavior of > "cxt_update_gpio_led" "enabled" parameter to refer the GPIO output value ( > enabled==true => GPIO pin output high ) > Then also modify the call to "cxt_update_gpio_led" in > "cxt_fixup_gpio_mute_hook" to make it work consistently. OK, if the "On" turns the LED off, it's indeed inverted. Then we'd need to consider both fixing the inverted behavior and the default mic-mute mode. Could you confirm the following? - Which models and codecs are checked? - GPIO pin high = mic LED on or off? - How is the expected behavior on Windows? Mute is on when mic is muted, or mute-on when mic is ready? thanks, Takashi > > Thanks, > Jerónimo > > El jue., 15 de ago. de 2019 a la(s) 02:58, Takashi Iwai (tiwai@xxxxxxx) > escribió: > > On Thu, 15 Aug 2019 03:38:24 +0200, > <jeronimo@xxxxxxxxxxxxx> wrote: > > > > From: Jeronimo Borque <jeronimo@xxxxxxxxxxxxx> > > > > "enabled" parameter historically referred to the device input or > > output, not to the led indicator. After the changes added with the > > led helper functions the mic mute led logic refers to the led and not > > to the mic input which caused led indicator to be negated (Mic mute > > led was on when the input enabled) Fixing it in the call to > > cxt_update_gpio_led at the cxt_gpio_micmute_update hook. > > Maybe more changes are required to be consistent everywhere. > > > > Signed-off-by: Jeronimo Borque <jeronimo@xxxxxxxxxxxxx> > > Could you check which value you have in "Mic Mute-LED Mode" mixer > element? I guess it's "Follow Mute". If so, change it to "Follow > Capture". > > If this works, it means that the driver works as expected but the > problem is only about the default value. The default value set in the > generic parser is based on other machine's standard (LED on at mic > off), while some machines might expect differently. On such machines, > we need to set the different value initially in the quirk fixup. > > thanks, > > Takashi > > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel