diff mbox series

ACPI: PM: s2idle: Invert Microsoft UUID entry and exit

Message ID 20210810014004.16399-1-mario.limonciello@amd.com
State Accepted
Commit 4753b46e16073c3100551a61024989d50f5e4874
Headers show
Series ACPI: PM: s2idle: Invert Microsoft UUID entry and exit | expand

Commit Message

Mario Limonciello Aug. 10, 2021, 1:40 a.m. UTC
It was reported by a user with a Dell m15 R5 (5800H) that
the keyboard backlight was turning on when entering suspend
and turning off when exiting (the opposite of how it should be).

The user bisected it back to commit 5dbf50997578 ("ACPI: PM:
s2idle: Add support for new Microsoft UUID").  Previous to that
commit the LEDs didn't turn off at all.  Confirming in the spec,
these were reversed when introduced.

Fix them to match the spec.

BugLink: https://gitlab.freedesktop.org/drm/amd/-/issues/1230#note_1021836
Fixes: 5dbf50997578 ("ACPI: PM: s2idle: Add support for new Microsoft UUID")
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
---
 drivers/acpi/x86/s2idle.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Rafael J. Wysocki Aug. 16, 2021, 4:30 p.m. UTC | #1
On Tue, Aug 10, 2021 at 3:40 AM Mario Limonciello
<mario.limonciello@amd.com> wrote:
>

> It was reported by a user with a Dell m15 R5 (5800H) that

> the keyboard backlight was turning on when entering suspend

> and turning off when exiting (the opposite of how it should be).

>

> The user bisected it back to commit 5dbf50997578 ("ACPI: PM:

> s2idle: Add support for new Microsoft UUID").  Previous to that

> commit the LEDs didn't turn off at all.  Confirming in the spec,

> these were reversed when introduced.

>

> Fix them to match the spec.

>

> BugLink: https://gitlab.freedesktop.org/drm/amd/-/issues/1230#note_1021836

> Fixes: 5dbf50997578 ("ACPI: PM: s2idle: Add support for new Microsoft UUID")

> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>

> ---

>  drivers/acpi/x86/s2idle.c | 4 ++--

>  1 file changed, 2 insertions(+), 2 deletions(-)

>

> diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c

> index fbdbef0ab552..3a308461246a 100644

> --- a/drivers/acpi/x86/s2idle.c

> +++ b/drivers/acpi/x86/s2idle.c

> @@ -452,7 +452,7 @@ int acpi_s2idle_prepare_late(void)

>         if (lps0_dsm_func_mask_microsoft > 0) {

>                 acpi_sleep_run_lps0_dsm(ACPI_LPS0_SCREEN_OFF,

>                                 lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);

> -               acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_EXIT,

> +               acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_ENTRY,

>                                 lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);

>                 acpi_sleep_run_lps0_dsm(ACPI_LPS0_ENTRY,

>                                 lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);

> @@ -479,7 +479,7 @@ void acpi_s2idle_restore_early(void)

>         if (lps0_dsm_func_mask_microsoft > 0) {

>                 acpi_sleep_run_lps0_dsm(ACPI_LPS0_EXIT,

>                                 lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);

> -               acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_ENTRY,

> +               acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_EXIT,

>                                 lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);

>                 acpi_sleep_run_lps0_dsm(ACPI_LPS0_SCREEN_ON,

>                                 lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);

> --


Applied as 5.14-rc material, thanks!
diff mbox series

Patch

diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
index fbdbef0ab552..3a308461246a 100644
--- a/drivers/acpi/x86/s2idle.c
+++ b/drivers/acpi/x86/s2idle.c
@@ -452,7 +452,7 @@  int acpi_s2idle_prepare_late(void)
 	if (lps0_dsm_func_mask_microsoft > 0) {
 		acpi_sleep_run_lps0_dsm(ACPI_LPS0_SCREEN_OFF,
 				lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);
-		acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_EXIT,
+		acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_ENTRY,
 				lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);
 		acpi_sleep_run_lps0_dsm(ACPI_LPS0_ENTRY,
 				lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);
@@ -479,7 +479,7 @@  void acpi_s2idle_restore_early(void)
 	if (lps0_dsm_func_mask_microsoft > 0) {
 		acpi_sleep_run_lps0_dsm(ACPI_LPS0_EXIT,
 				lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);
-		acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_ENTRY,
+		acpi_sleep_run_lps0_dsm(ACPI_LPS0_MS_EXIT,
 				lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);
 		acpi_sleep_run_lps0_dsm(ACPI_LPS0_SCREEN_ON,
 				lps0_dsm_func_mask_microsoft, lps0_dsm_guid_microsoft);