Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751837AbdIKMXQ convert rfc822-to-8bit (ORCPT ); Mon, 11 Sep 2017 08:23:16 -0400 Received: from mail1.bemta8.messagelabs.com ([216.82.243.196]:54178 "EHLO mail1.bemta8.messagelabs.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751675AbdIKMXO (ORCPT ); Mon, 11 Sep 2017 08:23:14 -0400 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrDIsWRWlGSWpSXmKPExsWSLvdKR9ewYVu kQe8ECYvLu+awWSxa1srswOTxeZNcAGMUa2ZeUn5FAmtGZ+tRxoIOvopTp3eyNDA+5+5i5OIQ EnjCKDF//kE2CGcho8SCVV/Zuxg5ONgE1CV+n+DrYuTkEBGwlpj04BMTiM0s4Chxe+9bMFtYw Ezi4OuJjBA15hJzDm9hh7CNJG693w1mswioSnw/e5gVxOYV8JG4eqaNGcRmFJCVmPboPtRMcY m502aB1UgICEgs2XOeGcIWlXj5+B8ryDkSAvISW2YJQpTrSCzY/YkNwtaWWLbwNTPEeEGJkzO fsExgFJqFZOosJC2zkLTMQtKygJFlFaN6cWpRWWqRrrFeUlFmekZJbmJmjq6hgYVebmpxcWJ6 ak5iUrFecn7uJkZgqDMAwQ7G/f+cDjFKcjApifK+O74lUogvKT+lMiOxOCO+qDQntfgQowwHh 5IEr0X9tkghwaLU9NSKtMwcYNTBpCU4eJREeMXqgNK8xQWJucWZ6RCpU4yKUuK8jCB9AiCJjN I8uDZYpF9ilJUS5mUEOkSIpyC1KDezBFX+FaM4B6OSMK83yBSezLwSuOmvgBYzAS3mubQFZHF JIkJKqoFROV8vuv2u/jfBtwYnpvQHnNvHKCbZUV3DUz5rybW47RpfVyacyr+v59Z7JXLH1oB9 dfEnVR6+MuedpqzFyajyaLLKD09j31STmUrZt6PEmrf1Tw6zqfe5ZNYccn1n7HwB7jW+OZPqM udcPZnEwWTQKne5lj9V7LxeMxv/gs/9C3785P3e8l+JpTgj0VCLuag4EQAZfSqC7wIAAA== X-Env-Sender: caods1@lenovo.com X-Msg-Ref: server-7.tower-37.messagelabs.com!1505132589!99400617!1 X-Originating-IP: [103.30.234.44] X-StarScan-Received: X-StarScan-Version: 9.4.45; banners=-,-,- X-VirusChecked: Checked From: Dashi DS1 Cao To: "linux-usb@vger.kernel.org" CC: "linux-kernel@vger.kernel.org" Subject: RE: Add TI ICDI as a simple usb serial device Thread-Topic: Add TI ICDI as a simple usb serial device Thread-Index: AdMq9szefsTXcSLXT36ZlOHMNkV9UgAAX9tA Date: Mon, 11 Sep 2017 12:22:57 +0000 Message-ID: <23B7B563BA4E9446B962B142C86EF24A089B22D2@CNMAILEX03.lenovo.com> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.96.19.89] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1765 Lines: 55 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