Re: [alsa-devel] [V2 PATCH] ALSA: hda - Enable mute/mic-mute LEDs for more Thinkpads with Conexant codec

From: Hui Wang
Date: Wed Jun 24 2015 - 04:47:23 EST


On 06/24/2015 01:37 PM, Jan Kiszka wrote:
On 2015-05-23 18:22, Jan Kiszka wrote:
On 2015-05-23 18:06, Raymond Yau wrote:
2015-5-23 äå4:50 æ "Jan Kiszka" <jan.kiszka@xxxxxx> åéï
Most Thinkpad Edge series laptops use conexant codec, so far
although
<snip>
Is there anything I can debug or any information I can collect
from my
box to examine this?
What is the linux distribution on your machine? And use showkey to
catch
the keycode of that button.
I'm running OpenSUSE 13.1. The reported keycode of the power
button is
116.
It seems the keycode is correct, it is power keycode rather the mute
keycode.

Could you please do some debug, let us find which line of code is
the
root cause for this problem. for example:

after running the line, the problem shows up:

1. if (ACPI_SUCCESS(acpi_get_devices("LEN0068", acpi_check_cb,
&found, NULL)) && found) // in the sound/pci/hda/thinkpad_helper.c,
is_thinkpad()
This evaluates to true

2. return ACPI_SUCCESS(acpi_get_devices("IBM0068",
acpi_check_cb,
&found, NULL)) && found; // same as above

3. if (led_set_func(TPACPI_LED_MUTE, false) >= 0) { //in the
sound/pci/hda/thinkpad_helper.c, hda_fixup_thinkpad_acpi()
...and this

4. if (led_set_func(TPACPI_LED_MICMUTE, false) >= 0) { // same as
above

...and this as well. spec->num_adc_nids is 1.
If we change the code like below, does the power button can work well?

in the thinkpad_helper.c, hda_fixup_thinkpad_acpi()


if (led_set_func(TPACPI_LED_MUTE, false) >= 0) {
/*
old_vmaster_hook = spec->vmaster_mute.hook;
spec->vmaster_mute.hook = update_tpacpi_mute_led;
removefunc = false;
*/
Disabling only this block resolves the issue.
So Below two lines make the power button change to the reset button.

drivers/platform/x86/thinkpad_acpi.c mute_led_on_off():

acpi_get_handle(hkey_handle, "SSMS", &temp);
acpi_evalf(hkey_handle, &output, "SSMS", "dd", 1);


@alexhung,
Do you have any idea why this can affect the power button behavior?

I think we all lost track of this issue, but it unfortunately still
exists in the latest kernel, requiring custom builds here. How can we
proceed?
http://mailman.alsa-project.org/pipermail/alsa-devel/2015-May/091561.html

If you cannot find "SSMS" in your T520 ACPI dump, this mean mute LED
cannot be turn on/off similar to T510
There is an entry (see attached disassembly), but this device has at
least no physical LED to drive.
Some hotkey leds are embedded on button. Through the pictures I found on the internet (thinkpad t520), it looks like there is a led at the center of the mute button.


Jan

Ping...

Jan
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/