diff options
| author | Peter Stein <peter@stuntstein.dk> | 2017-02-17 03:00:50 -0500 |
|---|---|---|
| committer | Jiri Kosina <jkosina@suse.cz> | 2017-03-24 10:43:03 -0400 |
| commit | 9257821c5a1dc57ef3a37f7cbcebaf548395c964 (patch) | |
| tree | ff8c3d541a1ff6f4dc0e30ac540a14534ee4f8e7 | |
| parent | 6e5364f5f472d4ea66d37459e299071b0190362c (diff) | |
HID: xinmo: fix for out of range for THT 2P arcade controller.
There is a new clone of the XIN MO arcade controller which has same issue with
out of range like the original. This fix will solve the issue where 2
directions on the joystick are not recognized by the new THT 2P arcade
controller with device ID 0x75e1. In details the new device ID is added the
hid-id list and the hid-xinmo source code.
Signed-off-by: Peter Stein <peter@stuntstein.dk>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| -rw-r--r-- | drivers/hid/hid-core.c | 1 | ||||
| -rw-r--r-- | drivers/hid/hid-ids.h | 1 | ||||
| -rw-r--r-- | drivers/hid/hid-xinmo.c | 1 |
3 files changed, 3 insertions, 0 deletions
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index 3ceb4a2af381..63ec1993eaaa 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c | |||
| @@ -2112,6 +2112,7 @@ static const struct hid_device_id hid_have_special_driver[] = { | |||
| 2112 | { HID_USB_DEVICE(USB_VENDOR_ID_WALTOP, USB_DEVICE_ID_WALTOP_SIRIUS_BATTERY_FREE_TABLET) }, | 2112 | { HID_USB_DEVICE(USB_VENDOR_ID_WALTOP, USB_DEVICE_ID_WALTOP_SIRIUS_BATTERY_FREE_TABLET) }, |
| 2113 | { HID_USB_DEVICE(USB_VENDOR_ID_X_TENSIONS, USB_DEVICE_ID_SPEEDLINK_VAD_CEZANNE) }, | 2113 | { HID_USB_DEVICE(USB_VENDOR_ID_X_TENSIONS, USB_DEVICE_ID_SPEEDLINK_VAD_CEZANNE) }, |
| 2114 | { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE) }, | 2114 | { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE) }, |
| 2115 | { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_THT_2P_ARCADE) }, | ||
| 2115 | { HID_USB_DEVICE(USB_VENDOR_ID_ZEROPLUS, 0x0005) }, | 2116 | { HID_USB_DEVICE(USB_VENDOR_ID_ZEROPLUS, 0x0005) }, |
| 2116 | { HID_USB_DEVICE(USB_VENDOR_ID_ZEROPLUS, 0x0030) }, | 2117 | { HID_USB_DEVICE(USB_VENDOR_ID_ZEROPLUS, 0x0030) }, |
| 2117 | { HID_USB_DEVICE(USB_VENDOR_ID_ZYDACRON, USB_DEVICE_ID_ZYDACRON_REMOTE_CONTROL) }, | 2118 | { HID_USB_DEVICE(USB_VENDOR_ID_ZYDACRON, USB_DEVICE_ID_ZYDACRON_REMOTE_CONTROL) }, |
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 0e2e7c571d22..4e2648c86c8c 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h | |||
| @@ -1082,6 +1082,7 @@ | |||
| 1082 | 1082 | ||
| 1083 | #define USB_VENDOR_ID_XIN_MO 0x16c0 | 1083 | #define USB_VENDOR_ID_XIN_MO 0x16c0 |
| 1084 | #define USB_DEVICE_ID_XIN_MO_DUAL_ARCADE 0x05e1 | 1084 | #define USB_DEVICE_ID_XIN_MO_DUAL_ARCADE 0x05e1 |
| 1085 | #define USB_DEVICE_ID_THT_2P_ARCADE 0x75e1 | ||
| 1085 | 1086 | ||
| 1086 | #define USB_VENDOR_ID_XIROKU 0x1477 | 1087 | #define USB_VENDOR_ID_XIROKU 0x1477 |
| 1087 | #define USB_DEVICE_ID_XIROKU_SPX 0x1006 | 1088 | #define USB_DEVICE_ID_XIROKU_SPX 0x1006 |
diff --git a/drivers/hid/hid-xinmo.c b/drivers/hid/hid-xinmo.c index 7df5227a7e61..9ad7731d2e10 100644 --- a/drivers/hid/hid-xinmo.c +++ b/drivers/hid/hid-xinmo.c | |||
| @@ -46,6 +46,7 @@ static int xinmo_event(struct hid_device *hdev, struct hid_field *field, | |||
| 46 | 46 | ||
| 47 | static const struct hid_device_id xinmo_devices[] = { | 47 | static const struct hid_device_id xinmo_devices[] = { |
| 48 | { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE) }, | 48 | { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_XIN_MO_DUAL_ARCADE) }, |
| 49 | { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_THT_2P_ARCADE) }, | ||
| 49 | { } | 50 | { } |
| 50 | }; | 51 | }; |
| 51 | 52 | ||
