OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [rc203soc/] [sw/] [uClinux/] [drivers/] [char/] [pcxx.h] - Blame information for rev 1777

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1626 jcastillo
#define FEPCODESEG  0x0200L
2
#define FEPCODE     0x2000L
3
#define BIOSCODE    0xf800L
4
 
5
#define MISCGLOBAL  0x0C00L
6
#define NPORT       0x0C22L
7
#define MBOX        0x0C40L
8
#define PORTBASE    0x0C90L
9
 
10
#define FEPCLR      0x00
11
#define FEPMEM      0x02
12
#define FEPRST      0x04
13
#define FEPINT      0x08
14
#define FEPMASK     0x0e
15
#define FEPWIN      0x80
16
 
17
/* Maximum Number of Boards supported */
18
#define MAX_DIGI_BOARDS 4
19
 
20
#define PCXX_NUM_TYPES  4
21
 
22
#define PCXI            0
23
#define PCXE            1
24
#define PCXEVE          2
25
#define PCXEM           3
26
 
27
static char *board_desc[] = {
28
        "PC/Xi",
29
        "PC/Xe",
30
        "PC/Xeve",
31
        "PC/Xem",
32
};
33
 
34
static char *board_mem[] = {
35
        "64k",
36
        "64k",
37
        "8k",
38
        "32k",
39
};
40
#define STARTC      021
41
#define STOPC       023
42
#define IAIXON      0x2000
43
 
44
 
45
struct board_info       {
46
        unchar status;
47
        unchar type;
48
        unchar altpin;
49
        ushort numports;
50
        ushort port;
51
        ulong  membase;
52
        ushort first_minor;
53
};
54
 
55
 
56
#define TXSTOPPED   0x01
57
#define LOWWAIT         0x02
58
#define EMPTYWAIT       0x04
59
#define RXSTOPPED       0x08
60
#define TXBUSY          0x10
61
 
62
#define DISABLED   0
63
#define ENABLED    1
64
#define OFF        0
65
#define ON         1
66
 
67
#define FEPTIMEOUT 200000  
68
#define SERIAL_TYPE_NORMAL      1
69
#define SERIAL_TYPE_CALLOUT     2
70
#define PCXE_EVENT_HANGUP   1
71
#define PCXX_MAGIC      0x5c6df104L
72
 
73
struct channel {
74
                                                        /* --------- Board/channel information ---------- */
75
        long                                            magic;
76
        unchar                                          boardnum;
77
        unchar                                          channelnum;
78
        uint                                            dev;
79
        long                                            session;
80
        long                                            pgrp;
81
        struct tty_struct                       *tty;
82
        struct board_info                       *board;
83
        volatile struct board_chan      *brdchan;
84
        volatile struct global_data *mailbox;
85
        int                                                     asyncflags;
86
        int                                                     count;
87
        int                                                     blocked_open;
88
        int                                                     close_delay;
89
        int                                                     event;
90
        struct wait_queue                       *open_wait;
91
        struct wait_queue                       *close_wait;
92
        struct tq_struct                        tqueue;
93
                                                        /* ------------ Async control data ------------- */
94
        unchar                                          modemfake;      /* Modem values to be forced */
95
        unchar                                          modem;          /* Force values */
96
        ulong                                           statusflags;
97
        unchar                                          omodem;         /* FEP output modem status */
98
        unchar                                          imodem;         /* FEP input modem status */
99
        unchar                                          hflow;
100
        unchar                                          dsr;
101
        unchar                                          dcd;
102
        unchar                                          stopc;
103
        unchar                                          startc;
104
        unchar                                          stopca;
105
        unchar                                          startca;
106
        unchar                                          fepstopc;
107
        unchar                                          fepstartc;
108
        unchar                                          fepstopca;
109
        unchar                                          fepstartca;
110
        ushort                                          fepiflag;
111
        ushort                                          fepcflag;
112
        ushort                                          fepoflag;
113
                                                        /* ---------- Transmit/receive system ---------- */
114
        unchar                                          txwin;
115
        unchar                                          rxwin;
116
        ushort                                          txbufsize;
117
        ushort                                          rxbufsize;
118
        unchar                                          *txptr;
119
        unchar                                          *rxptr;
120
        unchar                                          *tmp_buf;               /* Temp buffer */
121
                                                        /* ---- Termios data ---- */
122
        ulong                                           c_iflag;
123
        ulong                                           c_cflag;
124
        ulong                                           c_lflag;
125
        ulong                                           c_oflag;
126
        struct termios                          normal_termios;
127
        struct termios                          callout_termios;
128
        struct digi_struct                      digiext;
129
        ulong                                           dummy[8];
130
};

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.