Commit f2cf8e25 authored by Alan Cox's avatar Alan Cox Committed by Linus Torvalds

[PATCH] Clean up the old digi support and rescue it

Signed-off-by: default avatarAlan Cox <alan@redhat.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 5dd42c26
...@@ -138,7 +138,7 @@ config CYZ_INTR ...@@ -138,7 +138,7 @@ config CYZ_INTR
config DIGIEPCA config DIGIEPCA
tristate "Digiboard Intelligent Async Support" tristate "Digiboard Intelligent Async Support"
depends on SERIAL_NONSTANDARD && BROKEN_ON_SMP && (!64BIT || BROKEN) depends on SERIAL_NONSTANDARD
---help--- ---help---
This is a driver for Digi International's Xx, Xeve, and Xem series This is a driver for Digi International's Xx, Xeve, and Xem series
of cards which provide multiple serial ports. You would need of cards which provide multiple serial ports. You would need
......
/* Definitions for DigiBoard ditty(1) command. */ /* Definitions for DigiBoard ditty(1) command. */
#if !defined(TIOCMODG) #if !defined(TIOCMODG)
#define TIOCMODG ('d'<<8) | 250 /* get modem ctrl state */ #define TIOCMODG (('d'<<8) | 250) /* get modem ctrl state */
#define TIOCMODS ('d'<<8) | 251 /* set modem ctrl state */ #define TIOCMODS (('d'<<8) | 251) /* set modem ctrl state */
#endif #endif
#if !defined(TIOCMSET) #if !defined(TIOCMSET)
#define TIOCMSET ('d'<<8) | 252 /* set modem ctrl state */ #define TIOCMSET (('d'<<8) | 252) /* set modem ctrl state */
#define TIOCMGET ('d'<<8) | 253 /* set modem ctrl state */ #define TIOCMGET (('d'<<8) | 253) /* set modem ctrl state */
#endif #endif
#if !defined(TIOCMBIC) #if !defined(TIOCMBIC)
#define TIOCMBIC ('d'<<8) | 254 /* set modem ctrl state */ #define TIOCMBIC (('d'<<8) | 254) /* set modem ctrl state */
#define TIOCMBIS ('d'<<8) | 255 /* set modem ctrl state */ #define TIOCMBIS (('d'<<8) | 255) /* set modem ctrl state */
#endif #endif
#if !defined(TIOCSDTR) #if !defined(TIOCSDTR)
#define TIOCSDTR ('e'<<8) | 0 /* set DTR */ #define TIOCSDTR (('e'<<8) | 0) /* set DTR */
#define TIOCCDTR ('e'<<8) | 1 /* clear DTR */ #define TIOCCDTR (('e'<<8) | 1) /* clear DTR */
#endif #endif
/************************************************************************ /************************************************************************
* Ioctl command arguments for DIGI parameters. * Ioctl command arguments for DIGI parameters.
************************************************************************/ ************************************************************************/
#define DIGI_GETA ('e'<<8) | 94 /* Read params */ #define DIGI_GETA (('e'<<8) | 94) /* Read params */
#define DIGI_SETA ('e'<<8) | 95 /* Set params */ #define DIGI_SETA (('e'<<8) | 95) /* Set params */
#define DIGI_SETAW ('e'<<8) | 96 /* Drain & set params */ #define DIGI_SETAW (('e'<<8) | 96) /* Drain & set params */
#define DIGI_SETAF ('e'<<8) | 97 /* Drain, flush & set params */ #define DIGI_SETAF (('e'<<8) | 97) /* Drain, flush & set params */
#define DIGI_GETFLOW ('e'<<8) | 99 /* Get startc/stopc flow */ #define DIGI_GETFLOW (('e'<<8) | 99) /* Get startc/stopc flow */
/* control characters */ /* control characters */
#define DIGI_SETFLOW ('e'<<8) | 100 /* Set startc/stopc flow */ #define DIGI_SETFLOW (('e'<<8) | 100) /* Set startc/stopc flow */
/* control characters */ /* control characters */
#define DIGI_GETAFLOW ('e'<<8) | 101 /* Get Aux. startc/stopc */ #define DIGI_GETAFLOW (('e'<<8) | 101) /* Get Aux. startc/stopc */
/* flow control chars */ /* flow control chars */
#define DIGI_SETAFLOW ('e'<<8) | 102 /* Set Aux. startc/stopc */ #define DIGI_SETAFLOW (('e'<<8) | 102) /* Set Aux. startc/stopc */
/* flow control chars */ /* flow control chars */
#define DIGI_GETINFO ('e'<<8) | 103 /* Fill in digi_info */ #define DIGI_GETINFO (('e'<<8) | 103) /* Fill in digi_info */
#define DIGI_POLLER ('e'<<8) | 104 /* Turn on/off poller */ #define DIGI_POLLER (('e'<<8) | 104) /* Turn on/off poller */
#define DIGI_INIT ('e'<<8) | 105 /* Allow things to run. */ #define DIGI_INIT (('e'<<8) | 105) /* Allow things to run. */
struct digiflow_struct struct digiflow_struct
{ {
......
...@@ -13,88 +13,88 @@ ...@@ -13,88 +13,88 @@
struct global_data struct global_data
{ {
volatile ushort cin; u16 cin;
volatile ushort cout; u16 cout;
volatile ushort cstart; u16 cstart;
volatile ushort cmax; u16 cmax;
volatile ushort ein; u16 ein;
volatile ushort eout; u16 eout;
volatile ushort istart; u16 istart;
volatile ushort imax; u16 imax;
}; };
struct board_chan struct board_chan
{ {
int filler1; u32 filler1;
int filler2; u32 filler2;
volatile ushort tseg; u16 tseg;
volatile ushort tin; u16 tin;
volatile ushort tout; u16 tout;
volatile ushort tmax; u16 tmax;
volatile ushort rseg; u16 rseg;
volatile ushort rin; u16 rin;
volatile ushort rout; u16 rout;
volatile ushort rmax; u16 rmax;
volatile ushort tlow; u16 tlow;
volatile ushort rlow; u16 rlow;
volatile ushort rhigh; u16 rhigh;
volatile ushort incr; u16 incr;
volatile ushort etime; u16 etime;
volatile ushort edelay; u16 edelay;
volatile unchar *dev; unchar *dev;
volatile ushort iflag; u16 iflag;
volatile ushort oflag; u16 oflag;
volatile ushort cflag; u16 cflag;
volatile ushort gmask; u16 gmask;
volatile ushort col; u16 col;
volatile ushort delay; u16 delay;
volatile ushort imask; u16 imask;
volatile ushort tflush; u16 tflush;
int filler3; u32 filler3;
int filler4; u32 filler4;
int filler5; u32 filler5;
int filler6; u32 filler6;
volatile unchar num; u8 num;
volatile unchar ract; u8 ract;
volatile unchar bstat; u8 bstat;
volatile unchar tbusy; u8 tbusy;
volatile unchar iempty; u8 iempty;
volatile unchar ilow; u8 ilow;
volatile unchar idata; u8 idata;
volatile unchar eflag; u8 eflag;
volatile unchar tflag; u8 tflag;
volatile unchar rflag; u8 rflag;
volatile unchar xmask; u8 xmask;
volatile unchar xval; u8 xval;
volatile unchar mstat; u8 mstat;
volatile unchar mchange; u8 mchange;
volatile unchar mint; u8 mint;
volatile unchar lstat; u8 lstat;
volatile unchar mtran; u8 mtran;
volatile unchar orun; u8 orun;
volatile unchar startca; u8 startca;
volatile unchar stopca; u8 stopca;
volatile unchar startc; u8 startc;
volatile unchar stopc; u8 stopc;
volatile unchar vnext; u8 vnext;
volatile unchar hflow; u8 hflow;
volatile unchar fillc; u8 fillc;
volatile unchar ochar; u8 ochar;
volatile unchar omask; u8 omask;
unchar filler7; u8 filler7;
unchar filler8[28]; u8 filler8[28];
}; };
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -85,73 +85,73 @@ static char *board_desc[] = ...@@ -85,73 +85,73 @@ static char *board_desc[] =
struct channel struct channel
{ {
long magic; long magic;
unchar boardnum; unsigned char boardnum;
unchar channelnum; unsigned char channelnum;
unchar omodem; /* FEP output modem status */ unsigned char omodem; /* FEP output modem status */
unchar imodem; /* FEP input modem status */ unsigned char imodem; /* FEP input modem status */
unchar modemfake; /* Modem values to be forced */ unsigned char modemfake; /* Modem values to be forced */
unchar modem; /* Force values */ unsigned char modem; /* Force values */
unchar hflow; unsigned char hflow;
unchar dsr; unsigned char dsr;
unchar dcd; unsigned char dcd;
unchar m_rts ; /* The bits used in whatever FEP */ unsigned char m_rts ; /* The bits used in whatever FEP */
unchar m_dcd ; /* is indiginous to this board to */ unsigned char m_dcd ; /* is indiginous to this board to */
unchar m_dsr ; /* represent each of the physical */ unsigned char m_dsr ; /* represent each of the physical */
unchar m_cts ; /* handshake lines */ unsigned char m_cts ; /* handshake lines */
unchar m_ri ; unsigned char m_ri ;
unchar m_dtr ; unsigned char m_dtr ;
unchar stopc; unsigned char stopc;
unchar startc; unsigned char startc;
unchar stopca; unsigned char stopca;
unchar startca; unsigned char startca;
unchar fepstopc; unsigned char fepstopc;
unchar fepstartc; unsigned char fepstartc;
unchar fepstopca; unsigned char fepstopca;
unchar fepstartca; unsigned char fepstartca;
unchar txwin; unsigned char txwin;
unchar rxwin; unsigned char rxwin;
ushort fepiflag; unsigned short fepiflag;
ushort fepcflag; unsigned short fepcflag;
ushort fepoflag; unsigned short fepoflag;
ushort txbufhead; unsigned short txbufhead;
ushort txbufsize; unsigned short txbufsize;
ushort rxbufhead; unsigned short rxbufhead;
ushort rxbufsize; unsigned short rxbufsize;
int close_delay; int close_delay;
int count; int count;
int blocked_open; int blocked_open;
ulong event; unsigned long event;
int asyncflags; int asyncflags;
uint dev; uint dev;
ulong statusflags; unsigned long statusflags;
ulong c_iflag; unsigned long c_iflag;
ulong c_cflag; unsigned long c_cflag;
ulong c_lflag; unsigned long c_lflag;
ulong c_oflag; unsigned long c_oflag;
unchar *txptr; unsigned char *txptr;
unchar *rxptr; unsigned char *rxptr;
unchar *tmp_buf; unsigned char *tmp_buf;
struct board_info *board; struct board_info *board;
volatile struct board_chan *brdchan; struct board_chan *brdchan;
struct digi_struct digiext; struct digi_struct digiext;
struct tty_struct *tty; struct tty_struct *tty;
wait_queue_head_t open_wait; wait_queue_head_t open_wait;
wait_queue_head_t close_wait; wait_queue_head_t close_wait;
struct work_struct tqueue; struct work_struct tqueue;
volatile struct global_data *mailbox; struct global_data *mailbox;
}; };
struct board_info struct board_info
{ {
unchar status; unsigned char status;
unchar type; unsigned char type;
unchar altpin; unsigned char altpin;
ushort numports; unsigned short numports;
unchar *port; unsigned long port;
unchar *membase; unsigned long membase;
unchar __iomem *re_map_port; unsigned char __iomem *re_map_port;
unchar *re_map_membase; unsigned char *re_map_membase;
ulong memory_seg; unsigned long memory_seg;
void ( * memwinon ) (struct board_info *, unsigned int) ; void ( * memwinon ) (struct board_info *, unsigned int) ;
void ( * memwinoff ) (struct board_info *, unsigned int) ; void ( * memwinoff ) (struct board_info *, unsigned int) ;
void ( * globalwinon ) (struct channel *) ; void ( * globalwinon ) (struct channel *) ;
...@@ -160,6 +160,6 @@ struct board_info ...@@ -160,6 +160,6 @@ struct board_info
void ( * memoff ) (struct channel *) ; void ( * memoff ) (struct channel *) ;
void ( * assertgwinon ) (struct channel *) ; void ( * assertgwinon ) (struct channel *) ;
void ( * assertmemoff ) (struct channel *) ; void ( * assertmemoff ) (struct channel *) ;
unchar poller_inhibited ; unsigned char poller_inhibited ;
}; };
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment