/*
 * Prolific PL2303 USB to serial adaptor driver header file
 *
 *	This program is free software; you can redistribute it and/or modify
 *	it under the terms of the GNU General Public License as published by
 *	the Free Software Foundation; either version 2 of the License, or
 *	(at your option) any later version.
 *
 */

#define BENQ_VENDOR_ID			0x04a5
#define BENQ_PRODUCT_ID_S81		0x4027

#define PL2303_VENDOR_ID	0x067b
#define PL2303_PRODUCT_ID	0x2303
#define PL2303_PRODUCT_ID_RSAQ2		0x04bb
#define PL2303_PRODUCT_ID_DCU11		0x1234
#define PL2303_PRODUCT_ID_PHAROS	0xaaa0
#define PL2303_PRODUCT_ID_RSAQ3		0xaaa2
#define PL2303_PRODUCT_ID_ALDIGA	0x0611
#define PL2303_PRODUCT_ID_MMX		0x0612
#define PL2303_PRODUCT_ID_GPRS		0x0609
#define PL2303_PRODUCT_ID_HCR331	0x331a
#define PL2303_PRODUCT_ID_MOTOROLA	0x0307
#define PL2303_PRODUCT_ID_ZTEK		0xe1f1

#define ATEN_VENDOR_ID		0x0557
#define ATEN_VENDOR_ID2		0x0547
#define ATEN_PRODUCT_ID		0x2008
#define ATEN_PRODUCT_ID2	0x2118

#define IODATA_VENDOR_ID	0x04bb
#define IODATA_PRODUCT_ID	0x0a03
#define IODATA_PRODUCT_ID_RSAQ5	0x0a0e

#define ELCOM_VENDOR_ID		0x056e
#define ELCOM_PRODUCT_ID	0x5003
#define ELCOM_PRODUCT_ID_UCSGT	0x5004

#define ITEGNO_VENDOR_ID	0x0eba
#define ITEGNO_PRODUCT_ID	0x1080
#define ITEGNO_PRODUCT_ID_2080	0x2080

#define MA620_VENDOR_ID		0x0df7
#define MA620_PRODUCT_ID	0x0620

#define RATOC_VENDOR_ID		0x0584
#define RATOC_PRODUCT_ID	0xb000

#define TRIPP_VENDOR_ID		0x2478
#define TRIPP_PRODUCT_ID	0x2008

#define RADIOSHACK_VENDOR_ID	0x1453
#define RADIOSHACK_PRODUCT_ID	0x4026

#define DCU10_VENDOR_ID		0x0731
#define DCU10_PRODUCT_ID	0x0528

#define SITECOM_VENDOR_ID	0x6189
#define SITECOM_PRODUCT_ID	0x2068

/* Alcatel OT535/735 USB cable */
#define ALCATEL_VENDOR_ID	0x11f7
#define ALCATEL_PRODUCT_ID	0x02df

#define SIEMENS_VENDOR_ID	0x11f5
#define SIEMENS_PRODUCT_ID_SX1	0x0001
#define SIEMENS_PRODUCT_ID_X65	0x0003
#define SIEMENS_PRODUCT_ID_X75	0x0004
#define SIEMENS_PRODUCT_ID_EF81	0x0005

#define SYNTECH_VENDOR_ID	0x0745
#define SYNTECH_PRODUCT_ID	0x0001

/* Nokia CA-42 Cable */
#define NOKIA_CA42_VENDOR_ID	0x078b
#define NOKIA_CA42_PRODUCT_ID	0x1234

/* CA-42 CLONE Cable www.ca-42.com chipset: Prolific Technology Inc */
#define CA_42_CA42_VENDOR_ID	0x10b5
#define CA_42_CA42_PRODUCT_ID	0xac70

#define SAGEM_VENDOR_ID		0x079b
#define SAGEM_PRODUCT_ID	0x0027

/* Leadtek GPS 9531 (ID 0413:2101) */
#define LEADTEK_VENDOR_ID	0x0413
#define LEADTEK_9531_PRODUCT_ID	0x2101

/* USB GSM cable from Speed Dragon Multimedia, Ltd */
#define SPEEDDRAGON_VENDOR_ID	0x0e55
#define SPEEDDRAGON_PRODUCT_ID	0x110b

/* DATAPILOT Universal-2 Phone Cable */
#define DATAPILOT_U2_VENDOR_ID	0x0731
#define DATAPILOT_U2_PRODUCT_ID	0x2003

/* Belkin "F5U257" Serial Adapter */
#define BELKIN_VENDOR_ID	0x050d
#define BELKIN_PRODUCT_ID	0x0257

/* Alcor Micro Corp. USB 2.0 TO RS-232 */
#define ALCOR_VENDOR_ID		0x058F
#define ALCOR_PRODUCT_ID	0x9720

/* Willcom WS002IN Data Driver (by NetIndex Inc.) */
#define WS002IN_VENDOR_ID	0x11f6
#define WS002IN_PRODUCT_ID	0x2001

/* Corega CG-USBRS232R Serial Adapter */
#define COREGA_VENDOR_ID	0x07aa
#define COREGA_PRODUCT_ID	0x002a

/* Y.C. Cable U.S.A., Inc - USB to RS-232 */
#define YCCABLE_VENDOR_ID	0x05ad
#define YCCABLE_PRODUCT_ID	0x0fba

/* "Superial" USB - Serial */
#define SUPERIAL_VENDOR_ID	0x5372
#define SUPERIAL_PRODUCT_ID	0x2303

/* Hewlett-Packard POS Pole Displays */
#define HP_VENDOR_ID		0x03f0
#define HP_LD960_PRODUCT_ID	0x0b39
#define HP_LCM220_PRODUCT_ID	0x3139
#define HP_LCM960_PRODUCT_ID	0x3239
#define HP_LD220_PRODUCT_ID	0x3524

/* Cressi Edy (diving computer) PC interface */
#define CRESSI_VENDOR_ID	0x04b8
#define CRESSI_EDY_PRODUCT_ID	0x0521

/* Zeagle dive computer interface */
#define ZEAGLE_VENDOR_ID	0x04b8
#define ZEAGLE_N2ITION3_PRODUCT_ID	0x0522

/* Sony, USB data cable for CMD-Jxx mobile phones */
#define SONY_VENDOR_ID		0x054c
#define SONY_QN3USB_PRODUCT_ID	0x0437

/* Sanwa KB-USB2 multimeter cable (ID: 11ad:0001) */
#define SANWA_VENDOR_ID		0x11ad
#define SANWA_PRODUCT_ID	0x0001

/* ADLINK ND-6530 RS232,RS485 and RS422 adapter */
#define ADLINK_VENDOR_ID		0x0b63
#define ADLINK_ND6530_PRODUCT_ID	0x6530

/* SMART USB Serial Adapter */
#define SMART_VENDOR_ID	0x0b8c
#define SMART_PRODUCT_ID	0x2303

