Re: [PATCH] ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jul 18, 2021 at 6:11 AM Mario Limonciello
<mario.limonciello@xxxxxxx> wrote:
>
> AMD systems with uPEP HID AMDI007 should be using revision 2 and
> the AMD method.
>
> CC: stable@xxxxxxxxxx # v5.14

Well, what do you mean?

5.14 is still under development.


> Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx>
> ---
>  drivers/acpi/x86/s2idle.c | 10 ++++++++--
>  1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
> index 1c507804fb10..fbdbef0ab552 100644
> --- a/drivers/acpi/x86/s2idle.c
> +++ b/drivers/acpi/x86/s2idle.c
> @@ -378,19 +378,25 @@ static int lps0_device_attach(struct acpi_device *adev,
>                  * AMDI0006:
>                  * - should use rev_id 0x0
>                  * - function mask = 0x3: Should use Microsoft method
> +                * AMDI0007:
> +                * - Should use rev_id 0x2
> +                * - Should only use AMD method
>                  */
>                 const char *hid = acpi_device_hid(adev);
> -               rev_id = 0;
> +               rev_id = strcmp(hid, "AMDI0007") ? 0 : 2;
>                 lps0_dsm_func_mask = validate_dsm(adev->handle,
>                                         ACPI_LPS0_DSM_UUID_AMD, rev_id, &lps0_dsm_guid);
>                 lps0_dsm_func_mask_microsoft = validate_dsm(adev->handle,
> -                                       ACPI_LPS0_DSM_UUID_MICROSOFT, rev_id,
> +                                       ACPI_LPS0_DSM_UUID_MICROSOFT, 0,
>                                         &lps0_dsm_guid_microsoft);
>                 if (lps0_dsm_func_mask > 0x3 && (!strcmp(hid, "AMD0004") ||
>                                                  !strcmp(hid, "AMDI0005"))) {
>                         lps0_dsm_func_mask = (lps0_dsm_func_mask << 1) | 0x1;
>                         acpi_handle_debug(adev->handle, "_DSM UUID %s: Adjusted function mask: 0x%x\n",
>                                           ACPI_LPS0_DSM_UUID_AMD, lps0_dsm_func_mask);
> +               } else if (lps0_dsm_func_mask_microsoft > 0 && !strcmp(hid, "AMDI0007")) {
> +                       lps0_dsm_func_mask_microsoft = -EINVAL;
> +                       acpi_handle_debug(adev->handle, "_DSM Using AMD method\n");
>                 }
>         } else {
>                 rev_id = 1;
> --
> 2.25.1
>



[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux