drivers/platform/loongarch/loongson-laptop.c | 1 + 1 file changed, 1 insertion(+)
From: Zixing Liu <liushuyu@aosc.io>
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: stable@vger.kernel.org
Fixes: 53c762b47f72 ("platform/loongarch: laptop: Add backlight power control support")
Signed-off-by: Zixing Liu <liushuyu@aosc.io>
---
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
On Wed, Jul 22, 2026 at 12:44:50PM +0800, liushuyu@aosc.io wrote:
> From: Zixing Liu <liushuyu@aosc.io>
>
> 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: stable@vger.kernel.org
> Fixes: 53c762b47f72 ("platform/loongarch: laptop: Add backlight power control support")
> Signed-off-by: Zixing Liu <liushuyu@aosc.io>
Tested on my TongFang L860-T2 3A5000 laptop, which isn't affected by
the EC issue, after resuming from S3 the brightness kept unchanged,
no regression is observed.
Tested-by: Yao Zi <me@ziyao.cc>
Regards,
Yao Zi
Hi, Zixing,
On Wed, Jul 22, 2026 at 12:45 PM <liushuyu@aosc.io> wrote:
>
> From: Zixing Liu <liushuyu@aosc.io>
>
> 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: stable@vger.kernel.org
> Fixes: 53c762b47f72 ("platform/loongarch: laptop: Add backlight power control support")
> Signed-off-by: Zixing Liu <liushuyu@aosc.io>
> ---
> 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;
I think it is a little better to move this line into loongson_hotkey_suspend().
Huacai
> 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
>
© 2016 - 2026 Red Hat, Inc.