Re: [PATCH] ACPI: x86: Adjust Microsoft LPS0 _DSM handling sequence

From: Rafael J. Wysocki
Date: Fri Jun 02 2023 - 10:51:33 EST


On Fri, Jun 2, 2023 at 5:06 AM David E. Box <david.e.box@xxxxxxxxxxxxxxx> wrote:
>
> On Thu, 2023-06-01 at 20:46 -0500, Limonciello, Mario wrote:
> >
> > On 6/1/2023 8:31 PM, David E. Box wrote:
> > > On Thu, 2023-06-01 at 18:39 -0500, Mario Limonciello wrote:
> > > > In Windows the Microsoft _DSM doesn't call functions 3->5->7 for suspend
> > > > and 8->6->4 for resume like Linux currently does.
> > > >
> > > > Rather it calls 3->7->5 for suspend and 6->8->4 for resume.
> > > > Align this calling order for Linux as well.
> > > >
> > > > Link:
> > > > https://learn.microsoft.com/en-us/windows-hardware/design/device-experiences/modern-standby-states
> > > I didn't catch the ordering in the link.
> >
> > Yeah it's tough to interpret from the link, because the picture at the
> > bottom
> > is missing annotations.
> >
> > Basically if you look at the picture the blue part is the screen on/off.
> >
> > The green part is "modern standby" and then the little "humps" are LPS0
> > enter/exit.
> >
> > > Was there any issue that prompted this
> > > change?
> >
> >
> > We were debugging an unrelated problem and noticed the difference
> > comparing the
> >
> > BIOS debugging log from Windows and Linux.
> >
> > If an OEM depends on this call order in that code used in LPS0 phase
> > requires
> > changes from MS phase I could hypothesize this fixes it.
> >
> >
> > > David
> >
> > BTW - is there interest in supporting the Microsoft _DSM GUID for Intel
> > side too?
> >
> > It's an incongruity today that we run both AMD GUID and Microsoft GUID
> > for AMD systems
> > but only run Intel GUID for Intel systems.
>
> There hasn't been a need yet. Rafael have you look at it?

Nothing official ATM AFAICS.

But I guess it'll need to be used on Intel at one point too.