Message ID | 20190201151807.3454-1-hdegoede@redhat.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | aa2d495f0cac219d5be1d64f6bf16e7c24cfb148 |
Delegated to: | Jiri Kosina |
Headers | show |
Series | HID: Add support for Toshiba WT10A tablet bluetooth keyboard | expand |
On Fri, Feb 1, 2019 at 4:18 PM Hans de Goede <hdegoede@redhat.com> wrote: > > The bluetooth-keyboard which comes with the Toshiba WT10A tablet uses > a couple of usage codes in the vendor specific ffbc page. > > The keyboard has a vendor-id of 04f2 which maps to Chicony. > > Other then adding a few keymappings for the ffbc usages, no special > handling is necessary. So rather then adding a new hid-toshiba driver, > this commit adds the ID and 2 extra key-mappings to the hid-topseed > driver. The hid-topseed driver already contains mapping for some > ffbc usages (and does nothing else) and it already binds to another > Chicony manufactured keyboard. > > Signed-off-by: Hans de Goede <hdegoede@redhat.com> > --- Applied to for-5.1/hid-topseed Thanks. Cheers, Benjamin > drivers/hid/hid-ids.h | 1 + > drivers/hid/hid-topseed.c | 3 +++ > 2 files changed, 4 insertions(+) > > diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h > index 24f846d67478..644a9f2bf624 100644 > --- a/drivers/hid/hid-ids.h > +++ b/drivers/hid/hid-ids.h > @@ -273,6 +273,7 @@ > #define USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE 0x1053 > #define USB_DEVICE_ID_CHICONY_WIRELESS2 0x1123 > #define USB_DEVICE_ID_ASUS_AK1D 0x1125 > +#define USB_DEVICE_ID_CHICONY_TOSHIBA_WT10A 0x1408 > #define USB_DEVICE_ID_CHICONY_ACER_SWITCH12 0x1421 > > #define USB_VENDOR_ID_CHUNGHWAT 0x2247 > diff --git a/drivers/hid/hid-topseed.c b/drivers/hid/hid-topseed.c > index 8a5b843e9dd6..e9cdde840362 100644 > --- a/drivers/hid/hid-topseed.c > +++ b/drivers/hid/hid-topseed.c > @@ -34,7 +34,9 @@ static int ts_input_mapping(struct hid_device *hdev, struct hid_input *hi, > return 0; > > switch (usage->hid & HID_USAGE) { > + case 0x00c: ts_map_key_clear(KEY_WLAN); break; > case 0x00d: ts_map_key_clear(KEY_MEDIA); break; > + case 0x010: ts_map_key_clear(KEY_ZOOM); break; > case 0x024: ts_map_key_clear(KEY_MENU); break; > case 0x025: ts_map_key_clear(KEY_TV); break; > case 0x027: ts_map_key_clear(KEY_MODE); break; > @@ -67,6 +69,7 @@ static const struct hid_device_id ts_devices[] = { > { HID_USB_DEVICE(USB_VENDOR_ID_BTC, USB_DEVICE_ID_BTC_EMPREX_REMOTE_2) }, > { HID_USB_DEVICE(USB_VENDOR_ID_TOPSEED2, USB_DEVICE_ID_TOPSEED2_RF_COMBO) }, > { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS) }, > + { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_TOSHIBA_WT10A) }, > { } > }; > MODULE_DEVICE_TABLE(hid, ts_devices); > -- > 2.20.1 >
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 24f846d67478..644a9f2bf624 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -273,6 +273,7 @@ #define USB_DEVICE_ID_CHICONY_PIXART_USB_OPTICAL_MOUSE 0x1053 #define USB_DEVICE_ID_CHICONY_WIRELESS2 0x1123 #define USB_DEVICE_ID_ASUS_AK1D 0x1125 +#define USB_DEVICE_ID_CHICONY_TOSHIBA_WT10A 0x1408 #define USB_DEVICE_ID_CHICONY_ACER_SWITCH12 0x1421 #define USB_VENDOR_ID_CHUNGHWAT 0x2247 diff --git a/drivers/hid/hid-topseed.c b/drivers/hid/hid-topseed.c index 8a5b843e9dd6..e9cdde840362 100644 --- a/drivers/hid/hid-topseed.c +++ b/drivers/hid/hid-topseed.c @@ -34,7 +34,9 @@ static int ts_input_mapping(struct hid_device *hdev, struct hid_input *hi, return 0; switch (usage->hid & HID_USAGE) { + case 0x00c: ts_map_key_clear(KEY_WLAN); break; case 0x00d: ts_map_key_clear(KEY_MEDIA); break; + case 0x010: ts_map_key_clear(KEY_ZOOM); break; case 0x024: ts_map_key_clear(KEY_MENU); break; case 0x025: ts_map_key_clear(KEY_TV); break; case 0x027: ts_map_key_clear(KEY_MODE); break; @@ -67,6 +69,7 @@ static const struct hid_device_id ts_devices[] = { { HID_USB_DEVICE(USB_VENDOR_ID_BTC, USB_DEVICE_ID_BTC_EMPREX_REMOTE_2) }, { HID_USB_DEVICE(USB_VENDOR_ID_TOPSEED2, USB_DEVICE_ID_TOPSEED2_RF_COMBO) }, { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS) }, + { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_TOSHIBA_WT10A) }, { } }; MODULE_DEVICE_TABLE(hid, ts_devices);
The bluetooth-keyboard which comes with the Toshiba WT10A tablet uses a couple of usage codes in the vendor specific ffbc page. The keyboard has a vendor-id of 04f2 which maps to Chicony. Other then adding a few keymappings for the ffbc usages, no special handling is necessary. So rather then adding a new hid-toshiba driver, this commit adds the ID and 2 extra key-mappings to the hid-topseed driver. The hid-topseed driver already contains mapping for some ffbc usages (and does nothing else) and it already binds to another Chicony manufactured keyboard. Signed-off-by: Hans de Goede <hdegoede@redhat.com> --- drivers/hid/hid-ids.h | 1 + drivers/hid/hid-topseed.c | 3 +++ 2 files changed, 4 insertions(+)