xref: /plan9/sys/src/cmd/usb/serial/prolific.h (revision 80e9508eeb4c3647c9fac9436f0155e81be86f60)
15e4f5c78SDavid du Colombier enum {
25e4f5c78SDavid du Colombier 	/* flavours of the device */
3*80e9508eSDavid du Colombier 	TypeH,
45e4f5c78SDavid du Colombier 	TypeHX,
5*80e9508eSDavid du Colombier 	TypeUnk,
6*80e9508eSDavid du Colombier 
7*80e9508eSDavid du Colombier 	RevH		= 0x0202,
8*80e9508eSDavid du Colombier 	RevX		= 0x0300,
9*80e9508eSDavid du Colombier 	RevHX		= 0x0400,
10*80e9508eSDavid du Colombier 	Rev1		= 0x0001,
115e4f5c78SDavid du Colombier 
125e4f5c78SDavid du Colombier 	/* usbcmd parameters */
135e4f5c78SDavid du Colombier 	SetLineReq	= 0x20,
145e4f5c78SDavid du Colombier 
155e4f5c78SDavid du Colombier 	SetCtlReq	= 0x22,
165e4f5c78SDavid du Colombier 
175e4f5c78SDavid du Colombier 	BreakReq	= 0x23,
185e4f5c78SDavid du Colombier 	BreakOn		= 0xffff,
195e4f5c78SDavid du Colombier 	BreakOff	= 0x0000,
205e4f5c78SDavid du Colombier 
215e4f5c78SDavid du Colombier 	GetLineReq	= 0x21,
225e4f5c78SDavid du Colombier 
235e4f5c78SDavid du Colombier 	VendorWriteReq	= 0x01,		/* BUG: is this a standard request? */
245e4f5c78SDavid du Colombier 	VendorReadReq	= 0x01,
255e4f5c78SDavid du Colombier 
26*80e9508eSDavid du Colombier 	ParamReqSz	= 7,
27*80e9508eSDavid du Colombier 	VendorReqSz	= 10,
285e4f5c78SDavid du Colombier 
295e4f5c78SDavid du Colombier 	/* status read from interrupt endpoint */
305e4f5c78SDavid du Colombier 	DcdStatus	= 0x01,
315e4f5c78SDavid du Colombier 	DsrStatus	= 0x02,
325e4f5c78SDavid du Colombier 	BreakerrStatus	= 0x04,
335e4f5c78SDavid du Colombier 	RingStatus	= 0x08,
345e4f5c78SDavid du Colombier 	FrerrStatus	= 0x10,
355e4f5c78SDavid du Colombier 	ParerrStatus	= 0x20,
365e4f5c78SDavid du Colombier 	OvererrStatus	= 0x40,
375e4f5c78SDavid du Colombier 	CtsStatus	= 0x80,
385e4f5c78SDavid du Colombier 
39*80e9508eSDavid du Colombier 	DcrGet		= 0x80,
40*80e9508eSDavid du Colombier 	DcrSet		= 0x00,
415e4f5c78SDavid du Colombier 
42*80e9508eSDavid du Colombier 	Dcr0Idx		= 0x00,
43*80e9508eSDavid du Colombier 
44*80e9508eSDavid du Colombier 	Dcr0Init	= 0x0001,
45*80e9508eSDavid du Colombier 	Dcr0HwFcH	= 0x0040,
46*80e9508eSDavid du Colombier 	Dcr0HwFcX	= 0x0060,
47*80e9508eSDavid du Colombier 
48*80e9508eSDavid du Colombier 	Dcr1Idx		= 0x01,
49*80e9508eSDavid du Colombier 
50*80e9508eSDavid du Colombier 	Dcr1Init	= 0x0000,
515e4f5c78SDavid du Colombier 	Dcr1InitH	= 0x0080,
525e4f5c78SDavid du Colombier 	Dcr1InitX	= 0x0000,
53*80e9508eSDavid du Colombier 
54*80e9508eSDavid du Colombier 	Dcr2Idx		= 0x02,
55*80e9508eSDavid du Colombier 
565e4f5c78SDavid du Colombier 	Dcr2InitH	= 0x0024,
575e4f5c78SDavid du Colombier 	Dcr2InitX	= 0x0044,
58*80e9508eSDavid du Colombier 
59*80e9508eSDavid du Colombier 	PipeDSRst	= 0x08,
60*80e9508eSDavid du Colombier 	PipeUSRst	= 0x09,
61*80e9508eSDavid du Colombier 
625e4f5c78SDavid du Colombier };
635e4f5c78SDavid du Colombier 
645e4f5c78SDavid du Colombier enum {
655e4f5c78SDavid du Colombier 	PL2303Vid	= 0x067b,
665e4f5c78SDavid du Colombier 	PL2303Did	= 0x2303,
675e4f5c78SDavid du Colombier 	PL2303DidRSAQ2	= 0x04bb,
685e4f5c78SDavid du Colombier 	PL2303DidDCU11	= 0x1234,
695e4f5c78SDavid du Colombier 	PL2303DidPHAROS	= 0xaaa0,
705e4f5c78SDavid du Colombier 	PL2303DidRSAQ3	= 0xaaa2,
715e4f5c78SDavid du Colombier 	PL2303DidALDIGA	= 0x0611,
725e4f5c78SDavid du Colombier 	PL2303DidMMX	= 0x0612,
735e4f5c78SDavid du Colombier 	PL2303DidGPRS	= 0x0609,
745e4f5c78SDavid du Colombier 
755e4f5c78SDavid du Colombier 	ATENVid		= 0x0557,
765e4f5c78SDavid du Colombier 	ATENVid2	= 0x0547,
775e4f5c78SDavid du Colombier 	ATENDid		= 0x2008,
785e4f5c78SDavid du Colombier 
795e4f5c78SDavid du Colombier 	IODATAVid	= 0x04bb,
805e4f5c78SDavid du Colombier 	IODATADid	= 0x0a03,
815e4f5c78SDavid du Colombier 	IODATADidRSAQ5	= 0x0a0e,
825e4f5c78SDavid du Colombier 
835e4f5c78SDavid du Colombier 	ELCOMVid	= 0x056e,
845e4f5c78SDavid du Colombier 	ELCOMDid	= 0x5003,
855e4f5c78SDavid du Colombier 	ELCOMDidUCSGT	= 0x5004,
865e4f5c78SDavid du Colombier 
875e4f5c78SDavid du Colombier 	ITEGNOVid	= 0x0eba,
885e4f5c78SDavid du Colombier 	ITEGNODid	= 0x1080,
895e4f5c78SDavid du Colombier 	ITEGNODid2080	= 0x2080,
905e4f5c78SDavid du Colombier 
915e4f5c78SDavid du Colombier 	MA620Vid	= 0x0df7,
925e4f5c78SDavid du Colombier 	MA620Did	= 0x0620,
935e4f5c78SDavid du Colombier 
945e4f5c78SDavid du Colombier 	RATOCVid	= 0x0584,
955e4f5c78SDavid du Colombier 	RATOCDid	= 0xb000,
965e4f5c78SDavid du Colombier 
975e4f5c78SDavid du Colombier 	TRIPPVid	= 0x2478,
985e4f5c78SDavid du Colombier 	TRIPPDid	= 0x2008,
995e4f5c78SDavid du Colombier 
1005e4f5c78SDavid du Colombier 	RADIOSHACKVid	= 0x1453,
1015e4f5c78SDavid du Colombier 	RADIOSHACKDid	= 0x4026,
1025e4f5c78SDavid du Colombier 
1035e4f5c78SDavid du Colombier 	DCU10Vid	= 0x0731,
1045e4f5c78SDavid du Colombier 	DCU10Did	= 0x0528,
1055e4f5c78SDavid du Colombier 
1065e4f5c78SDavid du Colombier 	SITECOMVid	= 0x6189,
1075e4f5c78SDavid du Colombier 	SITECOMDid	= 0x2068,
1085e4f5c78SDavid du Colombier 
1095e4f5c78SDavid du Colombier 	 /* Alcatel OT535/735 USB cable */
1105e4f5c78SDavid du Colombier 	ALCATELVid	= 0x11f7,
1115e4f5c78SDavid du Colombier 	ALCATELDid	= 0x02df,
1125e4f5c78SDavid du Colombier 
1135e4f5c78SDavid du Colombier 	/* Samsung I330 phone cradle */
1145e4f5c78SDavid du Colombier 	SAMSUNGVid	= 0x04e8,
1155e4f5c78SDavid du Colombier 	SAMSUNGDid	= 0x8001,
1165e4f5c78SDavid du Colombier 
1175e4f5c78SDavid du Colombier 	SIEMENSVid	= 0x11f5,
1185e4f5c78SDavid du Colombier 	SIEMENSDidSX1	= 0x0001,
1195e4f5c78SDavid du Colombier 	SIEMENSDidX65	= 0x0003,
1205e4f5c78SDavid du Colombier 	SIEMENSDidX75	= 0x0004,
1215e4f5c78SDavid du Colombier 	SIEMENSDidEF81	= 0x0005,
1225e4f5c78SDavid du Colombier 
1235e4f5c78SDavid du Colombier 	SYNTECHVid	= 0x0745,
1245e4f5c78SDavid du Colombier 	SYNTECHDid	= 0x0001,
1255e4f5c78SDavid du Colombier 
1265e4f5c78SDavid du Colombier 	/* Nokia CA-42 Cable */
1275e4f5c78SDavid du Colombier 	NOKIACA42Vid	= 0x078b,
1285e4f5c78SDavid du Colombier 	NOKIACA42Did	= 0x1234,
1295e4f5c78SDavid du Colombier 
1305e4f5c78SDavid du Colombier 	/* CA-42 CLONE Cable www.ca-42.com chipset: Prolific Technology Inc */
1315e4f5c78SDavid du Colombier 	CA42CA42Vid	= 0x10b5,
1325e4f5c78SDavid du Colombier 	CA42CA42Did	= 0xac70,
1335e4f5c78SDavid du Colombier 
1345e4f5c78SDavid du Colombier 	SAGEMVid	= 0x079b,
1355e4f5c78SDavid du Colombier 	SAGEMDid	= 0x0027,
1365e4f5c78SDavid du Colombier 
1375e4f5c78SDavid du Colombier 	/* Leadtek GPS 9531 (ID 0413:2101) */
1385e4f5c78SDavid du Colombier 	LEADTEKVid	= 0x0413,
1395e4f5c78SDavid du Colombier 	LEADTEK9531Did	= 0x2101,
1405e4f5c78SDavid du Colombier 
1415e4f5c78SDavid du Colombier 	 /* USB GSM cable from Speed Dragon Multimedia, Ltd */
1425e4f5c78SDavid du Colombier 	SPEEDDRAGONVid	= 0x0e55,
1435e4f5c78SDavid du Colombier 	SPEEDDRAGONDid	= 0x110b,
1445e4f5c78SDavid du Colombier 
1455e4f5c78SDavid du Colombier 	/* DATAPILOT Universal-2 Phone Cable */
1465e4f5c78SDavid du Colombier 	BELKINVid	= 0x050d,
1475e4f5c78SDavid du Colombier 	BELKINDid	= 0x0257,
1485e4f5c78SDavid du Colombier 
1495e4f5c78SDavid du Colombier 	/* Belkin "F5U257" Serial Adapter */
1505e4f5c78SDavid du Colombier 	DATAPILOTU2Vid	= 0x0731,
1515e4f5c78SDavid du Colombier 	DATAPILOTU2Did	= 0x2003,
1525e4f5c78SDavid du Colombier 
1535e4f5c78SDavid du Colombier 	ALCORVid	= 0x058F,
1545e4f5c78SDavid du Colombier 	ALCORDid	= 0x9720,
1555e4f5c78SDavid du Colombier 
1565e4f5c78SDavid du Colombier 	/* Willcom WS002IN Data Driver (by NetIndex Inc.) */,
1575e4f5c78SDavid du Colombier 	WS002INVid	= 0x11f6,
1585e4f5c78SDavid du Colombier 	WS002INDid	= 0x2001,
1595e4f5c78SDavid du Colombier 
1605e4f5c78SDavid du Colombier 	/* Corega CG-USBRS232R Serial Adapter */,
1615e4f5c78SDavid du Colombier 	COREGAVid	= 0x07aa,
1625e4f5c78SDavid du Colombier 	COREGADid	= 0x002a,
1635e4f5c78SDavid du Colombier 
1645e4f5c78SDavid du Colombier 	/* Y.C. Cable U.S.A., Inc - USB to RS-232 */,
1655e4f5c78SDavid du Colombier 	YCCABLEVid	= 0x05ad,
1665e4f5c78SDavid du Colombier 	YCCABLEDid	= 0x0fba,
1675e4f5c78SDavid du Colombier 
1685e4f5c78SDavid du Colombier 	/* "Superial" USB - Serial */,
1695e4f5c78SDavid du Colombier 	SUPERIALVid	= 0x5372,
1705e4f5c78SDavid du Colombier 	SUPERIALDid	= 0x2303,
1715e4f5c78SDavid du Colombier 
1725e4f5c78SDavid du Colombier 	/* Hewlett-Packard LD220-HP POS Pole Display */,
1735e4f5c78SDavid du Colombier 	HPVid		= 0x03f0,
1745e4f5c78SDavid du Colombier 	HPLD220Did	= 0x3524,
1755e4f5c78SDavid du Colombier };
1764d52e0f0SDavid du Colombier 
1774d52e0f0SDavid du Colombier extern Serialops plops;
1784d52e0f0SDavid du Colombier int	plmatch(char *info);
179