[PATCH] platform/loongarch: laptop: explicitly reset the bl_powered state when resuming

[email protected] Wed, 22 Jul 2026 12:44:50 +0800
Newsgroups dev.linux.lists.loongarch,org.kernel.vger.linux-kernel,org.kernel.vger.stable
Message-ID <[email protected]>
From: Zixing Liu <[email protected]>

On EAECIS NL60R with EC firmware version 1.11, resuming from S3 has a very
high chance (>= 90%) of causing the EC to lose the previous backlight
power state. When this happens, the laptop resumes normally from S3, but
the backlight remains off (when shining on the screen with a flash light,
we can see the screen contents are updating normally).

Since there is no generic way to query the EC's backlight state on
Loongson laptop platforms, assume the worst-case scenario and restart the
backlight power inside the kernel each time the system resumes.

Cc: [email protected]
Fixes: 53c762b47f72 ("platform/loongarch: laptop: Add backlight power control support")
Signed-off-by: Zixing Liu <[email protected]>
---
 drivers/platform/loongarch/loongson-laptop.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/platform/loongarch/loongson-laptop.c b/drivers/platform/loongarch/loongson-laptop.c
index 61b18ac206c9e..742a585b0647c 100644
--- a/drivers/platform/loongarch/loongson-laptop.c
+++ b/drivers/platform/loongarch/loongson-laptop.c
@@ -200,6 +200,7 @@ static int loongson_hotkey_resume(struct device *dev)
 
 	bd = backlight_device_get_by_type(BACKLIGHT_PLATFORM);
 	if (bd) {
+		bl_powered = false;
 		loongson_laptop_backlight_update(bd) ?
 		pr_warn("Loongson_backlight: resume brightness failed") :
 		pr_info("Loongson_backlight: resume brightness %d\n", bd->props.brightness);
-- 
2.52.0