lkml.org 
[lkml]   [2015]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH V2] ACPI: Support D3 COLD device in old BIOS for ZPODD
Date
On Wednesday, December 09, 2015 04:17:30 PM Ken Xue wrote:
> D3cold is only regarded as valid if the "_PR3" object is
> present for the given device after the commit 20dacb71ad28
> ("ACPI/PM: Rework device power management to follow ACPI 6").
>
> But some old BIOS only defined "_PS3" for the D3COLD device,
> such as ZPODD device. And old kernel also believes the device with
> "_PS3" is a D3COLD device.
>
> So, add some logics for supporting D3 COLD device with old BIOS
> which is compatible with earlier ACPI spec and kernel behavior.
>
> Reference:
> http://marc.info/?l=linux-acpi&m=144946938709759&w=2
>
> Signed-off-by: Ken Xue <Ken.Xue@amd.com>
> Reported-and-tested-by: Gang Long <Gang.Long@amd.com>
> ---
> include/acpi/acpi_bus.h | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
> index ad0a5ff..9894b75 100644
> --- a/include/acpi/acpi_bus.h
> +++ b/include/acpi/acpi_bus.h
> @@ -631,7 +631,9 @@ static inline bool acpi_device_can_wakeup(struct acpi_device *adev)
>
> static inline bool acpi_device_can_poweroff(struct acpi_device *adev)
> {
> - return adev->power.states[ACPI_STATE_D3_COLD].flags.valid;
> + return adev->power.states[ACPI_STATE_D3_COLD].flags.valid ||
> + ((acpi_gbl_FADT.header.revision < 6) &&
> + adev->power.states[ACPI_STATE_D3_HOT].flags.explicit_set);
> }
>
> #else /* CONFIG_ACPI */

This is fine by me, but _PS3 is allowed to remove power from the device even by ACPI 6.

Queued up for 4.5, thanks!

Rafael



\
 
 \ /
  Last update: 2015-12-10 00:01    [W:0.049 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site