diff options
author | Keng-Yu Lin <kengyu@canonical.com> | 2012-02-02 04:31:26 -0500 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2012-02-02 04:31:26 -0500 |
commit | 3596bb929f2abd3433c2eaa5755fad48ac207af1 (patch) | |
tree | 4a4fda1b9c99d13627dd98951f26b29e9599d6a0 /drivers/hid | |
parent | f62f61917d72c1fb0101ad405664f6fc868d676b (diff) |
HID: add extra hotkeys in Asus AIO keyboards
The Asus All-In-One PC has a wireless keyboard with wifi toggle,
brightness up, brightness down and display off hotkeys.
This patch adds suppoort for these hotkeys.
Signed-off-by: Keng-Yu Lin <kengyu@canonical.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid')
-rw-r--r-- | drivers/hid/hid-chicony.c | 5 | ||||
-rw-r--r-- | drivers/hid/hid-core.c | 1 | ||||
-rw-r--r-- | drivers/hid/hid-ids.h | 1 |
3 files changed, 7 insertions, 0 deletions
diff --git a/drivers/hid/hid-chicony.c b/drivers/hid/hid-chicony.c index 8965ad93d510..4162505793c5 100644 --- a/drivers/hid/hid-chicony.c +++ b/drivers/hid/hid-chicony.c | |||
@@ -45,6 +45,10 @@ static int ch_input_mapping(struct hid_device *hdev, struct hid_input *hi, | |||
45 | case 0xff09: ch_map_key_clear(BTN_9); break; | 45 | case 0xff09: ch_map_key_clear(BTN_9); break; |
46 | case 0xff0a: ch_map_key_clear(BTN_A); break; | 46 | case 0xff0a: ch_map_key_clear(BTN_A); break; |
47 | case 0xff0b: ch_map_key_clear(BTN_B); break; | 47 | case 0xff0b: ch_map_key_clear(BTN_B); break; |
48 | case 0x00f1: ch_map_key_clear(KEY_WLAN); break; | ||
49 | case 0x00f2: ch_map_key_clear(KEY_BRIGHTNESSDOWN); break; | ||
50 | case 0x00f3: ch_map_key_clear(KEY_BRIGHTNESSUP); break; | ||
51 | case 0x00f4: ch_map_key_clear(KEY_DISPLAY_OFF); break; | ||
48 | default: | 52 | default: |
49 | return 0; | 53 | return 0; |
50 | } | 54 | } |
@@ -53,6 +57,7 @@ static int ch_input_mapping(struct hid_device *hdev, struct hid_input *hi, | |||
53 | 57 | ||
54 | static const struct hid_device_id ch_devices[] = { | 58 | static const struct hid_device_id ch_devices[] = { |
55 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_TACTICAL_PAD) }, | 59 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_TACTICAL_PAD) }, |
60 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS2) }, | ||
56 | { } | 61 | { } |
57 | }; | 62 | }; |
58 | MODULE_DEVICE_TABLE(hid, ch_devices); | 63 | MODULE_DEVICE_TABLE(hid, ch_devices); |
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index af08ce7207d9..75dbe344cabe 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c | |||
@@ -1396,6 +1396,7 @@ static const struct hid_device_id hid_have_special_driver[] = { | |||
1396 | { HID_USB_DEVICE(USB_VENDOR_ID_CHERRY, USB_DEVICE_ID_CHERRY_CYMOTION_SOLAR) }, | 1396 | { HID_USB_DEVICE(USB_VENDOR_ID_CHERRY, USB_DEVICE_ID_CHERRY_CYMOTION_SOLAR) }, |
1397 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_TACTICAL_PAD) }, | 1397 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_TACTICAL_PAD) }, |
1398 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS) }, | 1398 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS) }, |
1399 | { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS2) }, | ||
1399 | { HID_USB_DEVICE(USB_VENDOR_ID_CHUNGHWAT, USB_DEVICE_ID_CHUNGHWAT_MULTITOUCH) }, | 1400 | { HID_USB_DEVICE(USB_VENDOR_ID_CHUNGHWAT, USB_DEVICE_ID_CHUNGHWAT_MULTITOUCH) }, |
1400 | { HID_USB_DEVICE(USB_VENDOR_ID_CREATIVELABS, USB_DEVICE_ID_PRODIKEYS_PCMIDI) }, | 1401 | { HID_USB_DEVICE(USB_VENDOR_ID_CREATIVELABS, USB_DEVICE_ID_PRODIKEYS_PCMIDI) }, |
1401 | { HID_USB_DEVICE(USB_VENDOR_ID_CVTOUCH, USB_DEVICE_ID_CVTOUCH_SCREEN) }, | 1402 | { HID_USB_DEVICE(USB_VENDOR_ID_CVTOUCH, USB_DEVICE_ID_CVTOUCH_SCREEN) }, |
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index b8574cddd953..fb9e61f85666 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h | |||
@@ -190,6 +190,7 @@ | |||
190 | #define USB_DEVICE_ID_CHICONY_TACTICAL_PAD 0x0418 | 190 | #define USB_DEVICE_ID_CHICONY_TACTICAL_PAD 0x0418 |
191 | #define USB_DEVICE_ID_CHICONY_MULTI_TOUCH 0xb19d | 191 | #define USB_DEVICE_ID_CHICONY_MULTI_TOUCH 0xb19d |
192 | #define USB_DEVICE_ID_CHICONY_WIRELESS 0x0618 | 192 | #define USB_DEVICE_ID_CHICONY_WIRELESS 0x0618 |
193 | #define USB_DEVICE_ID_CHICONY_WIRELESS2 0x1123 | ||
193 | 194 | ||
194 | #define USB_VENDOR_ID_CHUNGHWAT 0x2247 | 195 | #define USB_VENDOR_ID_CHUNGHWAT 0x2247 |
195 | #define USB_DEVICE_ID_CHUNGHWAT_MULTITOUCH 0x0001 | 196 | #define USB_DEVICE_ID_CHUNGHWAT_MULTITOUCH 0x0001 |