Hi, On 11-11-16 15:12, Pali Rohár wrote: > On Tuesday 01 November 2016 14:37:46 Hans de Goede wrote: >> Make thinkpad_acpi call led_notify_brightness_change on the kbd_led >> led_classdev registered by thinkpad_acpi when the kbd backlight >> brightness changes. >> >> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> >> --- >> Changes in v3: >> -This is a new patch in v3 of this patch-set >> Changes in v4: >> -No Changes >> --- >> drivers/platform/x86/thinkpad_acpi.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/drivers/platform/x86/thinkpad_acpi.c >> b/drivers/platform/x86/thinkpad_acpi.c index b65ce75..5dcd7d8b >> 100644 >> --- a/drivers/platform/x86/thinkpad_acpi.c >> +++ b/drivers/platform/x86/thinkpad_acpi.c >> @@ -162,6 +162,7 @@ enum tpacpi_hkey_event_t { >> TP_HKEY_EV_HOTKEY_BASE = 0x1001, /* first hotkey (FN+F1) */ >> TP_HKEY_EV_BRGHT_UP = 0x1010, /* Brightness up */ >> TP_HKEY_EV_BRGHT_DOWN = 0x1011, /* Brightness down */ >> + TP_HKEY_EV_THINKLIGHT = 0x1012, /* Thinklight/kbd backlight */ > > My question remains. Is this for Thinklight or keyboard backlight? > Because Thinklinght has led device "tpacpi_led_thinklight" and keyboard > backlight has led device "tpacpi_led_kbdlight". I would say both, this matches with the pre-existing TP_ACPI_HKEY_THNKLGHT_MASK (they have a 1:1 mapping), keep in mind that there are no thinkpads with both a thinklight and a backlit keyboard, as those both serve the same purpose so it looks like the re-used the scancode. I've tried this code on both a W541 and a P50 and both emit TP_ACPI_HOTKEYSCAN_FNPAGEUP for the backlight keyboard hotkey (fn + space), I'm naming the event for this TP_HKEY_EV_THINKLIGHT for consistency with the existing TP_ACPI_HKEY_THNKLGHT_MASK which corresponds to TP_ACPI_HOTKEYSCAN_FNPAGEUP. >> TP_HKEY_EV_VOL_UP = 0x1015, /* Volume up or unmute */ >> TP_HKEY_EV_VOL_DOWN = 0x1016, /* Volume down or unmute */ >> TP_HKEY_EV_VOL_MUTE = 0x1017, /* Mixer output mute */ >> @@ -5167,6 +5168,8 @@ static int __init kbdlight_init(struct >> ibm_init_struct *iibm) return rc; >> } >> >> + tpacpi_hotkey_driver_mask_set(hotkey_driver_mask | >> + TP_ACPI_HKEY_THNKLGHT_MASK); >> return 0; >> } >> >> @@ -9114,6 +9117,8 @@ static void tpacpi_driver_event(const unsigned >> int hkey_event) volume_alsa_notify_change(); >> } >> } >> + if (tp_features.kbdlight && hkey_event == TP_HKEY_EV_THINKLIGHT) >> + led_notify_brightness_change(&tpacpi_led_kbdlight.led_classdev); > > This looks incorrect. You are trying to inform tpacpi_led_kbdlight when > tpacpi_led_thinklight change led status? No as said the scancode / event is shared, notice the check for tp_features.kbdlight, so the notify will only happen on laptops which actually have a backlit keyboard. Regards, Hans > >> } >> >> static void hotkey_driver_event(const unsigned int scancode) > ------------------------------------------------------------------------------ Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon Phi processor-based developer platforms. With one year of Intel Parallel Studio XE. Training and support from Colfax. Order your platform today. http://sdm.link/xeonphi _______________________________________________ ibm-acpi-devel mailing list ibm-acpi-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/ibm-acpi-devel