]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
USB: serial: add Google simple serial SubClass support
authorAnton Staaf <robotboy@chromium.org>
Mon, 3 Nov 2014 16:43:20 +0000 (08:43 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 12 Apr 2016 16:12:38 +0000 (09:12 -0700)
commit 679315e5fae1e4614eed0d9aa26999ddcb6a0f77 upstream.

Add support for Google devices that export simple serial
interfaces using the vendor specific SubClass/Protocol pair
0x50/0x01.

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Reviewed-by: Benson Leung <bleung@chromium.org>
[johan: move id entries and update Kconfig]
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/serial/Kconfig
drivers/usb/serial/usb-serial-simple.c

index 3ce5c74b29e4019ca5feac3cfd707cb8911057b4..6f483b8a4f5621cd961fc5f243f3c6741b6d311b 100644 (file)
@@ -59,6 +59,7 @@ config USB_SERIAL_SIMPLE
          driver.  Specifically, it supports:
                - Suunto ANT+ USB device.
                - Fundamental Software dongle.
+               - Google USB serial devices
                - HP4x calculators
                - a number of Motorola phones
                - Siemens USB/MPI adapter.
index efb727a49262a6f878afa86143e91a39ce7c9c33..5c19d3e7b4b8c8dc483d872f45a64152a2536d62 100644 (file)
@@ -51,6 +51,14 @@ DEVICE(funsoft, FUNSOFT_IDS);
        { USB_DEVICE(0x8087, 0x0716) }
 DEVICE(flashloader, FLASHLOADER_IDS);
 
+/* Google Serial USB SubClass */
+#define GOOGLE_IDS()                                           \
+       { USB_VENDOR_AND_INTERFACE_INFO(0x18d1,                 \
+                                       USB_CLASS_VENDOR_SPEC,  \
+                                       0x50,                   \
+                                       0x01) }
+DEVICE(google, GOOGLE_IDS);
+
 /* ViVOpay USB Serial Driver */
 #define VIVOPAY_IDS()                  \
        { USB_DEVICE(0x1d5f, 0x1004) }  /* ViVOpay 8800 */
@@ -86,6 +94,7 @@ static struct usb_serial_driver * const serial_drivers[] = {
        &zio_device,
        &funsoft_device,
        &flashloader_device,
+       &google_device,
        &vivopay_device,
        &moto_modem_device,
        &hp4x_device,
@@ -98,6 +107,7 @@ static const struct usb_device_id id_table[] = {
        ZIO_IDS(),
        FUNSOFT_IDS(),
        FLASHLOADER_IDS(),
+       GOOGLE_IDS(),
        VIVOPAY_IDS(),
        MOTO_IDS(),
        HP4X_IDS(),