]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/staging/dgnc/dpacompat.h
Merge branch 'pm-cpufreq'
[karo-tx-linux.git] / drivers / staging / dgnc / dpacompat.h
1 /*
2  * Copyright 2003 Digi International (www.digi.com)
3  *      Scott H Kilau <Scott_Kilau at digi dot com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2, or (at your option)
8  * any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY, EXPRESS OR IMPLIED; without even the
12  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13  * PURPOSE.  See the GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  *
19  *      NOTE: THIS IS A SHARED HEADER. DO NOT CHANGE CODING STYLE!!!
20  */
21
22
23 /*
24  * This structure holds data needed for the intelligent <--> nonintelligent
25  * DPA translation
26  */
27  struct ni_info {
28         int board;
29         int channel;
30         int dtr;
31         int rts;
32         int cts;
33         int dsr;
34         int ri;
35         int dcd;
36         int curtx;
37         int currx;
38         unsigned short iflag;
39         unsigned short oflag;
40         unsigned short cflag;
41         unsigned short lflag;
42
43         unsigned int mstat;
44         unsigned char hflow;
45
46         unsigned char xmit_stopped;
47         unsigned char recv_stopped;
48
49         unsigned int baud;
50 };
51
52 #define RW_READ         1
53 #define RW_WRITE        2
54 #define DIGI_KME        ('e'<<8) | 98           /* Read/Write Host */
55
56 #define SUBTYPE         0007
57 #define T_PCXI          0000
58 #define T_PCXEM         0001
59 #define T_PCXE          0002
60 #define T_PCXR          0003
61 #define T_SP            0004
62 #define T_SP_PLUS       0005
63
64 #define T_HERC   0000
65 #define T_HOU    0001
66 #define T_LON    0002
67 #define T_CHA    0003
68
69 #define T_NEO    0000
70 #define T_NEO_EXPRESS  0001
71 #define T_CLASSIC 0002
72
73 #define FAMILY          0070
74 #define T_COMXI         0000
75 #define T_NI            0000
76 #define T_PCXX          0010
77 #define T_CX            0020
78 #define T_EPC           0030
79 #define T_PCLITE        0040
80 #define T_SPXX          0050
81 #define T_AVXX          0060
82 #define T_DXB           0070
83 #define T_A2K_4_8       0070
84
85 #define BUSTYPE         0700
86 #define T_ISABUS        0000
87 #define T_MCBUS         0100
88 #define T_EISABUS       0200
89 #define T_PCIBUS        0400
90
91 /* Board State Definitions */
92
93 #define BD_RUNNING      0x0
94 #define BD_REASON       0x7f
95 #define BD_NOTFOUND     0x1
96 #define BD_NOIOPORT     0x2
97 #define BD_NOMEM        0x3
98 #define BD_NOBIOS       0x4
99 #define BD_NOFEP        0x5
100 #define BD_FAILED       0x6
101 #define BD_ALLOCATED    0x7
102 #define BD_TRIBOOT      0x8
103 #define BD_BADKME       0x80
104
105 #define DIGI_AIXON      0x0400          /* Aux flow control in fep */
106
107 /* Ioctls needed for dpa operation */
108
109 #define DIGI_GETDD      ('d'<<8) | 248          /* get driver info      */
110 #define DIGI_GETBD      ('d'<<8) | 249          /* get board info       */
111 #define DIGI_GET_NI_INFO ('d'<<8) | 250         /* nonintelligent state snfo */
112
113 /* Other special ioctls */
114 #define DIGI_TIMERIRQ ('d'<<8) | 251            /* Enable/disable RS_TIMER use */
115 #define DIGI_LOOPBACK ('d'<<8) | 252            /* Enable/disable UART internal loopback */