Hello all, I have an unofficial USB Nintendo Switch Pro controller that I have had for a few years and want to try to use on Linux. For reference, the vendor id and device ids are as follows: Vendor: 20d6 Device: 0002 I tried adding the device to the hid-nintendo module to add support but that did not work (see below for code). I recieved a few errors from dmesg nintendo 0003:20D6:0002.0011: Failed to get joycon info; ret=-110 nintendo 0003:20D6:0002.0011: Failed to retrieve controller info; ret=-110 nintendo 0003:20D6:0002.0011: Failed to initialize controller; ret=-110 nintendo 0003:20D6:0002.0011: probe - fail = -110 nintendo 0003:20D6:0002.0011: probe with driver nintendo failed with error -110 I understand that -110 is a timeout. But I don't understand much else. And I am not sure where to go from here. Any suggestions? Thanks, Ethan --- drivers/hid/hid-ids.h | 1 + drivers/hid/hid-nintendo.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index c448de53bf91..693e6f584c8a 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -1289,6 +1289,7 @@ #define USB_DEVICE_ID_BLINK1 0x01ed #define USB_VENDOR_ID_THQ 0x20d6 +#define USB_DEVICE_ID_THQ_BDA_NSW 0x0002 #define USB_DEVICE_ID_THQ_PS3_UDRAW 0xcb17 #define USB_VENDOR_ID_THRUSTMASTER 0x044f diff --git a/drivers/hid/hid-nintendo.c b/drivers/hid/hid-nintendo.c index 11ac246176ae..54f1b49849c0 100644 --- a/drivers/hid/hid-nintendo.c +++ b/drivers/hid/hid-nintendo.c @@ -2783,6 +2783,8 @@ static const struct hid_device_id nintendo_hid_devices[] = { USB_DEVICE_ID_NINTENDO_GENCON) }, { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_NINTENDO, USB_DEVICE_ID_NINTENDO_N64CON) }, + { HID_USB_DEVICE(USB_VENDOR_ID_THQ, + USB_DEVICE_ID_THQ_BDA_NSW) }, { } }; MODULE_DEVICE_TABLE(hid, nintendo_hid_devices); -- 2.48.0