platform/loongarch: laptop: Get brightness setting from EC on probe
commit 1205088fd0393bd9eae96b62bf1e4b9eb1b73edf upstream.
Previously during driver probe, 1 is unconditionally taken as current
brightness value and set to props.brightness, which will be considered
as the brightness before suspend and restored to EC on resume. Since a
brightness value of 1 almost never matches EC's state on coldboot (my
laptop's EC defaults to 80), this causes surprising changes of screen
brightness on the first time of resume after coldboot.
Let's get brightness from EC and take it as the current brightness on
probe of the laptop driver to avoid the surprising behavior. Tested on
TongFang L860-T2 Loongson-3A5000 laptop.
Cc: stable@vger.kernel.org
Fixes: 6246ed0911
("LoongArch: Add ACPI-based generic laptop driver")
Signed-off-by: Yao Zi <ziyao@disroot.org>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
1921781ec4
commit
3bce9e6be0
@@ -392,8 +392,8 @@ static int laptop_backlight_register(void)
|
|||||||
if (!acpi_evalf(hotkey_handle, &status, "ECLL", "d"))
|
if (!acpi_evalf(hotkey_handle, &status, "ECLL", "d"))
|
||||||
return -EIO;
|
return -EIO;
|
||||||
|
|
||||||
props.brightness = 1;
|
|
||||||
props.max_brightness = status;
|
props.max_brightness = status;
|
||||||
|
props.brightness = ec_get_brightness();
|
||||||
props.type = BACKLIGHT_PLATFORM;
|
props.type = BACKLIGHT_PLATFORM;
|
||||||
|
|
||||||
backlight_device_register("loongson_laptop",
|
backlight_device_register("loongson_laptop",
|
||||||
|
Reference in New Issue
Block a user