xref: /openbmc/linux/drivers/usb/serial/kobil_sct.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21da177e4SLinus Torvalds #define SUSBCRequest_SetBaudRateParityAndStopBits       1
31da177e4SLinus Torvalds #define SUSBCR_SBR_MASK				0xFF00
41da177e4SLinus Torvalds #define SUSBCR_SBR_1200				0x0100
51da177e4SLinus Torvalds #define SUSBCR_SBR_9600				0x0200
61da177e4SLinus Torvalds #define SUSBCR_SBR_19200			0x0400
71da177e4SLinus Torvalds #define SUSBCR_SBR_28800			0x0800
81da177e4SLinus Torvalds #define SUSBCR_SBR_38400			0x1000
91da177e4SLinus Torvalds #define SUSBCR_SBR_57600			0x2000
101da177e4SLinus Torvalds #define SUSBCR_SBR_115200			0x4000
111da177e4SLinus Torvalds 
121da177e4SLinus Torvalds #define SUSBCR_SPASB_MASK			0x0070
131da177e4SLinus Torvalds #define SUSBCR_SPASB_NoParity			0x0010
141da177e4SLinus Torvalds #define SUSBCR_SPASB_OddParity			0x0020
151da177e4SLinus Torvalds #define SUSBCR_SPASB_EvenParity			0x0040
161da177e4SLinus Torvalds 
171da177e4SLinus Torvalds #define SUSBCR_SPASB_STPMASK			0x0003
181da177e4SLinus Torvalds #define SUSBCR_SPASB_1StopBit			0x0001
191da177e4SLinus Torvalds #define SUSBCR_SPASB_2StopBits			0x0002
201da177e4SLinus Torvalds 
211da177e4SLinus Torvalds #define SUSBCRequest_SetStatusLinesOrQueues	2
221da177e4SLinus Torvalds #define SUSBCR_SSL_SETRTS			0x0001
231da177e4SLinus Torvalds #define SUSBCR_SSL_CLRRTS			0x0002
241da177e4SLinus Torvalds #define SUSBCR_SSL_SETDTR			0x0004
251da177e4SLinus Torvalds #define SUSBCR_SSL_CLRDTR			0x0010
261da177e4SLinus Torvalds 
27e4582b6aSGreg Kroah-Hartman /* Kill the pending/current writes to the comm port. */
28e4582b6aSGreg Kroah-Hartman #define SUSBCR_SSL_PURGE_TXABORT		0x0100
29e4582b6aSGreg Kroah-Hartman /* Kill the pending/current reads to the comm port. */
30e4582b6aSGreg Kroah-Hartman #define SUSBCR_SSL_PURGE_RXABORT		0x0200
31e4582b6aSGreg Kroah-Hartman /* Kill the transmit queue if there. */
32e4582b6aSGreg Kroah-Hartman #define SUSBCR_SSL_PURGE_TXCLEAR		0x0400
33e4582b6aSGreg Kroah-Hartman /* Kill the typeahead buffer if there. */
34e4582b6aSGreg Kroah-Hartman #define SUSBCR_SSL_PURGE_RXCLEAR		0x0800
351da177e4SLinus Torvalds 
361da177e4SLinus Torvalds #define SUSBCRequest_GetStatusLineState		4
37e4582b6aSGreg Kroah-Hartman /* Any Character received */
38e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_RXCHAR			0x0001
39e4582b6aSGreg Kroah-Hartman /* Transmitt Queue Empty */
40e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_TXEMPTY			0x0004
41e4582b6aSGreg Kroah-Hartman /* CTS changed state */
42e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_CTS				0x0008
43e4582b6aSGreg Kroah-Hartman /* DSR changed state */
44e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_DSR				0x0010
45e4582b6aSGreg Kroah-Hartman /* RLSD changed state */
46e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_RLSD				0x0020
47e4582b6aSGreg Kroah-Hartman /* BREAK received */
48e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_BREAK			0x0040
49e4582b6aSGreg Kroah-Hartman /* Line status error occurred */
50e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_ERR				0x0080
51e4582b6aSGreg Kroah-Hartman /* Ring signal detected */
52e4582b6aSGreg Kroah-Hartman #define SUSBCR_GSL_RING				0x0100
531da177e4SLinus Torvalds 
541da177e4SLinus Torvalds #define SUSBCRequest_Misc			8
55e4582b6aSGreg Kroah-Hartman /* use a predefined reset sequence */
56e4582b6aSGreg Kroah-Hartman #define SUSBCR_MSC_ResetReader			0x0001
57e4582b6aSGreg Kroah-Hartman /* use a predefined sequence to reset the internal queues */
58e4582b6aSGreg Kroah-Hartman #define SUSBCR_MSC_ResetAllQueues		0x0002
591da177e4SLinus Torvalds 
601da177e4SLinus Torvalds #define SUSBCRequest_GetMisc			0x10
611da177e4SLinus Torvalds 
62e4582b6aSGreg Kroah-Hartman /*
63e4582b6aSGreg Kroah-Hartman  * get the firmware version from device, coded like this 0xHHLLBBPP with
64e4582b6aSGreg Kroah-Hartman  * HH = Firmware Version High Byte
65e4582b6aSGreg Kroah-Hartman  * LL = Firmware Version Low Byte
66e4582b6aSGreg Kroah-Hartman  * BB = Build Number
67e4582b6aSGreg Kroah-Hartman  * PP = Further Attributes
681da177e4SLinus Torvalds  */
69e4582b6aSGreg Kroah-Hartman #define SUSBCR_MSC_GetFWVersion			0x0001
70e4582b6aSGreg Kroah-Hartman 
71e4582b6aSGreg Kroah-Hartman /*
72e4582b6aSGreg Kroah-Hartman  * get the hardware version from device coded like this 0xHHLLPPRR with
73e4582b6aSGreg Kroah-Hartman  * HH = Software Version High Byte
74e4582b6aSGreg Kroah-Hartman  * LL = Software Version Low Byte
75e4582b6aSGreg Kroah-Hartman  * PP = Further Attributes
76e4582b6aSGreg Kroah-Hartman  * RR = Reserved for the hardware ID
77e4582b6aSGreg Kroah-Hartman  */
78e4582b6aSGreg Kroah-Hartman #define SUSBCR_MSC_GetHWVersion			0x0002
79