Hi! Recently i bought the sony laptop model 'VPCEB15FB' and this model has Three buttons top of keyboard[1] that don't work until then. added support to all three keys at the driver sony-laptop.c and sonypi.h Atc, if you have something wrong, I would be grateful if someone helps. [1] Same family of http://www.sonystyle.com/webapp/wcs/stores/servlet/CategoryDisplay?catalogId=10551&storeId=10151&langId=-1&categoryId=8198552921644699998&N=4294953240 Thanks, -- Regards, +--------------------------------------------+ Jorge Pereira, Blog: http://blog.jorgepereira.com.br/ +--------------------------------------------+
From d2c812270bfce82da57a88c40f43a7eea42ba1f2 Mon Sep 17 00:00:00 2001 From: Jorge Pereira <jpereiran@xxxxxxxxx> Date: Fri, 14 May 2010 18:18:19 -0300 Subject: [PATCH] Adding support for new keys (ASSIST, WEB and VAIO) of the laptop Vaio E Series. --- drivers/platform/x86/sony-laptop.c | 12 ++++++++++++ include/linux/sonypi.h | 3 +++ 2 files changed, 15 insertions(+), 0 deletions(-) diff --git a/drivers/platform/x86/sony-laptop.c b/drivers/platform/x86/sony-laptop.c index a2a742c..d432b08 100644 --- a/drivers/platform/x86/sony-laptop.c +++ b/drivers/platform/x86/sony-laptop.c @@ -232,6 +232,9 @@ static int sony_laptop_input_index[] = { 56, /* 69 SONYPI_EVENT_VOLUME_INC_PRESSED */ 57, /* 70 SONYPI_EVENT_VOLUME_DEC_PRESSED */ -1, /* 71 SONYPI_EVENT_BRIGHTNESS_PRESSED */ + 58, /* 72 SONYPI_EVENT_DEDICATED_SUPPORT */ + 59, /* 73 SONYPI_EVENT_DEDICATED_WEB */ + 60, /* 74 SONYPI_EVENT_DEDICATED_VAIO */ }; static int sony_laptop_input_keycode_map[] = { @@ -293,6 +296,9 @@ static int sony_laptop_input_keycode_map[] = { KEY_F15, /* 55 SONYPI_EVENT_SETTINGKEY_PRESSED */ KEY_VOLUMEUP, /* 56 SONYPI_EVENT_VOLUME_INC_PRESSED */ KEY_VOLUMEDOWN, /* 57 SONYPI_EVENT_VOLUME_DEC_PRESSED */ + KEY_HELP, /* 58 SONYPI_EVENT_DEDICATED_SUPPORT */ + KEY_HOMEPAGE, /* 59 SONYPI_EVENT_DEDICATED_WEB */ + KEY_SHOP, /* 60 SONYPI_EVENT_DEDICATED_VAIO */ }; /* release buttons after a short delay if pressed */ @@ -890,6 +896,12 @@ static struct sony_nc_event sony_100_events[] = { { 0x0C, SONYPI_EVENT_FNKEY_RELEASED }, { 0x9f, SONYPI_EVENT_CD_EJECT_PRESSED }, { 0x1f, SONYPI_EVENT_ANYBUTTON_RELEASED }, + { 0xa4, SONYPI_EVENT_DEDICATED_WEB }, + { 0x24, SONYPI_EVENT_ANYBUTTON_RELEASED }, + { 0xa5, SONYPI_EVENT_DEDICATED_VAIO }, + { 0x25, SONYPI_EVENT_ANYBUTTON_RELEASED }, + { 0xa6, SONYPI_EVENT_DEDICATED_SUPPORT }, + { 0x26, SONYPI_EVENT_ANYBUTTON_RELEASED }, { 0, 0 }, }; diff --git a/include/linux/sonypi.h b/include/linux/sonypi.h index 34c4475..d1ebb02 100644 --- a/include/linux/sonypi.h +++ b/include/linux/sonypi.h @@ -111,6 +111,9 @@ #define SONYPI_EVENT_VOLUME_INC_PRESSED 69 #define SONYPI_EVENT_VOLUME_DEC_PRESSED 70 #define SONYPI_EVENT_BRIGHTNESS_PRESSED 71 +#define SONYPI_EVENT_DEDICATED_SUPPORT 72 +#define SONYPI_EVENT_DEDICATED_WEB 73 +#define SONYPI_EVENT_DEDICATED_VAIO 74 /* get/set brightness */ #define SONYPI_IOCGBRT _IOR('v', 0, __u8) -- 1.7.0.4