Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
isicom.h
Go to the documentation of this file.
1 #ifndef _LINUX_ISICOM_H
2 #define _LINUX_ISICOM_H
3 
4 #define YES 1
5 #define NO 0
6 
7 /*
8  * ISICOM Driver definitions ...
9  *
10  */
11 
12 #define ISICOM_NAME "ISICom"
13 
14 /*
15  * PCI definitions
16  */
17 
18 #define DEVID_COUNT 9
19 #define VENDOR_ID 0x10b5
20 
21 /*
22  * These are now officially allocated numbers
23  */
24 
25 #define ISICOM_NMAJOR 112 /* normal */
26 #define ISICOM_CMAJOR 113 /* callout */
27 #define ISICOM_MAGIC (('M' << 8) | 'T')
28 
29 #define WAKEUP_CHARS 256 /* hard coded for now */
30 #define TX_SIZE 254
31 
32 #define BOARD_COUNT 4
33 #define PORT_COUNT (BOARD_COUNT*16)
34 
35 /* character sizes */
36 
37 #define ISICOM_CS5 0x0000
38 #define ISICOM_CS6 0x0001
39 #define ISICOM_CS7 0x0002
40 #define ISICOM_CS8 0x0003
41 
42 /* stop bits */
43 
44 #define ISICOM_1SB 0x0000
45 #define ISICOM_2SB 0x0004
46 
47 /* parity */
48 
49 #define ISICOM_NOPAR 0x0000
50 #define ISICOM_ODPAR 0x0008
51 #define ISICOM_EVPAR 0x0018
52 
53 /* flow control */
54 
55 #define ISICOM_CTSRTS 0x03
56 #define ISICOM_INITIATE_XONXOFF 0x04
57 #define ISICOM_RESPOND_XONXOFF 0x08
58 
59 #define BOARD(line) (((line) >> 4) & 0x3)
60 
61  /* isi kill queue bitmap */
62 
63 #define ISICOM_KILLTX 0x01
64 #define ISICOM_KILLRX 0x02
65 
66  /* isi_board status bitmap */
67 
68 #define FIRMWARE_LOADED 0x0001
69 #define BOARD_ACTIVE 0x0002
70 #define BOARD_INIT 0x0004
71 
72  /* isi_port status bitmap */
73 
74 #define ISI_CTS 0x1000
75 #define ISI_DSR 0x2000
76 #define ISI_RI 0x4000
77 #define ISI_DCD 0x8000
78 #define ISI_DTR 0x0100
79 #define ISI_RTS 0x0200
80 
81 
82 #define ISI_TXOK 0x0001
83 
84 #endif /* ISICOM_H */