Sorry! Should have submitted the patch inline: --- drivers/usb/serial/usb-serial-simple.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/usb/serial/usb-serial-simple.c b/drivers/usb/serial/usb-serial-simple.c index e98b6e5..7727eab 100644 --- a/drivers/usb/serial/usb-serial-simple.c +++ b/drivers/usb/serial/usb-serial-simple.c @@ -32,7 +32,7 @@ static struct usb_serial_driver vendor##_device = { \ }, \ .id_table = vendor##_id_table, \ .num_ports = nport, \ -}; +} #define DEVICE(vendor, IDS) DEVICE_N(vendor, IDS, 1) @@ -58,6 +58,10 @@ DEVICE(funsoft, FUNSOFT_IDS); { USB_DEVICE(0x8087, 0x0801) } DEVICE(flashloader, FLASHLOADER_IDS); +#define ICDI_IDS() \ + { USB_DEVICE_INTERFACE_CLASS(0x1cbe, 0x00fd, USB_CLASS_VENDOR_SPEC) } +DEVICE(icdi, ICDI_IDS); + /* Google Serial USB SubClass */ #define GOOGLE_IDS() \ { USB_VENDOR_AND_INTERFACE_INFO(0x18d1, \ @@ -114,6 +118,7 @@ static struct usb_serial_driver * const serial_drivers[] = { &hp4x_device, &suunto_device, &siemens_mpi_device, + &icdi_device, NULL }; @@ -129,6 +134,7 @@ static const struct usb_device_id id_table[] = { HP4X_IDS(), SUUNTO_IDS(), SIEMENS_IDS(), + ICDI_IDS(), { }, }; MODULE_DEVICE_TABLE(usb, id_table); -- 2.1.4 The TI ICDI is an integrated debugger interface for its TM4C series microcontroller chip. It is a USB interface which can be used just like a USB serial device. A few lines of codes added to the file "drivers/usb/serial/usb-serial-simple.c" accomplishes this job. And it can be used to upload/download firmware for the TI TM4C12x series. I think GDB can also use this serial device to do the debugging of TM4C12x. This patch is based on version 4.9.48. Thanks, Dashi Cao -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html