Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1351599

Re: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full platforms without _S5

From "Rafael J. Wysocki" <rafael@kernel.org>
Newsgroups linux.kernel
Subject Re: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full platforms without _S5
Date 2016-03-07 14:20 +0100
Message-ID <ra3eP-3jo-7@gated-at.bofh.it> (permalink)
References <r9Tp7-5aA-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Mon, Mar 7, 2016 at 3:50 AM, Chen Yu <yu.c.chen@intel.com> wrote:
> The problem is Linux registers pm_power_off = efi_power_off
> only if we are in hardware reduced mode. Actually, what we also
> want is to do this when ACPI S5 is simply not supported on
> non-legacy platforms. That should handle both the HW reduced mode,
> and the HW-full mode where the DSDT fails to supply an _S5 object.
>
> This patch fixes this issue by introducing a new flag acpi_no_s5 which
> indicates the non-existence of _S5. The initial state of acpi_no_s5 is
> false and probed in acpi_sleep_init, then we'll later see the updated
> value in efi_poweroff_required, according to which we can set pm_power_off
> to efi_power_off in efi_shutdown_init, if no other pm_power_off available.
>
> Suggested-by: Len Brown <len.brown@intel.com>
> Signed-off-by: Chen Yu <yu.c.chen@intel.com>
> ---
> v3:
>  - Only assign pm_power_off to efi_power_off when there are no
>    other pm_power_off registered at that time, in case other
>    commponents would like to customize their own implementation.
> ---
> v2:
>  - Convert the acpi_no_s5 to a global bool variable in sleep.c and
>    add a declaration to include/linux/acpi.h.
> ---
>  arch/x86/platform/efi/quirks.c | 2 +-
>  drivers/acpi/sleep.c           | 8 ++++++++
>  include/linux/acpi.h           | 1 +
>  3 files changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/platform/efi/quirks.c b/arch/x86/platform/efi/quirks.c
> index 2d66db8..0d4186b 100644
> --- a/arch/x86/platform/efi/quirks.c
> +++ b/arch/x86/platform/efi/quirks.c
> @@ -295,5 +295,5 @@ bool efi_reboot_required(void)
>
>  bool efi_poweroff_required(void)
>  {
> -       return !!acpi_gbl_reduced_hardware;
> +       return acpi_gbl_reduced_hardware || (acpi_no_s5 && !pm_power_off);

What if CONFIG_ACPI is not set here?

>  }

Thanks,
Rafael

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full platforms without _S5 Chen Yu <yu.c.chen@intel.com> - 2016-03-07 03:50 +0100
  Re: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full  platforms without _S5 "Rafael J. Wysocki" <rafael@kernel.org> - 2016-03-07 14:20 +0100
    RE: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full  platforms without _S5 "Chen, Yu C" <yu.c.chen@intel.com> - 2016-03-07 16:50 +0100
    RE: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full  platforms without _S5 "Chen, Yu C" <yu.c.chen@intel.com> - 2016-03-07 17:00 +0100
      Re: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full platforms without _S5 "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-03-08 03:00 +0100
        RE: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full  platforms without _S5 "Chen, Yu C" <yu.c.chen@intel.com> - 2016-03-08 17:30 +0100
          Re: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full platforms without _S5 "Rafael J. Wysocki" <rjw@rjwysocki.net> - 2016-03-09 00:00 +0100
            RE: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full  platforms without _S5 "Chen, Yu C" <yu.c.chen@intel.com> - 2016-03-10 03:20 +0100
          Re: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full  platforms without _S5 Matt Fleming <matt@codeblueprint.co.uk> - 2016-03-09 16:40 +0100
            RE: [PATCH][RFC v3] ACPI / PM: Fix poweroff issue on HW-full  platforms without _S5 "Chen, Yu C" <yu.c.chen@intel.com> - 2016-03-10 03:30 +0100

csiph-web