Received: by 2002:ac0:98c7:0:0:0:0:0 with SMTP id g7-v6csp28718imd; Fri, 26 Oct 2018 04:39:03 -0700 (PDT) X-Google-Smtp-Source: AJdET5dx70nTeaQXzeWv8O3nhxp/Gs+L2aWk2a5Eg/l4z+bZrUyN21vEl3tvz+cqcn4Vvpi1hjKh X-Received: by 2002:a63:e818:: with SMTP id s24-v6mr3035997pgh.90.1540553943403; Fri, 26 Oct 2018 04:39:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1540553943; cv=none; d=google.com; s=arc-20160816; b=qKL8KsIhrs6mo9L0MDPn1dUyVQH1SpdCKwLk1ujRJDEo5geOGBAXXkQJ+mG+zBVc/R L43TJ7VURFzNm3dKLoeHzEML+ZBK8cPuUGz1aoIYU09vCsTTEjaEvSYxqt9TOmaz8nia n/dsu54/b/dt5CJl7VldPV87NRmy1sA/5pT/4G7UO2IoOreZmW6fCbcM3p83RGbmr9tk oA6LANn3OilqxK/2htEJVt7w02zLcH+hmgjsCPxQuLdzWZlXVwuBZwCkB5pdmsetd4gt zEf2dRxkWs38EagOknj2iU86yr5J7ZaT4W00X2HNm4kINVL1wVfuGJ6qk187KxsNP0Zi MlNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=Qfdsm65N+TkoHRZ3C7uU7emhwoMURKbDMGXeS9V7VJE=; b=AA139Mdh4cHu0o2dFINJWK6Io65teHthy9iJDDCcuPx9jsZ8tjCwH2g+ByupH2Kxp/ vydSwjIZ9pkreHeTZzQ+tm77fNfbwJHSo5uW+owE7vc5CkSftiaemSM4V9h8KUqLY1eY oD5CmZK6zjZdMm+jx76hMGskxt5nom0W9SOu1fQG5vnC3ZVpLp+8o/VtlKZBFf+8yjy2 26xVfC5sqEdaZeAOGEWt47IiC3789YnOwuWx7tNxFesLp1j69MJW+Q1NuDWEAxqYz8EI 8SohrA5e2JUhjn39qbWU5zN/98s3UTZI4UlAtfpRNDfajw2+4k1EuBxhuKr7WoUsj0ZS O+BQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=vftN02I9; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k196-v6si11065090pga.115.2018.10.26.04.38.45; Fri, 26 Oct 2018 04:39:03 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=vftN02I9; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727582AbeJZUPH (ORCPT + 99 others); Fri, 26 Oct 2018 16:15:07 -0400 Received: from mail-pf1-f196.google.com ([209.85.210.196]:46093 "EHLO mail-pf1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727469AbeJZUPG (ORCPT ); Fri, 26 Oct 2018 16:15:06 -0400 Received: by mail-pf1-f196.google.com with SMTP id r64-v6so385188pfb.13; Fri, 26 Oct 2018 04:38:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=Qfdsm65N+TkoHRZ3C7uU7emhwoMURKbDMGXeS9V7VJE=; b=vftN02I9KX5exXORIa/+PRT7BnE8kEF7FZvI7xOozEs46N1b9G7qLtM/Eq5W+ebe1m HeR9e9lxamK8ASH8jm2O2hXPwL+xVYj8TCAepZFVRPI4bQ7yuUfpE3ZS83zUZQ5ijjAW DINgeaNJXhKjnBF90FKnccCfpcMzIx53WXV6krl3xeIRQUfOnKmnYHeoc4gtNGSAj/ay ToxMRUe3pl1tlOh11DmjVu8q+dAeCqIwbfr/slXN6H9t63tD11jCY7Kdoupdz01bJAj7 3Vmk1FeLn/PEjckQv7VJ2cn6d1qvmmJaJwjX7GgLjBYK90VQdetXWSuGqrlVoMY6KUHz KGVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Qfdsm65N+TkoHRZ3C7uU7emhwoMURKbDMGXeS9V7VJE=; b=OGOfZfwp/zezceQvnhOlu2uG+Il3q+NKOi9VBfDHiGGwrtDc4zsKeq6aBeakhA8+dY Sq93W/bqCU9wdf4yfAOZ6NusbvLJ2ljwC8z6FgkOjksJb4IoqM4wnGw/nwWNfYT9Znys tGvBm31achd+h05GJWBpLRZPbvGuUTpNMWqkJ8FtONxBSlFKwfm2kmId/tBcwGm9IQnR NL1o5yAD7fVS2Z/LwwCJ6kxHLro81+0bVRNbpt/DBaFPYEQE1JMjzAEDhjkSGQen3Zmi apaShQMxW/4SPyQGXcfrt8jCp79r6rBg9pNvlauVaAfctFSMoXO4hHSI9na57nalIKTm kaTw== X-Gm-Message-State: AGRZ1gK1OpXbUo8skXR2ua6EuXJnV2xqyOIYzDKM+DOwVypySls9pSfE INCmUTyjsRqZg+pomSs+6xbhGi8l5570Dg== X-Received: by 2002:a63:a16:: with SMTP id 22mr2874151pgk.318.1540553900587; Fri, 26 Oct 2018 04:38:20 -0700 (PDT) Received: from localhost.localdomain ([45.56.155.182]) by smtp.gmail.com with ESMTPSA id g65-v6sm14412823pfg.98.2018.10.26.04.38.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 26 Oct 2018 04:38:20 -0700 (PDT) From: Dashi Cao To: linux-usb@vger.kernel.org Cc: linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org, Dashi Cao Subject: [PATCH] Add support of TI ICDI to USB simple serial device Date: Fri, 26 Oct 2018 19:38:07 +0800 Message-Id: <20181026113807.20735-1-dscao999@gmail.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org TI In-Circuit Debug Interface (ICDI) is a debugging interface for TI ARM microcontrollers. It has four USB interfaces and the first two of them are presented as standard ACM serial device. The 3rd interface is the debugging interface and it can be driven as a Linux USB simple serial device. With it, debugging sessions and firmware up/down loading are supported on Linux. Signed-off-by: Dashi Cao --- drivers/usb/serial/usb-serial-simple.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/usb/serial/usb-serial-simple.c b/drivers/usb/serial/usb-serial-simple.c index 4d0273508043..ae43088b659e 100644 --- a/drivers/usb/serial/usb-serial-simple.c +++ b/drivers/usb/serial/usb-serial-simple.c @@ -109,6 +109,11 @@ DEVICE(suunto, SUUNTO_IDS); { USB_DEVICE(0x908, 0x0004) } DEVICE(siemens_mpi, SIEMENS_IDS); +/* TI In-Circuit Debug Interface */ +#define ICDI_IDS() \ + { USB_DEVICE_INTERFACE_CLASS(0x1cbe, 0x00fd, USB_CLASS_VENDOR_SPEC) } +DEVICE(ti_icdi, ICDI_IDS); + /* All of the above structures mushed into two lists */ static struct usb_serial_driver * const serial_drivers[] = { &carelink_device, @@ -124,6 +129,7 @@ static struct usb_serial_driver * const serial_drivers[] = { &hp4x_device, &suunto_device, &siemens_mpi_device, + &ti_icdi_device, NULL }; @@ -141,6 +147,7 @@ static const struct usb_device_id id_table[] = { HP4X_IDS(), SUUNTO_IDS(), SIEMENS_IDS(), + ICDI_IDS(), { }, }; MODULE_DEVICE_TABLE(usb, id_table); -- 2.11.0