@@ -127,6 +127,7 @@ static const struct xpad_device {
127127 u8 mapping ;
128128 u8 xtype ;
129129} xpad_device [] = {
130+ /* Please keep this list sorted by vendor and product ID. */
130131 { 0x0079 , 0x18d4 , "GPD Win 2 X-Box Controller" , 0 , XTYPE_XBOX360 },
131132 { 0x03eb , 0xff01 , "Wooting One (Legacy)" , 0 , XTYPE_XBOX360 },
132133 { 0x03eb , 0xff02 , "Wooting Two (Legacy)" , 0 , XTYPE_XBOX360 },
@@ -146,9 +147,9 @@ static const struct xpad_device {
146147 { 0x045e , 0x02d1 , "Microsoft X-Box One pad" , 0 , XTYPE_XBOXONE },
147148 { 0x045e , 0x02dd , "Microsoft X-Box One pad (Firmware 2015)" , 0 , XTYPE_XBOXONE },
148149 { 0x045e , 0x02e3 , "Microsoft X-Box One Elite pad" , MAP_PADDLES , XTYPE_XBOXONE },
149- { 0x045e , 0x0b00 , "Microsoft X-Box One Elite 2 pad" , MAP_PADDLES , XTYPE_XBOXONE },
150150 { 0x045e , 0x02ea , "Microsoft X-Box One S pad" , 0 , XTYPE_XBOXONE },
151151 { 0x045e , 0x0719 , "Xbox 360 Wireless Receiver" , MAP_DPAD_TO_BUTTONS , XTYPE_XBOX360W },
152+ { 0x045e , 0x0b00 , "Microsoft X-Box One Elite 2 pad" , MAP_PADDLES , XTYPE_XBOXONE },
152153 { 0x045e , 0x0b0a , "Microsoft X-Box Adaptive Controller" , MAP_PROFILE_BUTTON , XTYPE_XBOXONE },
153154 { 0x045e , 0x0b12 , "Microsoft Xbox Series S|X Controller" , MAP_SELECT_BUTTON , XTYPE_XBOXONE },
154155 { 0x046d , 0xc21d , "Logitech Gamepad F310" , 0 , XTYPE_XBOX360 },
@@ -331,7 +332,6 @@ static const struct xpad_device {
331332 { 0x20d6 , 0x2001 , "BDA Xbox Series X Wired Controller" , 0 , XTYPE_XBOXONE },
332333 { 0x20d6 , 0x2009 , "PowerA Enhanced Wired Controller for Xbox Series X|S" , 0 , XTYPE_XBOXONE },
333334 { 0x20d6 , 0x281f , "PowerA Wired Controller For Xbox 360" , 0 , XTYPE_XBOX360 },
334- { 0x2e24 , 0x0652 , "Hyperkin Duke X-Box One pad" , 0 , XTYPE_XBOXONE },
335335 { 0x24c6 , 0x5000 , "Razer Atrox Arcade Stick" , MAP_TRIGGERS_TO_BUTTONS , XTYPE_XBOX360 },
336336 { 0x24c6 , 0x5300 , "PowerA MINI PROEX Controller" , 0 , XTYPE_XBOX360 },
337337 { 0x24c6 , 0x5303 , "Xbox Airflo wired controller" , 0 , XTYPE_XBOX360 },
@@ -346,9 +346,9 @@ static const struct xpad_device {
346346 { 0x24c6 , 0x5502 , "Hori Fighting Stick VX Alt" , MAP_TRIGGERS_TO_BUTTONS , XTYPE_XBOX360 },
347347 { 0x24c6 , 0x5503 , "Hori Fighting Edge" , MAP_TRIGGERS_TO_BUTTONS , XTYPE_XBOX360 },
348348 { 0x24c6 , 0x5506 , "Hori SOULCALIBUR V Stick" , 0 , XTYPE_XBOX360 },
349- { 0x24c6 , 0x5510 , "Hori Fighting Commander ONE (Xbox 360/PC Mode)" , MAP_TRIGGERS_TO_BUTTONS , XTYPE_XBOX360 },
350349 { 0x24c6 , 0x550d , "Hori GEM Xbox controller" , 0 , XTYPE_XBOX360 },
351350 { 0x24c6 , 0x550e , "Hori Real Arcade Pro V Kai 360" , MAP_TRIGGERS_TO_BUTTONS , XTYPE_XBOX360 },
351+ { 0x24c6 , 0x5510 , "Hori Fighting Commander ONE (Xbox 360/PC Mode)" , MAP_TRIGGERS_TO_BUTTONS , XTYPE_XBOX360 },
352352 { 0x24c6 , 0x551a , "PowerA FUSION Pro Controller" , 0 , XTYPE_XBOXONE },
353353 { 0x24c6 , 0x561a , "PowerA FUSION Controller" , 0 , XTYPE_XBOXONE },
354354 { 0x24c6 , 0x5b00 , "ThrustMaster Ferrari 458 Racing Wheel" , 0 , XTYPE_XBOX360 },
@@ -359,6 +359,7 @@ static const struct xpad_device {
359359 { 0x2563 , 0x058d , "OneXPlayer Gamepad" , 0 , XTYPE_XBOX360 },
360360 { 0x2dc8 , 0x2000 , "8BitDo Pro 2 Wired Controller fox Xbox" , 0 , XTYPE_XBOXONE },
361361 { 0x2dc8 , 0x3106 , "8BitDo Pro 2 Wired Controller" , 0 , XTYPE_XBOX360 },
362+ { 0x2e24 , 0x0652 , "Hyperkin Duke X-Box One pad" , 0 , XTYPE_XBOXONE },
362363 { 0x31e3 , 0x1100 , "Wooting One" , 0 , XTYPE_XBOX360 },
363364 { 0x31e3 , 0x1200 , "Wooting Two" , 0 , XTYPE_XBOX360 },
364365 { 0x31e3 , 0x1210 , "Wooting Lekker" , 0 , XTYPE_XBOX360 },
@@ -456,6 +457,10 @@ static const signed short xpad_btn_paddles[] = {
456457 { XPAD_XBOXONE_VENDOR_PROTOCOL((vend), 208) }
457458
458459static const struct usb_device_id xpad_table [] = {
460+ /*
461+ * Please keep this list sorted by vendor ID. Note that there are 2
462+ * macros - XPAD_XBOX360_VENDOR and XPAD_XBOXONE_VENDOR.
463+ */
459464 { USB_INTERFACE_INFO ('X' , 'B' , 0 ) }, /* Xbox USB-IF not-approved class */
460465 XPAD_XBOX360_VENDOR (0x0079 ), /* GPD Win 2 controller */
461466 XPAD_XBOX360_VENDOR (0x03eb ), /* Wooting Keyboards (Legacy) */
0 commit comments