Re: [PATCH 2/2] ACPI: PM: Include alternate AMDI0005 id in special behaviour

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

 



On Mon, Oct 11, 2021 at 3:47 PM Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
>
> Hi,
>
> On 10/2/21 6:18 AM, Sachi King wrote:
> > The Surface Laptop 4 AMD has used the AMD0005 to identify this
> > controller instead of using the appropriate ACPI ID AMDI0005.  The
> > AMD0005 needs the same special casing as AMDI0005.
> >
> > Cc: <stable@xxxxxxxxxxxxxxx> # 5.14+
> > Signed-off-by: Sachi King <nakato@xxxxxxxxx>
>
> Rafael, I assume that you will pick up this one?  Please add the
> following tags from other parts of the thread:
>
> Link: https://github.com/linux-surface/acpidumps/tree/master/surface_laptop_4_amd
> Link: https://gist.github.com/nakato/2a1a7df1a45fe680d7a08c583e1bf863
> Reviewed-by: Mario Limonciello <mario.limonciello@xxxxxxx>
>

Applied as 5.15-rc material.

Thanks for collecting the tags for me Hans!


> > ---
> >  drivers/acpi/x86/s2idle.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c
> > index bd92b549fd5a..1c48358b43ba 100644
> > --- a/drivers/acpi/x86/s2idle.c
> > +++ b/drivers/acpi/x86/s2idle.c
> > @@ -371,7 +371,7 @@ static int lps0_device_attach(struct acpi_device *adev,
> >               return 0;
> >
> >       if (acpi_s2idle_vendor_amd()) {
> > -             /* AMD0004, AMDI0005:
> > +             /* AMD0004, AMD0005, AMDI0005:
> >                * - Should use rev_id 0x0
> >                * - function mask > 0x3: Should use AMD method, but has off by one bug
> >                * - function mask = 0x3: Should use Microsoft method
> > @@ -390,6 +390,7 @@ static int lps0_device_attach(struct acpi_device *adev,
> >                                       ACPI_LPS0_DSM_UUID_MICROSOFT, 0,
> >                                       &lps0_dsm_guid_microsoft);
> >               if (lps0_dsm_func_mask > 0x3 && (!strcmp(hid, "AMD0004") ||
> > +                                              !strcmp(hid, "AMD0005") ||
> >                                                !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",
> >
>



[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux