123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- #ifndef _SCC_H
- #define _SCC_H
- #define PA0HZP 0x00
- #define EAGLE 0x01
- #define PC100 0x02
- #define PRIMUS 0x04
- #define DRSI 0x08
- #define BAYCOM 0x10
- enum SCC_ioctl_cmds {
- SIOCSCCRESERVED = SIOCDEVPRIVATE,
- SIOCSCCCFG,
- SIOCSCCINI,
- SIOCSCCCHANINI,
- SIOCSCCSMEM,
- SIOCSCCGKISS,
- SIOCSCCSKISS,
- SIOCSCCGSTAT,
- SIOCSCCCAL
- };
- enum L1_params {
- PARAM_DATA,
- PARAM_TXDELAY,
- PARAM_PERSIST,
- PARAM_SLOTTIME,
- PARAM_TXTAIL,
- PARAM_FULLDUP,
- PARAM_SOFTDCD,
- PARAM_MUTE,
- PARAM_DTR,
- PARAM_RTS,
- PARAM_SPEED,
- PARAM_ENDDELAY,
- PARAM_GROUP,
- PARAM_IDLE,
- PARAM_MIN,
- PARAM_MAXKEY,
- PARAM_WAIT,
- PARAM_MAXDEFER,
- PARAM_TX,
- PARAM_HWEVENT = 31,
- PARAM_RETURN = 255
- };
- enum FULLDUP_modes {
- KISS_DUPLEX_HALF,
- KISS_DUPLEX_FULL,
- KISS_DUPLEX_LINK,
- KISS_DUPLEX_OPTIMA
- };
- #define TIMER_OFF 65535U
- #define NO_SUCH_PARAM 65534U
- enum HWEVENT_opts {
- HWEV_DCD_ON,
- HWEV_DCD_OFF,
- HWEV_ALL_SENT
- };
- #define RXGROUP 0100
- #define TXGROUP 0200
- enum CLOCK_sources {
- CLK_DPLL,
- CLK_EXTERNAL,
- CLK_DIVIDER,
-
- CLK_BRG
-
- };
- enum TX_state {
- TXS_IDLE,
- TXS_BUSY,
- TXS_ACTIVE,
- TXS_NEWFRAME,
- TXS_IDLE2,
- TXS_WAIT,
- TXS_TIMEOUT
- };
- typedef unsigned long io_port;
- struct scc_stat {
- long rxints;
- long txints;
- long exints;
- long spints;
- long txframes;
- long rxframes;
- long rxerrs;
- long txerrs;
-
- unsigned int nospace;
- unsigned int rx_over;
- unsigned int tx_under;
- unsigned int tx_state;
- int tx_queued;
- unsigned int maxqueue;
- unsigned int bufsize;
- };
- struct scc_modem {
- long speed;
- char clocksrc;
- char nrz;
- };
- struct scc_kiss_cmd {
- int command;
- unsigned param;
- };
- struct scc_hw_config {
- io_port data_a;
- io_port ctrl_a;
- io_port data_b;
- io_port ctrl_b;
- io_port vector_latch;
- io_port special;
- int irq;
- long clock;
- char option;
- char brand;
- char escc;
- };
- struct scc_mem_config {
- unsigned int dummy;
- unsigned int bufsize;
- };
- struct scc_calibrate {
- unsigned int time;
- unsigned char pattern;
- };
- #endif
|