Merge master.kernel.org:/home/rmk/linux-2.6-arm
[linux-2.6-block.git] / drivers / char / digi1.h
1 /*          Definitions for DigiBoard ditty(1) command.                 */
2
3 #if !defined(TIOCMODG)
4 #define TIOCMODG        (('d'<<8) | 250)        /* get modem ctrl state */
5 #define TIOCMODS        (('d'<<8) | 251)        /* set modem ctrl state */
6 #endif
7
8 #if !defined(TIOCMSET)
9 #define TIOCMSET        (('d'<<8) | 252)        /* set modem ctrl state */
10 #define TIOCMGET        (('d'<<8) | 253)        /* set modem ctrl state */
11 #endif
12
13 #if !defined(TIOCMBIC)
14 #define TIOCMBIC        (('d'<<8) | 254)        /* set modem ctrl state */
15 #define TIOCMBIS        (('d'<<8) | 255)        /* set modem ctrl state */
16 #endif
17
18 #if !defined(TIOCSDTR)
19 #define TIOCSDTR        (('e'<<8) | 0)          /* set DTR              */
20 #define TIOCCDTR        (('e'<<8) | 1)          /* clear DTR            */
21 #endif
22
23 /************************************************************************
24  * Ioctl command arguments for DIGI parameters.
25  ************************************************************************/
26 #define DIGI_GETA       (('e'<<8) | 94)         /* Read params          */
27
28 #define DIGI_SETA       (('e'<<8) | 95)         /* Set params           */
29 #define DIGI_SETAW      (('e'<<8) | 96)         /* Drain & set params   */
30 #define DIGI_SETAF      (('e'<<8) | 97)         /* Drain, flush & set params */
31
32 #define DIGI_GETFLOW    (('e'<<8) | 99)         /* Get startc/stopc flow */
33                                                 /* control characters    */
34 #define DIGI_SETFLOW    (('e'<<8) | 100)        /* Set startc/stopc flow */
35                                                 /* control characters    */
36 #define DIGI_GETAFLOW   (('e'<<8) | 101)        /* Get Aux. startc/stopc */
37                                                 /* flow control chars    */
38 #define DIGI_SETAFLOW   (('e'<<8) | 102)        /* Set Aux. startc/stopc */
39                                                 /* flow control chars    */
40
41 #define DIGI_GETINFO    (('e'<<8) | 103)        /* Fill in digi_info */
42 #define DIGI_POLLER     (('e'<<8) | 104)        /* Turn on/off poller */
43 #define DIGI_INIT       (('e'<<8) | 105)        /* Allow things to run. */
44
45 struct  digiflow_struct 
46 {
47         unsigned char   startc;                         /* flow cntl start char */
48         unsigned char   stopc;                          /* flow cntl stop char  */
49 };
50
51 typedef struct digiflow_struct digiflow_t;
52
53
54 /************************************************************************
55  * Values for digi_flags 
56  ************************************************************************/
57 #define DIGI_IXON       0x0001          /* Handle IXON in the FEP       */
58 #define DIGI_FAST       0x0002          /* Fast baud rates              */
59 #define RTSPACE         0x0004          /* RTS input flow control       */
60 #define CTSPACE         0x0008          /* CTS output flow control      */
61 #define DSRPACE         0x0010          /* DSR output flow control      */
62 #define DCDPACE         0x0020          /* DCD output flow control      */
63 #define DTRPACE         0x0040          /* DTR input flow control       */
64 #define DIGI_FORCEDCD   0x0100          /* Force carrier                */
65 #define DIGI_ALTPIN     0x0200          /* Alternate RJ-45 pin config   */
66 #define DIGI_AIXON      0x0400          /* Aux flow control in fep      */
67
68
69 /************************************************************************
70  * Values for digiDload
71  ************************************************************************/
72 #define NORMAL  0
73 #define PCI_CTL 1
74
75 #define SIZE8  0
76 #define SIZE16 1
77 #define SIZE32 2
78
79 /************************************************************************
80  * Structure used with ioctl commands for DIGI parameters.
81  ************************************************************************/
82 struct digi_struct 
83 {
84         unsigned short  digi_flags;             /* Flags (see above)    */
85 };
86
87 typedef struct digi_struct digi_t;
88
89 struct digi_info 
90 {
91         unsigned long board;        /* Which board is this ? */
92         unsigned char status;       /* Alive or dead */
93         unsigned char type;         /* see epca.h */
94         unsigned char subtype;      /* For future XEM, XR, etc ... */
95         unsigned short numports;    /* Number of ports configured */
96         unsigned char *port;        /* I/O Address */
97         unsigned char *membase;     /* DPR Address */
98         unsigned char *version;     /* For future ... */
99         unsigned short windowData;  /* For future ... */
100 } ;