Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f5d58277 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull HID subsystem fixes from Jiri Kosina:

 - two device-specific quirks from Hans de Goede and Nic Soudée

 - reintroduction of (mistakenly remocved) ABS_RESERVED from Peter
   Hutterer

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
  Input: restore EV_ABS ABS_RESERVED
  HID: quirks: fix RetroUSB.com devices
  HID: ite: Add USB id match for another ITE based keyboard rfkill key quirk
parents 9bb40f01 c201e380
Loading
Loading
Loading
Loading
+7 −0
Original line number Original line Diff line number Diff line
@@ -17,6 +17,9 @@
#ifndef HID_IDS_H_FILE
#ifndef HID_IDS_H_FILE
#define HID_IDS_H_FILE
#define HID_IDS_H_FILE


#define USB_VENDOR_ID_258A		0x258a
#define USB_DEVICE_ID_258A_6A88		0x6a88

#define USB_VENDOR_ID_3M		0x0596
#define USB_VENDOR_ID_3M		0x0596
#define USB_DEVICE_ID_3M1968		0x0500
#define USB_DEVICE_ID_3M1968		0x0500
#define USB_DEVICE_ID_3M2256		0x0502
#define USB_DEVICE_ID_3M2256		0x0502
@@ -941,6 +944,10 @@
#define USB_VENDOR_ID_REALTEK		0x0bda
#define USB_VENDOR_ID_REALTEK		0x0bda
#define USB_DEVICE_ID_REALTEK_READER	0x0152
#define USB_DEVICE_ID_REALTEK_READER	0x0152


#define USB_VENDOR_ID_RETROUSB		0xf000
#define USB_DEVICE_ID_RETROUSB_SNES_RETROPAD	0x0003
#define USB_DEVICE_ID_RETROUSB_SNES_RETROPORT	0x00f1

#define USB_VENDOR_ID_ROCCAT		0x1e7d
#define USB_VENDOR_ID_ROCCAT		0x1e7d
#define USB_DEVICE_ID_ROCCAT_ARVO	0x30d4
#define USB_DEVICE_ID_ROCCAT_ARVO	0x30d4
#define USB_DEVICE_ID_ROCCAT_ISKU	0x319c
#define USB_DEVICE_ID_ROCCAT_ISKU	0x319c
+1 −0
Original line number Original line Diff line number Diff line
@@ -42,6 +42,7 @@ static int ite_event(struct hid_device *hdev, struct hid_field *field,


static const struct hid_device_id ite_devices[] = {
static const struct hid_device_id ite_devices[] = {
	{ HID_USB_DEVICE(USB_VENDOR_ID_ITE, USB_DEVICE_ID_ITE8595) },
	{ HID_USB_DEVICE(USB_VENDOR_ID_ITE, USB_DEVICE_ID_ITE8595) },
	{ HID_USB_DEVICE(USB_VENDOR_ID_258A, USB_DEVICE_ID_258A_6A88) },
	{ }
	{ }
};
};
MODULE_DEVICE_TABLE(hid, ite_devices);
MODULE_DEVICE_TABLE(hid, ite_devices);
+2 −0
Original line number Original line Diff line number Diff line
@@ -137,6 +137,8 @@ static const struct hid_device_id hid_quirks[] = {
	{ HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3003), HID_QUIRK_NOGET },
	{ HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3003), HID_QUIRK_NOGET },
	{ HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3008), HID_QUIRK_NOGET },
	{ HID_USB_DEVICE(USB_VENDOR_ID_QUANTA, USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3008), HID_QUIRK_NOGET },
	{ HID_USB_DEVICE(USB_VENDOR_ID_REALTEK, USB_DEVICE_ID_REALTEK_READER), HID_QUIRK_NO_INIT_REPORTS },
	{ HID_USB_DEVICE(USB_VENDOR_ID_REALTEK, USB_DEVICE_ID_REALTEK_READER), HID_QUIRK_NO_INIT_REPORTS },
	{ HID_USB_DEVICE(USB_VENDOR_ID_RETROUSB, USB_DEVICE_ID_RETROUSB_SNES_RETROPAD), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE },
	{ HID_USB_DEVICE(USB_VENDOR_ID_RETROUSB, USB_DEVICE_ID_RETROUSB_SNES_RETROPORT), HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE },
	{ HID_USB_DEVICE(USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_RUMBLEPAD), HID_QUIRK_BADPAD },
	{ HID_USB_DEVICE(USB_VENDOR_ID_SAITEK, USB_DEVICE_ID_SAITEK_RUMBLEPAD), HID_QUIRK_BADPAD },
	{ HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD2), HID_QUIRK_NO_INIT_REPORTS },
	{ HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD2), HID_QUIRK_NO_INIT_REPORTS },
	{ HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD), HID_QUIRK_NO_INIT_REPORTS },
	{ HID_USB_DEVICE(USB_VENDOR_ID_SEMICO, USB_DEVICE_ID_SEMICO_USB_KEYKOARD), HID_QUIRK_NO_INIT_REPORTS },
+9 −0
Original line number Original line Diff line number Diff line
@@ -752,6 +752,15 @@


#define ABS_MISC		0x28
#define ABS_MISC		0x28


/*
 * 0x2e is reserved and should not be used in input drivers.
 * It was used by HID as ABS_MISC+6 and userspace needs to detect if
 * the next ABS_* event is correct or is just ABS_MISC + n.
 * We define here ABS_RESERVED so userspace can rely on it and detect
 * the situation described above.
 */
#define ABS_RESERVED		0x2e

#define ABS_MT_SLOT		0x2f	/* MT slot being modified */
#define ABS_MT_SLOT		0x2f	/* MT slot being modified */
#define ABS_MT_TOUCH_MAJOR	0x30	/* Major axis of touching ellipse */
#define ABS_MT_TOUCH_MAJOR	0x30	/* Major axis of touching ellipse */
#define ABS_MT_TOUCH_MINOR	0x31	/* Minor axis (omit if circular) */
#define ABS_MT_TOUCH_MINOR	0x31	/* Minor axis (omit if circular) */