• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/char/
1#define XEMPORTS    0xC02
2#define XEPORTS     0xC22
3
4#define MAX_ALLOC   0x100
5
6#define MAXBOARDS   12
7#define FEPCODESEG  0x0200L
8#define FEPCODE     0x2000L
9#define BIOSCODE    0xf800L
10
11#define MISCGLOBAL  0x0C00L
12#define NPORT       0x0C22L
13#define MBOX        0x0C40L
14#define PORTBASE    0x0C90L
15
16/* Begin code defines used for epca_setup */
17
18#define INVALID_BOARD_TYPE   0x1
19#define INVALID_NUM_PORTS    0x2
20#define INVALID_MEM_BASE     0x4
21#define INVALID_PORT_BASE    0x8
22#define INVALID_BOARD_STATUS 0x10
23#define INVALID_ALTPIN       0x20
24
25/* End code defines used for epca_setup */
26
27
28#define FEPCLR      0x00
29#define FEPMEM      0x02
30#define FEPRST      0x04
31#define FEPINT      0x08
32#define	FEPMASK     0x0e
33#define	FEPWIN      0x80
34
35#define PCXE    0
36#define PCXEVE  1
37#define PCXEM   2
38#define EISAXEM 3
39#define PC64XE  4
40#define PCXI    5
41#define PCIXEM  7
42#define PCICX   8
43#define PCIXR   9
44#define PCIXRJ  10
45#define EPCA_NUM_TYPES 6
46
47
48static char *board_desc[] =
49{
50	"PC/Xe",
51	"PC/Xeve",
52	"PC/Xem",
53	"EISA/Xem",
54	"PC/64Xe",
55	"PC/Xi",
56	"unknown",
57	"PCI/Xem",
58	"PCI/CX",
59	"PCI/Xr",
60	"PCI/Xrj",
61};
62
63#define STARTC      021
64#define STOPC       023
65#define IAIXON      0x2000
66
67
68#define TXSTOPPED  0x1
69#define LOWWAIT    0x2
70#define EMPTYWAIT  0x4
71#define RXSTOPPED  0x8
72#define TXBUSY     0x10
73
74#define DISABLED   0
75#define ENABLED    1
76#define OFF        0
77#define ON         1
78
79#define FEPTIMEOUT 200000
80#define SERIAL_TYPE_INFO    3
81#define EPCA_EVENT_HANGUP   1
82#define EPCA_MAGIC          0x5c6df104L
83
84struct channel
85{
86	long   magic;
87	struct tty_port port;
88	unsigned char boardnum;
89	unsigned char channelnum;
90	unsigned char omodem;         /* FEP output modem status     */
91	unsigned char imodem;         /* FEP input modem status      */
92	unsigned char modemfake;      /* Modem values to be forced   */
93	unsigned char modem;          /* Force values                */
94	unsigned char hflow;
95	unsigned char dsr;
96	unsigned char dcd;
97	unsigned char m_rts ; 		/* The bits used in whatever FEP */
98	unsigned char m_dcd ;		/* is indiginous to this board to */
99	unsigned char m_dsr ;		/* represent each of the physical */
100	unsigned char m_cts ;		/* handshake lines */
101	unsigned char m_ri ;
102	unsigned char m_dtr ;
103	unsigned char stopc;
104	unsigned char startc;
105	unsigned char stopca;
106	unsigned char startca;
107	unsigned char fepstopc;
108	unsigned char fepstartc;
109	unsigned char fepstopca;
110	unsigned char fepstartca;
111	unsigned char txwin;
112	unsigned char rxwin;
113	unsigned short fepiflag;
114	unsigned short fepcflag;
115	unsigned short fepoflag;
116	unsigned short txbufhead;
117	unsigned short txbufsize;
118	unsigned short rxbufhead;
119	unsigned short rxbufsize;
120	int    close_delay;
121	unsigned long  event;
122	uint   dev;
123	unsigned long  statusflags;
124	unsigned long  c_iflag;
125	unsigned long  c_cflag;
126	unsigned long  c_lflag;
127	unsigned long  c_oflag;
128	unsigned char __iomem *txptr;
129	unsigned char __iomem *rxptr;
130	struct board_info           *board;
131	struct board_chan	    __iomem *brdchan;
132	struct digi_struct          digiext;
133	struct work_struct          tqueue;
134	struct global_data 	    __iomem *mailbox;
135};
136
137struct board_info
138{
139	unsigned char status;
140	unsigned char type;
141	unsigned char altpin;
142	unsigned short numports;
143	unsigned long port;
144	unsigned long membase;
145	void __iomem *re_map_port;
146	void __iomem *re_map_membase;
147	unsigned long  memory_seg;
148	void ( * memwinon )	(struct board_info *, unsigned int) ;
149	void ( * memwinoff ) 	(struct board_info *, unsigned int) ;
150	void ( * globalwinon )	(struct channel *) ;
151	void ( * txwinon ) 	(struct channel *) ;
152	void ( * rxwinon )	(struct channel *) ;
153	void ( * memoff )	(struct channel *) ;
154	void ( * assertgwinon )	(struct channel *) ;
155	void ( * assertmemoff )	(struct channel *) ;
156	unsigned char poller_inhibited ;
157};
158