From: Thomas Renninger <trenn@suse.de>
To: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Cc: Theodore Tso <tytso@MIT.EDU>,
Matthew Garrett <mjg59@srcf.ucam.org>,
Len Brown <lenb@kernel.org>,
linux-acpi <linux-acpi@vger.kernel.org>
Subject: Re: [PATCH 5/5] ACPI: add DMI to enable OSI(Linux) on ThinkPad T61
Date: Mon, 18 Feb 2008 17:58:22 +0100 [thread overview]
Message-ID: <1203353902.6019.119.camel@queen.suse.de> (raw)
In-Reply-To: <20080120194919.GE19295@khazad-dum.debian.net>
Hi,
On Sun, 2008-01-20 at 17:49 -0200, Henrique de Moraes Holschuh wrote:
> On Sat, 19 Jan 2008, Theodore Tso wrote:
> > Sure, and that means they have to *tell* *us* what they are doing so
> > we can be compatible with Windows. The concern is that they may be
> > doing stuff that isn't in the standard ACPI spec, but which needs to
> > be a certain way in order to be compatible with their proprietary
> > Windows drivers.
>
> Or to be compatible with both Windows XP and Vista ACPI subsystems, *and*
> the Windows XP and Vista versions of their proprietary drivers. This is
> probably where half the weirdness in Lenovo ThinkPads come from, IMHO.
The problem is that OSI is used by Windows to pass the exact Windows
(not OS) version they are running, this function should be called WOSI.
We of course want to run on the latest fix-ups here and should pass
"Windows 2006" (or whatever latest string there exists).
IMO we need the same for Linux.
We even have the advantage, that the string in LOSI(String) makes some
sense, e.g. 2.6.24, so why not use LOSI(int, int, int)
How the exact interface might look like I am not sure, just an idea.
> > The real problem comes when they decide to do things in a rush. That
> > is, Dell deciding they want to make their laptops compatible with an
> > already existing Ubuntu kernel, or Lenovo deciding they want to make
> > their laptops compatible with an already existing SUSE kernel. And,
> > so they decide to do a quick and dirty firmware release rather than
> > negotiating with the distribution to do an Errata kernel. If we don't
> > agressive move to nip this in the bud, even if a particular Thinkpad
> > kernel isn't in the whitelist, I can see them simply documenting a
> > workaround of setting acpi_osi=Linux in the boot command line, because
> > it's easier than getting a distro to release a new kernel with a patch
> > needed to support some new laptop....
>
> Well, in defense of Lenovo, at least they seem to be quite open to changing
> future BIOSes if we are really clear on what we request *and* we provide a
> solution that won't cause total breakage on the kernels already in the Wild.
>
> But asking any hardware vendor to do something that will work right with the
> next version of Linux but will break hideously what distros have been
> shipping already just won't fly. Anything we do has to work well on both
> past and current kernels, unfortunately.
I disagree.
AML is a whole language, you can add stuff like:
if (losi < 2.6.24)
Store (0x1, ecxy)
else if (losi > 2.6.25)
Store (0x3, ecxy)
A)
Vendors *must* have a flag for Linux to be able to provide proper
support for multiple kernels and to be able to provide easy and riskless
fixes for Linux at all.
B)
ACPI interpreter patches are mostly very intrusive and distros cannot
backport them. E.g. you don't want to add an EC fix which fixes all ASUS
machines, but possibly breaks some others..., you don't want to backport
suspend reordering, or a simple sizeOf (part of AML) enhancement which
fixes some machines, might break some very other specific ones. You
should nearly never ever backport an AML fix, better let vendors do
kernel specific workarounds if they are willing to.
I expect we now have this problem because nobody (including myself)
never dreamed of that it could ever happen that a vendor adds Linux
specific AML code.
But now that it happens we should react quickly and come up with a
robust interface for the future...
> Now, the real test will be if we ask for something that would require
> changing their Windows drivers. I sure hope they would do it, but...
Yep nobody would ever do this.
But it's no problem for vendors at all to add a hotfix like that to
their BIOS:
if (linux)
..
else if (windows)
..
Thomas
next prev parent reply other threads:[~2008-02-18 16:58 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-17 10:24 [PATCH 0/5] improved knobs to deal with OSI(Linux) Len Brown
2008-01-17 10:24 ` [PATCH 1/5] DMI: move dmi_available declaration to linux/dmi.h Len Brown
2008-01-17 10:24 ` [PATCH 2/5] DMI: create dmi_dump_entries() Len Brown
2008-01-17 10:24 ` [PATCH 3/5] ACPI: use dmi_dump_entries() instead of requesting dmidecode output Len Brown
2008-01-17 10:24 ` [PATCH 4/5] ACPI: OSI(Linux) cmdline and DMI BIOS workarounds Len Brown
2008-01-17 10:24 ` [PATCH 5/5] ACPI: add DMI to enable OSI(Linux) on ThinkPad T61 Len Brown
2008-01-17 12:28 ` Matthew Garrett
2008-01-17 14:46 ` Henrique de Moraes Holschuh
2008-01-17 20:04 ` Len Brown
2008-01-17 21:31 ` Theodore Tso
2008-01-19 7:40 ` Len Brown
2008-01-19 12:08 ` Henrique de Moraes Holschuh
2008-01-19 14:17 ` Theodore Tso
2008-01-19 15:33 ` Henrique de Moraes Holschuh
2008-01-19 15:43 ` Matthew Garrett
2008-01-19 23:19 ` Theodore Tso
2008-01-20 4:13 ` Len Brown
2008-01-20 11:16 ` Rafael J. Wysocki
2008-01-20 12:03 ` Tomas Carnecky
2008-01-20 18:31 ` Len Brown
2008-01-20 19:21 ` Tomas Carnecky
2008-01-21 1:52 ` Theodore Tso
2008-01-21 9:50 ` Matthew Garrett
2008-01-21 19:00 ` Theodore Tso
2008-01-21 19:37 ` Matthew Garrett
2008-01-22 5:37 ` Len Brown
2008-01-20 19:49 ` Henrique de Moraes Holschuh
2008-02-18 16:58 ` Thomas Renninger [this message]
2008-02-18 19:17 ` Henrique de Moraes Holschuh
2008-02-19 0:00 ` Thomas Renninger
2008-02-19 0:26 ` Theodore Tso
2008-02-19 6:34 ` Thomas Renninger
2008-02-19 13:24 ` Henrique de Moraes Holschuh
2008-02-19 10:26 ` Thomas Renninger
2008-02-19 14:24 ` Henrique de Moraes Holschuh
2008-02-20 1:43 ` Thomas Renninger
2008-02-20 2:47 ` Henrique de Moraes Holschuh
2008-01-19 7:50 ` [PATCH 6/5] ACPI: DMI blacklist for OSI(Linux) Len Brown
2008-01-19 8:16 ` Andi Kleen
2008-01-20 4:18 ` Len Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1203353902.6019.119.camel@queen.suse.de \
--to=trenn@suse.de \
--cc=hmh@hmh.eng.br \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=mjg59@srcf.ucam.org \
--cc=tytso@MIT.EDU \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).