]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
platform: arm64: thinkpad-t14s-ec: add suspend handler for keyboard backlight
authorSebastian Reichel <sre@kernel.org>
Wed, 19 Nov 2025 00:41:43 +0000 (01:41 +0100)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Mon, 24 Nov 2025 17:05:57 +0000 (19:05 +0200)
This ensures that the keyboard backlight state is restored after
a suspend-resume cycle. Otherwise the keyboard is automatically
disabled during suspend and then stays disabled after resume.

Note, that this adopts the same behavior as the existing Thinkpad
ACPI driver.

Signed-off-by: Sebastian Reichel <sre@kernel.org>
Link: https://patch.msgid.link/20251119-thinkpad-t14s-ec-improvements-v2-4-441219857c02@kernel.org
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/arm64/lenovo-thinkpad-t14s.c

index 4bebe7b3b2a8cebd44e0b92d573e2101a7b25006..1569a0b2a0e7633b8a261525addf858343553725 100644 (file)
@@ -606,6 +606,8 @@ static int t14s_ec_suspend(struct device *dev)
 {
        struct t14s_ec *ec = dev_get_drvdata(dev);
 
+       led_classdev_suspend(&ec->kbd_backlight);
+
        t14s_ec_write_sequence(ec, T14S_EC_REG_MODERN_STANDBY,
                               T14S_EC_MODERN_STANDBY_ENTRY, 3);
 
@@ -619,6 +621,8 @@ static int t14s_ec_resume(struct device *dev)
        t14s_ec_write_sequence(ec, T14S_EC_REG_MODERN_STANDBY,
                               T14S_EC_MODERN_STANDBY_EXIT, 3);
 
+       led_classdev_resume(&ec->kbd_backlight);
+
        return 0;
 }