[PATCH] cypress_m8: please add vendor/product id to support Prior Scientific OptiScan2

From: Ian Stakenvicius
Date: Mon May 04 2015 - 11:45:17 EST


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

The microscope automation controllers from Prior Scientific,
specifically the OptiScan2 controller (the only one I have access to at
present) use a Cypress CY7C64013-SXC for USB->serial conversion. I've
tested the following patch against drivers/usb/serial/cypress_m8.{c,h}
with success (it just adds the vendor-id and product-id), and I was
wondering if it could be added to the kernel?



-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iF0EAREIAAYFAlVHlAcACgkQ2ugaI38ACPCEYAEAti0AMDVAn3VR0s0NmaOI8n2S
qjj2rTooBjnZAZY8UE8A927oAR/8AbK7q8QT4AKPYpnPrA4timaXLCv6KR8LJCE=
=14hZ
-----END PGP SIGNATURE-----
commit 875820b3d6fce226fe146cc97f7850e86915af16
Author: Ian Stakenvicius <axs@xxxxxxxxxx>
Date: Mon Apr 13 15:49:33 2015 -0400

Prior Scientific OptiScan2 controllers contain a
Cypress CY7C64013-SXC chip for RS232 conversion,
which can be served by the cypress_m8 device driver.

diff --git a/drivers/usb/serial/cypress_m8.c b/drivers/usb/serial/cypress_m8.c
index 01bf533..5bc07d8 100644
--- a/drivers/usb/serial/cypress_m8.c
+++ b/drivers/usb/serial/cypress_m8.c
@@ -63,6 +63,7 @@ static const struct usb_device_id id_table_earthmate[] = {

static const struct usb_device_id id_table_cyphidcomrs232[] = {
{ USB_DEVICE(VENDOR_ID_CYPRESS, PRODUCT_ID_CYPHIDCOM) },
+ { USB_DEVICE(VENDOR_ID_PRIORSCIENTIFIC, PRODUCT_ID_OPTISCAN2) },
{ USB_DEVICE(VENDOR_ID_POWERCOM, PRODUCT_ID_UPS) },
{ USB_DEVICE(VENDOR_ID_FRWD, PRODUCT_ID_CYPHIDCOM_FRWD) },
{ } /* Terminating entry */
@@ -77,6 +78,7 @@ static const struct usb_device_id id_table_combined[] = {
{ USB_DEVICE(VENDOR_ID_DELORME, PRODUCT_ID_EARTHMATEUSB) },
{ USB_DEVICE(VENDOR_ID_DELORME, PRODUCT_ID_EARTHMATEUSB_LT20) },
{ USB_DEVICE(VENDOR_ID_CYPRESS, PRODUCT_ID_CYPHIDCOM) },
+ { USB_DEVICE(VENDOR_ID_PRIORSCIENTIFIC, PRODUCT_ID_OPTISCAN2) },
{ USB_DEVICE(VENDOR_ID_POWERCOM, PRODUCT_ID_UPS) },
{ USB_DEVICE(VENDOR_ID_FRWD, PRODUCT_ID_CYPHIDCOM_FRWD) },
{ USB_DEVICE(VENDOR_ID_DAZZLE, PRODUCT_ID_CA42) },
diff --git a/drivers/usb/serial/cypress_m8.h b/drivers/usb/serial/cypress_m8.h
index 119d2e1..1d5e1d9 100644
--- a/drivers/usb/serial/cypress_m8.h
+++ b/drivers/usb/serial/cypress_m8.h
@@ -24,6 +24,10 @@
#define VENDOR_ID_CYPRESS 0x04b4
#define PRODUCT_ID_CYPHIDCOM 0x5500

+/* Cypress HID->COM RS232 Adapter, used by Prior Scientific controllers */
+#define VENDOR_ID_PRIORSCIENTIFIC 0x10db
+#define PRODUCT_ID_OPTISCAN2 0x1234
+
/* FRWD Dongle - a GPS sports watch */
#define VENDOR_ID_FRWD 0x6737
#define PRODUCT_ID_CYPHIDCOM_FRWD 0x0001