ACPI: PM: s2idle: Evaluate all Low-Power S0 Idle _DSM functions
Commit073237281a
("ACPI: PM: s2idle: Enable Low-Power S0 Idle MSFT UUID for non-AMD systems") attempted to avoid evaluating the same Low- Power S0 Idle _DSM functions for different UUIDs, but that turns out to be a mistake, because some systems in the field are adversely affected by it. Address this by allowing all Low-Power S0 Idle _DSM functions to be evaluated, but still print the message regarding duplication of Low- Power S0 Idle _DSM function sets for different UUIDs. Fixes:073237281a
("ACPI: PM: s2idle: Enable Low-Power S0 Idle MSFT UUID for non-AMD systems") Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218750 Reported-and-tested-by: Mark Pearson <mpearson@lenovo.com> Suggested-by: Mario Limonciello <mario.limonciello@amd.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
This commit is contained in:
parent
ed30a4a51b
commit
68301ef471
@ -492,16 +492,14 @@ static int lps0_device_attach(struct acpi_device *adev,
|
||||
unsigned int func_mask;
|
||||
|
||||
/*
|
||||
* Avoid evaluating the same _DSM function for two
|
||||
* different UUIDs and prioritize the MSFT one.
|
||||
* Log a message if the _DSM function sets for two
|
||||
* different UUIDs overlap.
|
||||
*/
|
||||
func_mask = lps0_dsm_func_mask & lps0_dsm_func_mask_microsoft;
|
||||
if (func_mask) {
|
||||
if (func_mask)
|
||||
acpi_handle_info(adev->handle,
|
||||
"Duplicate LPS0 _DSM functions (mask: 0x%x)\n",
|
||||
func_mask);
|
||||
lps0_dsm_func_mask &= ~func_mask;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user