From: John Hughes <john@calvaedi.com>
To: linux-kernel@vger.kernel.org, Mattia Dongili <malattia@linux.it>,
Stelian Pop <stelian@popies.net>
Subject: sony-laptop driver: Volume keys on Sony Vaio TX3 don't work
Date: Sun, 16 Oct 2011 13:11:50 +0200 [thread overview]
Message-ID: <4E9ABBF6.3000504@calvaedi.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 741 bytes --]
Even though sony-laptop has code to handle the volume-up/volume-down
keys they don't work. Pressing volume-down gets treated as
SONYPI_EVENT_PKEY_P1 and volume-up as SONYPI_EVENT_PKEY_P2.
This is because volume-down generates event 0x01 with data mask 0x05 and
although the sonypi_volumeev table exists to handle this the table
sonypi_pkeyev steals the event before it gets handled.
Re-ordering the entries in the table type3_events and fixing the bug in
sonypi_volumeev (up and down were inverted) makes the volume keys work.
See attached patch.
The two remaining problems are:
1. the EJECT key is mapped to FN_E
2. the MUTE key (event 5f, 31) is mapped to nothing. (Not to important
as it turns the speaker off in hardware).
[-- Attachment #2: sony-vaio-tx3.patch --]
[-- Type: text/x-patch, Size: 945 bytes --]
--- drivers/platform/x86/sony-laptop.c.orig 2009-12-03 04:51:21.000000000 +0100
+++ drivers/platform/x86/sony-laptop.c 2011-10-16 12:58:07.000000000 +0200
@@ -1576,8 +1576,8 @@
/* The set of possible volume events */
static struct sonypi_event sonypi_volumeev[] = {
- { 0x01, SONYPI_EVENT_VOLUME_INC_PRESSED },
- { 0x02, SONYPI_EVENT_VOLUME_DEC_PRESSED },
+ { 0x01, SONYPI_EVENT_VOLUME_DEC_PRESSED },
+ { 0x02, SONYPI_EVENT_VOLUME_INC_PRESSED },
{ 0, 0 }
};
@@ -1624,10 +1624,10 @@
{ 0x31, SONYPI_MEMORYSTICK_MASK, sonypi_memorystickev },
{ 0x41, SONYPI_BATTERY_MASK, sonypi_batteryev },
{ 0x31, SONYPI_PKEY_MASK, sonypi_pkeyev },
+ { 0x05, SONYPI_PKEY_MASK, sonypi_volumeev },
{ 0x05, SONYPI_PKEY_MASK, sonypi_pkeyev },
{ 0x05, SONYPI_ZOOM_MASK, sonypi_zoomev },
{ 0x05, SONYPI_CAPTURE_MASK, sonypi_captureev },
- { 0x05, SONYPI_PKEY_MASK, sonypi_volumeev },
{ 0x05, SONYPI_PKEY_MASK, sonypi_brightnessev },
{ 0 },
};
next reply other threads:[~2011-10-16 11:18 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-16 11:11 John Hughes [this message]
2011-10-16 12:30 ` Bug: changing keycodes generated by sony-laptop doesn't work John Hughes
2011-10-16 13:30 ` John Hughes
2011-10-17 9:08 ` John Hughes
2011-10-16 13:27 ` sony-laptop driver: Volume keys on Sony Vaio TX3 don't work John Hughes
2011-10-16 17:45 ` John Hughes
2011-10-16 18:20 ` Valdis.Kletnieks
2011-10-16 21:38 ` Mattia Dongili
2011-10-16 21:50 ` Valdis.Kletnieks
2011-10-16 23:17 ` John Hughes
2011-10-17 21:43 ` Mattia Dongili
2011-10-18 9:02 ` John Hughes
2011-10-17 21:45 ` Mattia Dongili
2011-10-18 9:07 ` John Hughes
2011-10-19 22:01 ` John Hughes
2011-10-16 23:13 ` John Hughes
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=4E9ABBF6.3000504@calvaedi.com \
--to=john@calvaedi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=malattia@linux.it \
--cc=stelian@popies.net \
/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