lkml.org 
[lkml]   [2008]   [Aug]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: ACPI OSI disaster on latest HP laptops - critical temperature shutdown
On Sat, Aug 02, 2008 at 11:38:33AM -0300, Henrique de Moraes Holschuh wrote:

> Yes. IBM ThinkPads store the result of each version test separately, and I
> recall I saw at least one DSDT code path that didn't test all of them in
> order to select a branch of code to run.

As an example, here's a section from the T61:

If (\_OSI ("Windows 2001"))
{
Store (0x01, \WNTF)
Store (0x01, \WXPF)
Store (0x00, \WSPV)
}

If (\_OSI ("Windows 2001 SP1"))
{
Store (0x01, \WSPV)
}

If (\_OSI ("Windows 2001 SP2"))
{
Store (0x02, \WSPV)
}

And then later:

If (LAnd (\WXPF, LGreaterEqual (\WSPV, 0x01)))
{
PPMS (0x02)
}

The only way WXPF can be non-zero and WSPV can be greater or equal to
one is if more than one of those tests succeeded.

> > Not all BIOSes would support this, so we'd need to support the Windows
> > workarounds anyway. At that point, there's no real benefit in having
> > multiple codepaths.
>
> Sorry, but I will disagree.
>
> Anything that can help in the future with the vendors that are better at
> Linux support is a good thing. You are right that we will still have to
> deal with the others, but there are such things as vendor-specific windows
> workarounds (they didn't want to change their firmware, or they couldn't, or
> the others didn't care to add the workaround, etc). If that vendor uses the
> "NotWindows" OSI correctly, we would not need to take any special action.

Allowing vendors to special-case Linux means that we have to have a
special-case path for the minority of vendors who ask for this. It's
added complexity and we don't actually gain anything from it.

--
Matthew Garrett | mjg59@srcf.ucam.org


\
 
 \ /
  Last update: 2008-08-02 17:43    [W:0.115 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site