Linux-ACPI Archive on lore.kernel.org
 help / color / Atom feed
From: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
To: linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Lenovo ThinkPads need acpi_osi="Linux"
Date: Sat, 12 Jan 2008 00:23:48 -0200
Message-ID: <20080112022348.GC27524@khazad-dum.debian.net> (raw)

While helping a user find out what happened to his mute key, I found out
that the Lenovo BIOSes need the OSI string Linux defined to behave properly
in Linux.

Lenovo has been attempting to make things a bit easier for Linux on their
ThinkPads, by disabling the more obnoxious behaviours of the firmware (used
by their Windows drivers) when in Linux.  It looks like they used the OSI
string for that.

It is probably worthwhile to give a head's up: regressions involving
thinkpads and 2.6.23+ should probably have a 'please test with
acpi_osi="Linux"' step added if there is any chance ACPI AML code, BIOS or
SMBIOS code, or EC behaviour could be involved.

The most concrete example I have right now of changed behaviour is the Mute
key on the T61, which just plain disappears if acpi_osi="!Linux" (2.6.23
default).

I have also seen some hacked DSDTs around (mostly for older T4x models)
which used the Linux OSI string to fix or work around AML weirdness.  Those
would break in 2.6.23 (and 2.6.24?) as well.

Now, what should we do about it?  Add a quirk to always define the Linux OSI
string on ThinkPads (based on DMI information)?  All IBM ones (which won't
have BIOS revisions anymore, anyway) deal well with it, and Lenovo ones
seem to benefit from it.

We could also ask Lenovo to change the BIOS to stop paying attention to that
OSI string, but they will likely want/need a trigger for the AML code to
know it should change behaviour anyway, and the OSI string *does* look like
the proper thing to use IMHO.  I don't know if we could get them to arrive
to a behaviour that is acceptable both to us, and also to their Windows
drivers...

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh

             reply index

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-12  2:23 Henrique de Moraes Holschuh [this message]
2008-01-12  9:16 ` Len Brown
2008-01-12 20:23   ` Henrique de Moraes Holschuh
2008-01-13 16:58   ` Pavel Machek
2008-01-13 23:41     ` Henrique de Moraes Holschuh
2008-01-14  0:35       ` Matthew Garrett
2008-01-14  1:50         ` Matthew Garrett
2008-01-14  1:57           ` Henrique de Moraes Holschuh
2008-01-14  2:03             ` Matthew Garrett
2008-01-14 13:06               ` Henrique de Moraes Holschuh
2008-01-12 15:49 ` Alan Cox
2008-01-14  0:10 ` Henrique de Moraes Holschuh

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=20080112022348.GC27524@khazad-dum.debian.net \
    --to=hmh@hmh.eng.br \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /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

Linux-ACPI Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-acpi/0 linux-acpi/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-acpi linux-acpi/ https://lore.kernel.org/linux-acpi \
		linux-acpi@vger.kernel.org
	public-inbox-index linux-acpi

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-acpi


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git