History

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input

Pull input layer fixes from Dmitry Torokhov: "The changes are limited to adding new VID/PID combinations to drivers to enable support for new versions of hardware, most notably hardware found in new MacBook Pro Retina boxes." * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: xpad - add Andamiro Pump It Up pad Input: xpad - add signature for Razer Onza Tournament Edition Input: xpad - handle all variations of Mad Catz Beat Pad Input: bcm5974 - Add support for 2012 MacBook Pro Retina HID: add support for 2012 MacBook Pro Retina

Linus Torvalds committed 14 years ago

Commit 39ea32c2 parents 8488e40 e76b8ee5 files · +44 −1Browse files

Unified · Split

5 files
  1. drivers/hid/hid-apple.c +6 −0
  2. drivers/hid/hid-core.c +7 −0
  3. drivers/hid/hid-ids.h +6 −0
  4. drivers/input/joystick/xpad.c +5 −1
  5. drivers/input/mouse/bcm5974.c +20 −0
drivers/hid/hid-apple.c+6−0
@@ -517,6 +517,12 @@ static const struct hid_device_id apple_devices[] = { · 516 unmodified lines
517517 .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD },
518518 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING5A_JIS),
519519 .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS },
520+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_ANSI),
521+ .driver_data = APPLE_HAS_FN },
522+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_ISO),
523+ .driver_data = APPLE_HAS_FN | APPLE_ISO_KEYBOARD },
524+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_JIS),
525+ .driver_data = APPLE_HAS_FN | APPLE_RDESC_JIS },
520526 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI),
521527 .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN },
522528 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO),
drivers/hid/hid-core.c+7−0
@@ -1503,6 +1503,9 @@ static const struct hid_device_id hid_have_special_driver[] = { · 1502 unmodified lines
15031503 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_ANSI) },
15041504 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_ISO) },
15051505 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_JIS) },
1506+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_ANSI) },
1507+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_ISO) },
1508+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_JIS) },
15061509 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI) },
15071510 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO) },
15081511 { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS) },
@@ -1995,6 +1998,7 @@ static const struct hid_device_id hid_ignore_list[] = { · 486 unmodified lines
19951998 { HID_USB_DEVICE(USB_VENDOR_ID_LD, USB_DEVICE_ID_LD_MCT) },
19961999 { HID_USB_DEVICE(USB_VENDOR_ID_LD, USB_DEVICE_ID_LD_HYBRID) },
19972000 { HID_USB_DEVICE(USB_VENDOR_ID_LD, USB_DEVICE_ID_LD_HEATCONTROL) },
2001+ { HID_USB_DEVICE(USB_VENDOR_ID_MADCATZ, USB_DEVICE_ID_MADCATZ_BEATPAD) },
19982002 { HID_USB_DEVICE(USB_VENDOR_ID_MCC, USB_DEVICE_ID_MCC_PMD1024LS) },
19992003 { HID_USB_DEVICE(USB_VENDOR_ID_MCC, USB_DEVICE_ID_MCC_PMD1208LS) },
20002004 { HID_USB_DEVICE(USB_VENDOR_ID_MICROCHIP, USB_DEVICE_ID_PICKIT1) },
@@ -2089,6 +2093,9 @@ static const struct hid_device_id hid_mouse_ignore_list[] = { · 88 unmodified lines
20892093 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_ANSI) },
20902094 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_ISO) },
20912095 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING6A_JIS) },
2096+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_ANSI) },
2097+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_ISO) },
2098+ { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_WELLSPRING7_JIS) },
20922099 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_FOUNTAIN_TP_ONLY) },
20932100 { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, USB_DEVICE_ID_APPLE_GEYSER1_TP_ONLY) },
20942101 { }
drivers/hid/hid-ids.h+6−0
@@ -125,6 +125,9 @@ · 124 unmodified lines
125125 #define USB_DEVICE_ID_APPLE_WELLSPRING6_ANSI 0x024c
126126 #define USB_DEVICE_ID_APPLE_WELLSPRING6_ISO 0x024d
127127 #define USB_DEVICE_ID_APPLE_WELLSPRING6_JIS 0x024e
128+#define USB_DEVICE_ID_APPLE_WELLSPRING7_ANSI 0x0262
129+#define USB_DEVICE_ID_APPLE_WELLSPRING7_ISO 0x0263
130+#define USB_DEVICE_ID_APPLE_WELLSPRING7_JIS 0x0264
128131 #define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ANSI 0x0239
129132 #define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_ISO 0x023a
130133 #define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS 0x023b
@@ -518,6 +521,9 @@ · 387 unmodified lines
518521 #define USB_DEVICE_ID_CRYSTALTOUCH 0x0006
519522 #define USB_DEVICE_ID_CRYSTALTOUCH_DUAL 0x0007
520523
524+#define USB_VENDOR_ID_MADCATZ 0x0738
525+#define USB_DEVICE_ID_MADCATZ_BEATPAD 0x4540
526+
521527 #define USB_VENDOR_ID_MCC 0x09db
522528 #define USB_DEVICE_ID_MCC_PMD1024LS 0x0076
523529 #define USB_DEVICE_ID_MCC_PMD1208LS 0x007a
drivers/input/joystick/xpad.c+5−1
@@ -142,6 +142,7 @@ static const struct xpad_device { · 141 unmodified lines
142142 { 0x0c12, 0x880a, "Pelican Eclipse PL-2023", 0, XTYPE_XBOX },
143143 { 0x0c12, 0x8810, "Zeroplus Xbox Controller", 0, XTYPE_XBOX },
144144 { 0x0c12, 0x9902, "HAMA VibraX - *FAULTY HARDWARE*", 0, XTYPE_XBOX },
145+ { 0x0d2f, 0x0002, "Andamiro Pump It Up pad", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX },
145146 { 0x0e4c, 0x1097, "Radica Gamester Controller", 0, XTYPE_XBOX },
146147 { 0x0e4c, 0x2390, "Radica Games Jtech Controller", 0, XTYPE_XBOX },
147148 { 0x0e6f, 0x0003, "Logic3 Freebird wireless Controller", 0, XTYPE_XBOX },
@@ -164,6 +165,7 @@ static const struct xpad_device { · 16 unmodified lines
164165 { 0x1bad, 0x0003, "Harmonix Rock Band Drumkit", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX360 },
165166 { 0x0f0d, 0x0016, "Hori Real Arcade Pro.EX", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOX360 },
166167 { 0x0f0d, 0x000d, "Hori Fighting Stick EX2", MAP_TRIGGERS_TO_BUTTONS, XTYPE_XBOX360 },
168+ { 0x1689, 0xfd00, "Razer Onza Tournament Edition", MAP_DPAD_TO_BUTTONS, XTYPE_XBOX360 },
167169 { 0xffff, 0xffff, "Chinese-made Xbox Controller", 0, XTYPE_XBOX },
168170 { 0x0000, 0x0000, "Generic X-Box pad", 0, XTYPE_UNKNOWN }
169171 };
@@ -238,12 +240,14 @@ static struct usb_device_id xpad_table [] = { · 68 unmodified lines
238240 XPAD_XBOX360_VENDOR(0x045e), /* Microsoft X-Box 360 controllers */
239241 XPAD_XBOX360_VENDOR(0x046d), /* Logitech X-Box 360 style controllers */
240242 XPAD_XBOX360_VENDOR(0x0738), /* Mad Catz X-Box 360 controllers */
243+ { USB_DEVICE(0x0738, 0x4540) }, /* Mad Catz Beat Pad */
241244 XPAD_XBOX360_VENDOR(0x0e6f), /* 0x0e6f X-Box 360 controllers */
242245 XPAD_XBOX360_VENDOR(0x12ab), /* X-Box 360 dance pads */
243246 XPAD_XBOX360_VENDOR(0x1430), /* RedOctane X-Box 360 controllers */
244247 XPAD_XBOX360_VENDOR(0x146b), /* BigBen Interactive Controllers */
245248 XPAD_XBOX360_VENDOR(0x1bad), /* Harminix Rock Band Guitar and Drums */
246− XPAD_XBOX360_VENDOR(0x0f0d), /* Hori Controllers */
249+ XPAD_XBOX360_VENDOR(0x0f0d), /* Hori Controllers */
250+ XPAD_XBOX360_VENDOR(0x1689), /* Razer Onza */
247251 { }
248252 };
249253
drivers/input/mouse/bcm5974.c+20−0
@@ -79,6 +79,10 @@ · 78 unmodified lines
7979 #define USB_DEVICE_ID_APPLE_WELLSPRING5A_ANSI 0x0252
8080 #define USB_DEVICE_ID_APPLE_WELLSPRING5A_ISO 0x0253
8181 #define USB_DEVICE_ID_APPLE_WELLSPRING5A_JIS 0x0254
82+/* MacbookPro10,1 (unibody, June 2012) */
83+#define USB_DEVICE_ID_APPLE_WELLSPRING7_ANSI 0x0262
84+#define USB_DEVICE_ID_APPLE_WELLSPRING7_ISO 0x0263
85+#define USB_DEVICE_ID_APPLE_WELLSPRING7_JIS 0x0264
8286
8387 #define BCM5974_DEVICE(prod) { \
8488 .match_flags = (USB_DEVICE_ID_MATCH_DEVICE | \
@@ -128,6 +132,10 @@ static const struct usb_device_id bcm5974_table[] = { · 43 unmodified lines
128132 BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING5A_ANSI),
129133 BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING5A_ISO),
130134 BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING5A_JIS),
135+ /* MacbookPro10,1 */
136+ BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING7_ANSI),
137+ BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING7_ISO),
138+ BCM5974_DEVICE(USB_DEVICE_ID_APPLE_WELLSPRING7_JIS),
131139 /* Terminating entry */
132140 {}
133141 };
@@ -354,6 +362,18 @@ static const struct bcm5974_config bcm5974_config_table[] = { · 220 unmodified lines
354362 { DIM_X, DIM_X / SN_COORD, -4620, 5140 },
355363 { DIM_Y, DIM_Y / SN_COORD, -150, 6600 }
356364 },
365+ {
366+ USB_DEVICE_ID_APPLE_WELLSPRING7_ANSI,
367+ USB_DEVICE_ID_APPLE_WELLSPRING7_ISO,
368+ USB_DEVICE_ID_APPLE_WELLSPRING7_JIS,
369+ HAS_INTEGRATED_BUTTON,
370+ 0x84, sizeof(struct bt_data),
371+ 0x81, TYPE2, FINGER_TYPE2, FINGER_TYPE2 + SIZEOF_ALL_FINGERS,
372+ { DIM_PRESSURE, DIM_PRESSURE / SN_PRESSURE, 0, 300 },
373+ { DIM_WIDTH, DIM_WIDTH / SN_WIDTH, 0, 2048 },
374+ { DIM_X, DIM_X / SN_COORD, -4750, 5280 },
375+ { DIM_Y, DIM_Y / SN_COORD, -150, 6730 }
376+ },
357377 {}
358378 };
359379