Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

[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
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -138,7 +138,7 @@ config CYZ_INTR

config DIGIEPCA
	tristate "Digiboard Intelligent Async Support"
	depends on SERIAL_NONSTANDARD && BROKEN_ON_SMP && (!64BIT || BROKEN)
	depends on SERIAL_NONSTANDARD
	---help---
	  This is a driver for Digi International's Xx, Xeve, and Xem series
	  of cards which provide multiple serial ports. You would need
+19 −19
Original line number Diff line number Diff line
/*          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	*/
#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	*/
#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 */
#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		*/
#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_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_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 */
#define	DIGI_GETFLOW	(('e'<<8) | 99)		/* Get startc/stopc flow */
						/* control characters 	 */
#define	DIGI_SETFLOW	('e'<<8) | 100		/* Set startc/stopc flow */
#define	DIGI_SETFLOW	(('e'<<8) | 100)	/* Set startc/stopc flow */
						/* 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 	 */
#define	DIGI_SETAFLOW	('e'<<8) | 102		/* Set Aux. startc/stopc */
#define	DIGI_SETAFLOW	(('e'<<8) | 102)	/* Set Aux. startc/stopc */
						/* flow control chars	 */

#define	DIGI_GETINFO	('e'<<8) | 103		/* Fill in digi_info */
#define	DIGI_POLLER	('e'<<8) | 104		/* Turn on/off poller */
#define	DIGI_INIT	('e'<<8) | 105		/* Allow things to run. */
#define	DIGI_GETINFO	(('e'<<8) | 103)	/* Fill in digi_info */
#define	DIGI_POLLER	(('e'<<8) | 104)	/* Turn on/off poller */
#define	DIGI_INIT	(('e'<<8) | 105)	/* Allow things to run. */

struct	digiflow_struct 
{
+77 −77
Original line number Diff line number Diff line
@@ -13,88 +13,88 @@

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;
	u16 cin;
	u16 cout;
	u16 cstart;
	u16 cmax;
	u16 ein;
	u16 eout;
	u16 istart;
	u16 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 unchar *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 unchar num;
	volatile unchar ract;
	volatile unchar bstat;
	volatile unchar tbusy;
	volatile unchar iempty;
	volatile unchar ilow;
	volatile unchar idata;
	volatile unchar eflag;
	
	volatile unchar tflag;
	volatile unchar rflag;
	volatile unchar xmask;
	volatile unchar xval;
	volatile unchar mstat;
	volatile unchar mchange;
	volatile unchar mint;
	volatile unchar lstat;

	volatile unchar mtran;
	volatile unchar orun;
	volatile unchar startca;
	volatile unchar stopca;
	volatile unchar startc;
	volatile unchar stopc;
	volatile unchar vnext;
	volatile unchar hflow;

	volatile unchar fillc;
	volatile unchar ochar;
	volatile unchar omask;

	unchar filler7;
	unchar filler8[28];
	u32 filler1;
	u32 filler2;
	u16 tseg;
	u16 tin;
	u16 tout;
	u16 tmax;

	u16 rseg;
	u16 rin;
	u16 rout;
	u16 rmax;

	u16 tlow;
	u16 rlow;
	u16 rhigh;
	u16 incr;

	u16 etime;
	u16 edelay;
	unchar *dev;

	u16 iflag;
	u16 oflag;
	u16 cflag;
	u16 gmask;

	u16 col;
	u16 delay;
	u16 imask;
	u16 tflush;

	u32 filler3;
	u32 filler4;
	u32 filler5;
	u32 filler6;

	u8 num;
	u8 ract;
	u8 bstat;
	u8 tbusy;
	u8 iempty;
	u8 ilow;
	u8 idata;
	u8 eflag;

	u8 tflag;
	u8 rflag;
	u8 xmask;
	u8 xval;
	u8 mstat;
	u8 mchange;
	u8 mint;
	u8 lstat;

	u8 mtran;
	u8 orun;
	u8 startca;
	u8 stopca;
	u8 startc;
	u8 stopc;
	u8 vnext;
	u8 hflow;

	u8 fillc;
	u8 ochar;
	u8 omask;

	u8 filler7;
	u8 filler8[28];
};