All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jerone Young <jerone.young@canonical.com>
To: linux-acpi@vger.kernel.org
Subject: [PATCH] Fix mute key on older Thinkpads by OSI blacklisting them
Date: Fri, 23 Apr 2010 17:48:04 -0500	[thread overview]
Message-ID: <1272062884.1594.73.camel@laptop> (raw)

This patch fixes that mute keys for X & R & W series Thinkpads. For
these Thinkpads in the BIOS if OS exposes itself as "Linux" it will
switch the functionality of the mute key to send a mute key press to the
OS. These machines will not be getting any bios updates in the future.

All of these Thinkpads do not have a little light that would indicate
the mute is on. So having them send the mute key to the OS makes a
better user experience and also will match behavior of newer Thinkpads.
These all have the same quirk the T400 & T500 have.

Unlike the last time I sent a similar patch(s) somethings have happened:

	- All new Lenovo Thinkpads now send a mute key press to the 
          OS by default (x201 series).

	- I've decoded the bioses. Under the Linux selection it 
          only does one operation. Switch the hardware mute to
          a software mute. Has no special operations done under
          Windows selections.
	
	- On all the machines. The hardware mute key is only wired
          to the external speakers. So the headphone jack does not 
          get muted by the hardware mute.

	- I also have gotten confirmation from users around the
          net that it works. Except for the W700, though based on
          data I found it was the same as the W500.


Signed-off-by: Jerone Young <jerone.young@canonical.com>

diff --git a/drivers/acpi/blacklist.c b/drivers/acpi/blacklist.c
index 2815df6..cce6e1a 100644
--- a/drivers/acpi/blacklist.c
+++ b/drivers/acpi/blacklist.c
@@ -285,6 +285,46 @@ static struct dmi_system_id acpi_osi_dmi_table[] __initdata = {
 		     DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T500"),
 		},
 	},
+	{
+	.callback = dmi_enable_osi_linux,
+	.ident = "Lenovo ThinkPad X200[s][t]",
+	.matches = {
+		     DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+		     DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad X200"),
+		},
+	},
+	{
+	.callback = dmi_enable_osi_linux,
+	.ident = "Lenovo ThinkPad R400",
+	.matches = {
+		     DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+		     DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad R400"),
+		},
+	},
+	{
+	.callback = dmi_enable_osi_linux,
+	.ident = "Lenovo ThinkPad R500",
+	.matches = {
+		     DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+		     DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad R500"),
+		},
+	},
+	{
+	.callback = dmi_enable_osi_linux,
+	.ident = "Lenovo ThinkPad W500",
+	.matches = {
+		    DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+		    DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad W500"),
+		},
+	},
+	{
+	.callback = dmi_enable_osi_linux,
+	.ident = "Lenovo ThinkPad W700[ds]",
+	.matches = {
+		   DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+		   DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad W700"),
+		},
+	},
 	{}
 };
 




             reply	other threads:[~2010-04-23 22:48 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-23 22:48 Jerone Young [this message]
2010-04-24  2:01 ` [PATCH] Fix mute key on older Thinkpads by OSI blacklisting them Henrique de Moraes Holschuh
2010-04-24  2:14   ` Jerone Young
2010-04-24  2:19     ` Jerone Young
2010-04-24  3:10     ` Henrique de Moraes Holschuh
2010-04-24  4:15       ` Jerone Young
2010-04-24 16:01 ` Matthew Garrett
2010-04-24 20:49   ` Jerone Young
2010-04-24 21:16     ` Matthew Garrett
2010-04-25  0:08       ` Jerone Young
2010-04-25  2:28         ` Henrique de Moraes Holschuh
2010-04-25 18:28           ` Jerone Young
2010-04-25 18:44             ` Matthew Garrett
2010-04-25 18:57               ` Jerone Young
2010-04-25 18:59                 ` Matthew Garrett
2010-04-25 19:19                   ` Jerone Young
2010-04-26 10:11                 ` Henrique de Moraes Holschuh
2010-04-27  5:50                   ` Jerone Young
2010-04-25 19:02           ` Jerone Young
2010-04-26 10:38             ` Henrique de Moraes Holschuh
2010-04-27  5:44               ` Jerone Young
2010-04-25  0:19       ` Jerone Young
2010-05-03 11:45         ` Andy Lutomirski

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=1272062884.1594.73.camel@laptop \
    --to=jerone.young@canonical.com \
    --cc=linux-acpi@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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.