1 /* SPDX-License-Identifier: GPL-2.0 */
2 #define SUSBCRequest_SetBaudRateParityAndStopBits       1
3 #define SUSBCR_SBR_MASK				0xFF00
4 #define SUSBCR_SBR_1200				0x0100
5 #define SUSBCR_SBR_9600				0x0200
6 #define SUSBCR_SBR_19200			0x0400
7 #define SUSBCR_SBR_28800			0x0800
8 #define SUSBCR_SBR_38400			0x1000
9 #define SUSBCR_SBR_57600			0x2000
10 #define SUSBCR_SBR_115200			0x4000
11 
12 #define SUSBCR_SPASB_MASK			0x0070
13 #define SUSBCR_SPASB_NoParity			0x0010
14 #define SUSBCR_SPASB_OddParity			0x0020
15 #define SUSBCR_SPASB_EvenParity			0x0040
16 
17 #define SUSBCR_SPASB_STPMASK			0x0003
18 #define SUSBCR_SPASB_1StopBit			0x0001
19 #define SUSBCR_SPASB_2StopBits			0x0002
20 
21 #define SUSBCRequest_SetStatusLinesOrQueues	2
22 #define SUSBCR_SSL_SETRTS			0x0001
23 #define SUSBCR_SSL_CLRRTS			0x0002
24 #define SUSBCR_SSL_SETDTR			0x0004
25 #define SUSBCR_SSL_CLRDTR			0x0010
26 
27 /* Kill the pending/current writes to the comm port. */
28 #define SUSBCR_SSL_PURGE_TXABORT		0x0100
29 /* Kill the pending/current reads to the comm port. */
30 #define SUSBCR_SSL_PURGE_RXABORT		0x0200
31 /* Kill the transmit queue if there. */
32 #define SUSBCR_SSL_PURGE_TXCLEAR		0x0400
33 /* Kill the typeahead buffer if there. */
34 #define SUSBCR_SSL_PURGE_RXCLEAR		0x0800
35 
36 #define SUSBCRequest_GetStatusLineState		4
37 /* Any Character received */
38 #define SUSBCR_GSL_RXCHAR			0x0001
39 /* Transmitt Queue Empty */
40 #define SUSBCR_GSL_TXEMPTY			0x0004
41 /* CTS changed state */
42 #define SUSBCR_GSL_CTS				0x0008
43 /* DSR changed state */
44 #define SUSBCR_GSL_DSR				0x0010
45 /* RLSD changed state */
46 #define SUSBCR_GSL_RLSD				0x0020
47 /* BREAK received */
48 #define SUSBCR_GSL_BREAK			0x0040
49 /* Line status error occurred */
50 #define SUSBCR_GSL_ERR				0x0080
51 /* Ring signal detected */
52 #define SUSBCR_GSL_RING				0x0100
53 
54 #define SUSBCRequest_Misc			8
55 /* use a predefined reset sequence */
56 #define SUSBCR_MSC_ResetReader			0x0001
57 /* use a predefined sequence to reset the internal queues */
58 #define SUSBCR_MSC_ResetAllQueues		0x0002
59 
60 #define SUSBCRequest_GetMisc			0x10
61 
62 /*
63  * get the firmware version from device, coded like this 0xHHLLBBPP with
64  * HH = Firmware Version High Byte
65  * LL = Firmware Version Low Byte
66  * BB = Build Number
67  * PP = Further Attributes
68  */
69 #define SUSBCR_MSC_GetFWVersion			0x0001
70 
71 /*
72  * get the hardware version from device coded like this 0xHHLLPPRR with
73  * HH = Software Version High Byte
74  * LL = Software Version Low Byte
75  * PP = Further Attributes
76  * RR = Reserved for the hardware ID
77  */
78 #define SUSBCR_MSC_GetHWVersion			0x0002
79