aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorAnton Staaf <robotboy@chromium.org>2014-11-03 11:43:20 -0500
committerJohan Hovold <johan@kernel.org>2014-11-04 12:11:01 -0500
commit679315e5fae1e4614eed0d9aa26999ddcb6a0f77 (patch)
tree18196f5eaeef6f0b1cd09b596113eb89c44a3f1f /drivers/usb
parent9d3801903851a2be51f0b2d85f25f952a7da9969 (diff)
USB: serial: add Google simple serial SubClass support
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>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/serial/Kconfig1
-rw-r--r--drivers/usb/serial/usb-serial-simple.c10
2 files changed, 11 insertions, 0 deletions
diff --git a/drivers/usb/serial/Kconfig b/drivers/usb/serial/Kconfig
index d185613bbd7d..b7cf1982d1d9 100644
--- a/drivers/usb/serial/Kconfig
+++ b/drivers/usb/serial/Kconfig
@@ -60,6 +60,7 @@ config USB_SERIAL_SIMPLE
60 - Suunto ANT+ USB device. 60 - Suunto ANT+ USB device.
61 - Medtronic CareLink USB device 61 - Medtronic CareLink USB device
62 - Fundamental Software dongle. 62 - Fundamental Software dongle.
63 - Google USB serial devices
63 - HP4x calculators 64 - HP4x calculators
64 - a number of Motorola phones 65 - a number of Motorola phones
65 - Novatel Wireless GPS receivers 66 - Novatel Wireless GPS receivers
diff --git a/drivers/usb/serial/usb-serial-simple.c b/drivers/usb/serial/usb-serial-simple.c
index 7064eb8d6142..bc310112eae9 100644
--- a/drivers/usb/serial/usb-serial-simple.c
+++ b/drivers/usb/serial/usb-serial-simple.c
@@ -56,6 +56,14 @@ DEVICE(funsoft, FUNSOFT_IDS);
56 { USB_DEVICE(0x8087, 0x0716) } 56 { USB_DEVICE(0x8087, 0x0716) }
57DEVICE(flashloader, FLASHLOADER_IDS); 57DEVICE(flashloader, FLASHLOADER_IDS);
58 58
59/* Google Serial USB SubClass */
60#define GOOGLE_IDS() \
61 { USB_VENDOR_AND_INTERFACE_INFO(0x18d1, \
62 USB_CLASS_VENDOR_SPEC, \
63 0x50, \
64 0x01) }
65DEVICE(google, GOOGLE_IDS);
66
59/* ViVOpay USB Serial Driver */ 67/* ViVOpay USB Serial Driver */
60#define VIVOPAY_IDS() \ 68#define VIVOPAY_IDS() \
61 { USB_DEVICE(0x1d5f, 0x1004) } /* ViVOpay 8800 */ 69 { USB_DEVICE(0x1d5f, 0x1004) } /* ViVOpay 8800 */
@@ -97,6 +105,7 @@ static struct usb_serial_driver * const serial_drivers[] = {
97 &zio_device, 105 &zio_device,
98 &funsoft_device, 106 &funsoft_device,
99 &flashloader_device, 107 &flashloader_device,
108 &google_device,
100 &vivopay_device, 109 &vivopay_device,
101 &moto_modem_device, 110 &moto_modem_device,
102 &novatel_gps_device, 111 &novatel_gps_device,
@@ -111,6 +120,7 @@ static const struct usb_device_id id_table[] = {
111 ZIO_IDS(), 120 ZIO_IDS(),
112 FUNSOFT_IDS(), 121 FUNSOFT_IDS(),
113 FLASHLOADER_IDS(), 122 FLASHLOADER_IDS(),
123 GOOGLE_IDS(),
114 VIVOPAY_IDS(), 124 VIVOPAY_IDS(),
115 MOTO_IDS(), 125 MOTO_IDS(),
116 NOVATEL_IDS(), 126 NOVATEL_IDS(),