summaryrefslogtreecommitdiffstats
path: root/sys/gnu/i386/isa/dgreg.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/gnu/i386/isa/dgreg.h')
-rw-r--r--sys/gnu/i386/isa/dgreg.h432
1 files changed, 0 insertions, 432 deletions
diff --git a/sys/gnu/i386/isa/dgreg.h b/sys/gnu/i386/isa/dgreg.h
deleted file mode 100644
index 8dcca02..0000000
--- a/sys/gnu/i386/isa/dgreg.h
+++ /dev/null
@@ -1,432 +0,0 @@
-/*-
- * dgreg.h $FreeBSD$
- *
- * Digiboard driver.
- *
- * Stage 1. "Better than nothing".
- * Stage 2. "Gee, it works!".
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions, and the following disclaimer,
- * without modification, immediately at the beginning of the file.
- * 2. Redistributions of binary code must retain the above copyright
- * notice, this list of conditions, and the following disclaimer,
- * without modification, in the accompanying documentation.
- * 3. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * Written by Sergey Babkin,
- * Joint Stock Commercial Bank "Chelindbank"
- * (Chelyabinsk, Russia)
- * babkin@freebsd.org
- */
-
-#define MAX_DGB_PORTS 32
-
-/* digi.h */
-/* Definitions for DigiBoard ditty(1) command. */
-
-#if !defined(TIOCMODG)
-#define TIOCMODG ('d'<<8) | 250 /* get modem ctrl state */
-#define TIOCMODS ('d'<<8) | 251 /* set modem ctrl state */
-#endif
-
-#if !defined(TIOCMSET)
-#define TIOCMSET ('d'<<8) | 252 /* set modem ctrl state */
-#define TIOCMGET ('d'<<8) | 253 /* set modem ctrl state */
-#endif
-
-#if !defined(TIOCMBIC)
-#define TIOCMBIC ('d'<<8) | 254 /* set modem ctrl state */
-#define TIOCMBIS ('d'<<8) | 255 /* set modem ctrl state */
-#endif
-
-#if !defined(TIOCSDTR)
-#define TIOCSDTR ('e'<<8) | 0 /* set DTR */
-#define TIOCCDTR ('e'<<8) | 1 /* clear DTR */
-#endif
-
-/************************************************************************
- * Ioctl command arguments for DIGI parameters.
- ************************************************************************/
-#define DIGI_GETA ('e'<<8) | 94 /* Read params */
-
-#define DIGI_SETA ('e'<<8) | 95 /* Set params */
-#define DIGI_SETAW ('e'<<8) | 96 /* Drain & set params */
-#define DIGI_SETAF ('e'<<8) | 97 /* Drain, flush & set params */
-
-#define DIGI_GETFLOW ('e'<<8) | 99 /* Get startc/stopc flow */
- /* control characters */
-#define DIGI_SETFLOW ('e'<<8) | 100 /* Set startc/stopc flow */
- /* control characters */
-#define DIGI_GETAFLOW ('e'<<8) | 101 /* Get Aux. startc/stopc */
- /* flow control chars */
-#define DIGI_SETAFLOW ('e'<<8) | 102 /* Set Aux. startc/stopc */
- /* flow control chars */
-
-struct digiflow_struct {
- unsigned char startc; /* flow cntl start char */
- unsigned char stopc; /* flow cntl stop char */
-};
-
-typedef struct digiflow_struct digiflow_t;
-
-
-/************************************************************************
- * Values for digi_flags
- ************************************************************************/
-#define DIGI_IXON 0x0001 /* Handle IXON in the FEP */
-#define DIGI_FAST 0x0002 /* Fast baud rates */
-#define RTSPACE 0x0004 /* RTS input flow control */
-#define CTSPACE 0x0008 /* CTS output flow control */
-#define DSRPACE 0x0010 /* DSR output flow control */
-#define DCDPACE 0x0020 /* DCD output flow control */
-#define DTRPACE 0x0040 /* DTR input flow control */
-#define DIGI_FORCEDCD 0x0100 /* Force carrier */
-#define DIGI_ALTPIN 0x0200 /* Alternate RJ-45 pin config */
-#define DIGI_AIXON 0x0400 /* Aux flow control in fep */
-
-
-/************************************************************************
- * Structure used with ioctl commands for DIGI parameters.
- ************************************************************************/
-struct digi_struct {
- unsigned short digi_flags; /* Flags (see above) */
-};
-
-typedef struct digi_struct digi_t;
-
-/* fep.h */
-
-#define FEP_CSTART 0x400L
-#define FEP_CMAX 0x800L
-#define FEP_ISTART 0x800L
-#define FEP_IMAX 0xC00L
-#define FEP_CIN 0xD10L
-#define FEP_GLOBAL 0xD10L
-#define FEP_EIN 0xD18L
-#define FEPSTAT 0xD20L
-#define CHANSTRUCT 0x1000L
-#define RXTXBUF 0x4000L
-
-
-struct global_data {
- volatile ushort cin;
- volatile ushort cout;
- volatile ushort cstart;
- volatile ushort cmax;
- volatile ushort ein;
- volatile ushort eout;
- volatile ushort istart;
- volatile ushort imax;
-};
-
-
-struct board_chan {
- int filler1;
- int filler2;
- volatile ushort tseg;
- volatile ushort tin;
- volatile ushort tout;
- volatile ushort tmax;
-
- volatile ushort rseg;
- volatile ushort rin;
- volatile ushort rout;
- volatile ushort rmax;
-
- volatile ushort tlow;
- volatile ushort rlow;
- volatile ushort rhigh;
- volatile ushort incr;
-
- volatile ushort etime;
- volatile ushort edelay;
- volatile u_char *dev;
-
- volatile ushort iflag;
- volatile ushort oflag;
- volatile ushort cflag;
- volatile ushort gmask;
-
- volatile ushort col;
- volatile ushort delay;
- volatile ushort imask;
- volatile ushort tflush;
-
- int filler3;
- int filler4;
- int filler5;
- int filler6;
-
- volatile u_char num;
- volatile u_char ract;
- volatile u_char bstat;
- volatile u_char tbusy;
- volatile u_char iempty;
- volatile u_char ilow;
- volatile u_char idata;
- volatile u_char eflag;
-
- volatile u_char tflag;
- volatile u_char rflag;
- volatile u_char xmask;
- volatile u_char xval;
- volatile u_char mstat;
- volatile u_char mchange;
- volatile u_char mint;
- volatile u_char lstat;
-
- volatile u_char mtran;
- volatile u_char orun;
- volatile u_char startca;
- volatile u_char stopca;
- volatile u_char startc;
- volatile u_char stopc;
- volatile u_char vnext;
- volatile u_char hflow;
-
- volatile u_char fillc;
- volatile u_char ochar;
- volatile u_char omask;
-
- u_char filler7;
- u_char filler8[28];
-};
-
-
-#define SRXLWATER 0xE0
-#define SRXHWATER 0xE1
-#define STOUT 0xE2
-#define PAUSETX 0xE3
-#define RESUMETX 0xE4
-#define SAUXONOFFC 0xE6
-#define SENDBREAK 0xE8
-#define SETMODEM 0xE9
-#define SETIFLAGS 0xEA
-#define SONOFFC 0xEB
-#define STXLWATER 0xEC
-#define PAUSERX 0xEE
-#define RESUMERX 0xEF
-#define SETBUFFER 0xF2
-#define SETCOOKED 0xF3
-#define SETHFLOW 0xF4
-#define SETCTRLFLAGS 0xF5
-#define SETVNEXT 0xF6
-
-
-
-#define BREAK_IND 0x01
-#define LOWTX_IND 0x02
-#define EMPTYTX_IND 0x04
-#define DATA_IND 0x08
-#define MODEMCHG_IND 0x20
-
-#define ALL_IND (BREAK_IND|LOWTX_IND|EMPTYTX_IND|DATA_IND|MODEMCHG_IND)
-
-
-#define RTS 0x02
-#define CD 0x08
-#define DSR 0x10
-#define CTS 0x20
-#define RI 0x40
-#define DTR 0x80
-
-/* pcxx.h */
-
-#define FEPCODESEG 0x0200L
-#define FEPCODE 0x2000L
-#define BIOSCODE 0xf800L
-
-#define MISCGLOBAL 0x0C00L
-#define NPORT 0x0C22L
-#define MBOX 0x0C40L
-#define PORTBASE 0x0C90L
-#define BOTWIN 0x100L
-#define TOPWIN 0xFF00L
-
-#define FEPCLR 0x00
-#define FEPMEM 0x02
-#define FEPRST 0x04
-#define FEPINT 0x08
-#define FEPMASK 0x0e
-#define FEPWIN 0x80
-
-#define PCXI 0
-#define PCXE 1
-#define PCXEVE 2
-
-static char * const board_desc[] = {
- "PC/Xi (64K)",
- "PC/Xe (64K)",
- "PC/Xe (8K) ",
-};
-
-#define STARTC 021
-#define STOPC 023
-#define IAIXON 0x2000
-
-
-struct board_info {
- u_char status;
- u_char type;
- u_char altpin;
- ushort numports;
- ushort port;
- u_long membase;
-};
-
-
-#define TXSTOPPED 0x1
-#define LOWWAIT 0x2
-#define EMPTYWAIT 0x4
-
-#define DISABLED 0
-#define ENABLED 1
-#define OFF 0
-#define ON 1
-
-#define FEPTIMEOUT 200000
-#define SERIAL_TYPE_NORMAL 1
-#define SERIAL_TYPE_CALLOUT 2
-#define PCXE_EVENT_HANGUP 1
-
-struct channel {
- u_char unit; /* board unit number */
- u_char omodem; /* FEP output modem status */
- u_char imodem; /* FEP input modem status */
- u_char modemfake; /* Modem values to be forced */
- u_char modem; /* Force values */
- u_char hflow;
- u_char dsr;
- u_char dcd;
- u_char stopc;
- u_char startc;
- u_char stopca;
- u_char startca;
- u_char fepstopc;
- u_char fepstartc;
- u_char fepstopca;
- u_char fepstartca;
- u_char txwin;
- u_char rxwin;
- ushort fepiflag;
- ushort fepcflag;
- ushort fepoflag;
- ushort txbufhead;
- ushort txbufsize;
- ushort rxbufhead;
- ushort rxbufsize;
- int close_delay;
- int count;
- int blocked_open;
- int event;
- int asyncflags;
- uint dev;
- long session;
- long pgrp;
- u_long statusflags;
- u_long c_iflag;
- u_long c_cflag;
- u_long c_lflag;
- u_long c_oflag;
- u_char *txptr;
- u_char *rxptr;
- struct board_info *board;
- struct board_chan *brdchan;
- struct digi_struct digiext;
- struct tty *tty;
- struct termios normal_termios;
- struct termios callout_termios;
- volatile struct global_data *mailbox;
-};
-
-/* flags for configuring */
-
-#define DGBFLAG_ALTPIN 0x0001 /* chande DCD and DCD */
-#define DGBFLAG_NOWIN 0x0002 /* use windowed PC/Xe as non-windowed */
-
-#define DB_RD 0x0001
-#define DB_WR 0x0002
-#define DB_WIN 0x0004
-#define DB_INFO 0x0008
-#define DB_EXCEPT 0x0010
-#define DB_OPEN 0x0100
-#define DB_CLOSE 0x0200
-#define DB_DATA 0x0400
-#define DB_RXDATA 0x0401
-#define DB_TXDATA 0x0402
-#define DB_EVENT 0x0800
-#define DB_MODEM 0x1000
-#define DB_BREAK 0x2000
-#define DB_PARAM 0x4000
-#define DB_FEP 0x8000
-
-/* debugging printout */
-
-#ifdef DGB_DEBUG
-#define DPRINT1(l,a1) (dgbdebug&l ? printf(a1) : 0)
-#define DPRINT2(l,a1,a2) (dgbdebug&l ? printf(a1,a2) : 0)
-#define DPRINT3(l,a1,a2,a3) (dgbdebug&l ? printf(a1,a2,a3) : 0)
-#define DPRINT4(l,a1,a2,a3,a4) (dgbdebug&l ? printf(a1,a2,a3,a4) : 0)
-#define DPRINT5(l,a1,a2,a3,a4,a5) (dgbdebug&l ? printf(a1,a2,a3,a4,a5) : 0)
-#define DPRINT6(l,a1,a2,a3,a4,a5,a6) (dgbdebug&l ? printf(a1,a2,a3,a4,a5,a6) : 0)
-#define DPRINT7(l,a1,a2,a3,a4,a5,a6,a7) (dgbdebug&l ? printf(a1,a2,a3,a4,a5,a6,a7) : 0)
-#else
-#define DPRINT1(l,a1)
-#define DPRINT2(l,a1,a2)
-#define DPRINT3(l,a1,a2,a3)
-#define DPRINT4(l,a1,a2,a3,a4)
-#define DPRINT5(l,a1,a2,a3,a4,a5)
-#define DPRINT6(l,a1,a2,a3,a4,a5,a6)
-#define DPRINT7(l,a1,a2,a3,a4,a5,a6,a7)
-#endif
-
-
- /* These are termios bits as the FEP understands them */
-
-/* c_cflag bits */
-#define FEP_CBAUD 0x00000f
-#define FEP_B0 0x000000 /* hang up */
-#define FEP_B50 0x000001
-#define FEP_B75 0x000002
-#define FEP_B110 0x000003
-#define FEP_B134 0x000004
-#define FEP_B150 0x000005
-#define FEP_B200 0x000006
-#define FEP_B300 0x000007
-#define FEP_B600 0x000008
-#define FEP_B1200 0x000009
-#define FEP_B1800 0x00000a
-#define FEP_B2400 0x00000b
-#define FEP_B4800 0x00000c
-#define FEP_B9600 0x00000d
-#define FEP_B19200 0x00000e
-#define FEP_B38400 0x00000f
-#define FEP_EXTA FEP_B19200
-#define FEP_EXTB FEP_B38400
-#define FEP_CSIZE 0x000030
-#define FEP_CS5 0x000000
-#define FEP_CS6 0x000010
-#define FEP_CS7 0x000020
-#define FEP_CS8 0x000030
-#define FEP_CSTOPB 0x000040
-#define FEP_CREAD 0x000080
-#define FEP_PARENB 0x000100
-#define FEP_PARODD 0x000200
-#define FEP_CLOCAL 0x000800
-#define FEP_FASTBAUD 0x000400
-/* c_iflag bits */
-#define FEP_IGNBRK 0000001
-#define FEP_BRKINT 0000002
-#define FEP_IGNPAR 0000004
-#define FEP_PARMRK 0000010
-#define FEP_INPCK 0000020
-#define FEP_ISTRIP 0000040
-#define FEP_IXON 0002000
-#define FEP_IXANY 0004000
-#define FEP_IXOFF 0010000
-
OpenPOWER on IntegriCloud