Loading drivers/char/Kconfig +1 −1 Original line number Diff line number Diff line Loading @@ -291,7 +291,7 @@ config SX config RIO tristate "Specialix RIO system support" depends on SERIAL_NONSTANDARD && !64BIT depends on SERIAL_NONSTANDARD help This is a driver for the Specialix RIO, a smart serial card which drives an outboard box that can support up to 128 ports. Product Loading drivers/char/rio/host.h +0 −9 Original line number Diff line number Diff line Loading @@ -33,12 +33,6 @@ #ifndef __rio_host_h__ #define __rio_host_h__ #ifdef SCCS_LABELS #ifndef lint static char *_host_h_sccs_ = "@(#)host.h 1.2"; #endif #endif /* ** the host structure - one per host card in the system. */ Loading Loading @@ -77,9 +71,6 @@ struct Host { #define RC_STARTUP 1 #define RC_RUNNING 2 #define RC_STUFFED 3 #define RC_SOMETHING 4 #define RC_SOMETHING_NEW 5 #define RC_SOMETHING_ELSE 6 #define RC_READY 7 #define RUN_STATE 7 /* Loading drivers/char/rio/rioboot.c +1 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ #include <linux/slab.h> #include <linux/termios.h> #include <linux/serial.h> #include <linux/vmalloc.h> #include <asm/semaphore.h> #include <linux/generic_serial.h> #include <linux/errno.h> Loading drivers/char/rio/rioctrl.c +28 −15 Original line number Diff line number Diff line Loading @@ -1394,12 +1394,15 @@ int RIOPreemptiveCmd(struct rio_info *p, struct Port *PortP, u8 Cmd) return RIO_FAIL; } if (((int) ((char) PortP->InUse) == -1) || !(CmdBlkP = RIOGetCmdBlk())) { rio_dprintk(RIO_DEBUG_CTRL, "Cannot allocate command block for command %d on port %d\n", Cmd, PortP->PortNum); if ((PortP->InUse == (typeof(PortP->InUse))-1) || !(CmdBlkP = RIOGetCmdBlk())) { rio_dprintk(RIO_DEBUG_CTRL, "Cannot allocate command block " "for command %d on port %d\n", Cmd, PortP->PortNum); return RIO_FAIL; } rio_dprintk(RIO_DEBUG_CTRL, "Command blk %p - InUse now %d\n", CmdBlkP, PortP->InUse); rio_dprintk(RIO_DEBUG_CTRL, "Command blk %p - InUse now %d\n", CmdBlkP, PortP->InUse); PktCmdP = (struct PktCmd_M *)&CmdBlkP->Packet.data[0]; Loading @@ -1425,38 +1428,46 @@ int RIOPreemptiveCmd(struct rio_info *p, struct Port *PortP, u8 Cmd) switch (Cmd) { case MEMDUMP: rio_dprintk(RIO_DEBUG_CTRL, "Queue MEMDUMP command blk %p (addr 0x%x)\n", CmdBlkP, (int) SubCmd.Addr); rio_dprintk(RIO_DEBUG_CTRL, "Queue MEMDUMP command blk %p " "(addr 0x%x)\n", CmdBlkP, (int) SubCmd.Addr); PktCmdP->SubCommand = MEMDUMP; PktCmdP->SubAddr = SubCmd.Addr; break; case FCLOSE: rio_dprintk(RIO_DEBUG_CTRL, "Queue FCLOSE command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue FCLOSE command blk %p\n", CmdBlkP); break; case READ_REGISTER: rio_dprintk(RIO_DEBUG_CTRL, "Queue READ_REGISTER (0x%x) command blk %p\n", (int) SubCmd.Addr, CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue READ_REGISTER (0x%x) " "command blk %p\n", (int) SubCmd.Addr, CmdBlkP); PktCmdP->SubCommand = READ_REGISTER; PktCmdP->SubAddr = SubCmd.Addr; break; case RESUME: rio_dprintk(RIO_DEBUG_CTRL, "Queue RESUME command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue RESUME command blk %p\n", CmdBlkP); break; case RFLUSH: rio_dprintk(RIO_DEBUG_CTRL, "Queue RFLUSH command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue RFLUSH command blk %p\n", CmdBlkP); CmdBlkP->PostFuncP = RIORFlushEnable; break; case SUSPEND: rio_dprintk(RIO_DEBUG_CTRL, "Queue SUSPEND command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue SUSPEND command blk %p\n", CmdBlkP); break; case MGET: rio_dprintk(RIO_DEBUG_CTRL, "Queue MGET command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue MGET command blk %p\n", CmdBlkP); break; case MSET: case MBIC: case MBIS: CmdBlkP->Packet.data[4] = (char) PortP->ModemLines; rio_dprintk(RIO_DEBUG_CTRL, "Queue MSET/MBIC/MBIS command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue MSET/MBIC/MBIS command " "blk %p\n", CmdBlkP); break; case WFLUSH: Loading @@ -1465,12 +1476,14 @@ int RIOPreemptiveCmd(struct rio_info *p, struct Port *PortP, u8 Cmd) ** allowed then we should not bother sending any more to the ** RTA. */ if ((int) ((char) PortP->WflushFlag) == (int) -1) { rio_dprintk(RIO_DEBUG_CTRL, "Trashed WFLUSH, WflushFlag about to wrap!"); if (PortP->WflushFlag == (typeof(PortP->WflushFlag))-1) { rio_dprintk(RIO_DEBUG_CTRL, "Trashed WFLUSH, " "WflushFlag about to wrap!"); RIOFreeCmdBlk(CmdBlkP); return (RIO_FAIL); } else { rio_dprintk(RIO_DEBUG_CTRL, "Queue WFLUSH command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue WFLUSH command " "blk %p\n", CmdBlkP); CmdBlkP->PostFuncP = RIOWFlushMark; } break; Loading drivers/char/rio/rioioctl.h +5 −51 Original line number Diff line number Diff line Loading @@ -33,10 +33,6 @@ #ifndef __rioioctl_h__ #define __rioioctl_h__ #ifdef SCCS_LABELS static char *_rioioctl_h_sccs_ = "@(#)rioioctl.h 1.2"; #endif /* ** RIO device driver - user ioctls and associated structures. */ Loading @@ -44,55 +40,13 @@ static char *_rioioctl_h_sccs_ = "@(#)rioioctl.h 1.2"; struct portStats { int port; int gather; ulong txchars; ulong rxchars; ulong opens; ulong closes; ulong ioctls; unsigned long txchars; unsigned long rxchars; unsigned long opens; unsigned long closes; unsigned long ioctls; }; #define rIOC ('r'<<8) #define TCRIOSTATE (rIOC | 1) #define TCRIOXPON (rIOC | 2) #define TCRIOXPOFF (rIOC | 3) #define TCRIOXPCPS (rIOC | 4) #define TCRIOXPRINT (rIOC | 5) #define TCRIOIXANYON (rIOC | 6) #define TCRIOIXANYOFF (rIOC | 7) #define TCRIOIXONON (rIOC | 8) #define TCRIOIXONOFF (rIOC | 9) #define TCRIOMBIS (rIOC | 10) #define TCRIOMBIC (rIOC | 11) #define TCRIOTRIAD (rIOC | 12) #define TCRIOTSTATE (rIOC | 13) /* ** 15.10.1998 ARG - ESIL 0761 part fix ** Add RIO ioctls for manipulating RTS and CTS flow control, (as LynxOS ** appears to not support hardware flow control). */ #define TCRIOCTSFLOWEN (rIOC | 14) /* enable CTS flow control */ #define TCRIOCTSFLOWDIS (rIOC | 15) /* disable CTS flow control */ #define TCRIORTSFLOWEN (rIOC | 16) /* enable RTS flow control */ #define TCRIORTSFLOWDIS (rIOC | 17) /* disable RTS flow control */ /* ** 09.12.1998 ARG - ESIL 0776 part fix ** Definition for 'RIOC' also appears in daemon.h, so we'd better do a ** #ifndef here first. ** 'RIO_QUICK_CHECK' also #define'd here as this ioctl is now ** allowed to be used by customers. ** ** 05.02.1999 ARG - ** This is what I've decied to do with ioctls etc., which are intended to be ** invoked from users applications : ** Anything that needs to be defined here will be removed from daemon.h, that ** way it won't end up having to be defined/maintained in two places. The only ** consequence of this is that this file should now be #include'd by daemon.h ** ** 'stats' ioctls now #define'd here as they are to be used by customers. */ #define RIOC ('R'<<8)|('i'<<16)|('o'<<24) #define RIO_QUICK_CHECK (RIOC | 105) Loading Loading
drivers/char/Kconfig +1 −1 Original line number Diff line number Diff line Loading @@ -291,7 +291,7 @@ config SX config RIO tristate "Specialix RIO system support" depends on SERIAL_NONSTANDARD && !64BIT depends on SERIAL_NONSTANDARD help This is a driver for the Specialix RIO, a smart serial card which drives an outboard box that can support up to 128 ports. Product Loading
drivers/char/rio/host.h +0 −9 Original line number Diff line number Diff line Loading @@ -33,12 +33,6 @@ #ifndef __rio_host_h__ #define __rio_host_h__ #ifdef SCCS_LABELS #ifndef lint static char *_host_h_sccs_ = "@(#)host.h 1.2"; #endif #endif /* ** the host structure - one per host card in the system. */ Loading Loading @@ -77,9 +71,6 @@ struct Host { #define RC_STARTUP 1 #define RC_RUNNING 2 #define RC_STUFFED 3 #define RC_SOMETHING 4 #define RC_SOMETHING_NEW 5 #define RC_SOMETHING_ELSE 6 #define RC_READY 7 #define RUN_STATE 7 /* Loading
drivers/char/rio/rioboot.c +1 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ #include <linux/slab.h> #include <linux/termios.h> #include <linux/serial.h> #include <linux/vmalloc.h> #include <asm/semaphore.h> #include <linux/generic_serial.h> #include <linux/errno.h> Loading
drivers/char/rio/rioctrl.c +28 −15 Original line number Diff line number Diff line Loading @@ -1394,12 +1394,15 @@ int RIOPreemptiveCmd(struct rio_info *p, struct Port *PortP, u8 Cmd) return RIO_FAIL; } if (((int) ((char) PortP->InUse) == -1) || !(CmdBlkP = RIOGetCmdBlk())) { rio_dprintk(RIO_DEBUG_CTRL, "Cannot allocate command block for command %d on port %d\n", Cmd, PortP->PortNum); if ((PortP->InUse == (typeof(PortP->InUse))-1) || !(CmdBlkP = RIOGetCmdBlk())) { rio_dprintk(RIO_DEBUG_CTRL, "Cannot allocate command block " "for command %d on port %d\n", Cmd, PortP->PortNum); return RIO_FAIL; } rio_dprintk(RIO_DEBUG_CTRL, "Command blk %p - InUse now %d\n", CmdBlkP, PortP->InUse); rio_dprintk(RIO_DEBUG_CTRL, "Command blk %p - InUse now %d\n", CmdBlkP, PortP->InUse); PktCmdP = (struct PktCmd_M *)&CmdBlkP->Packet.data[0]; Loading @@ -1425,38 +1428,46 @@ int RIOPreemptiveCmd(struct rio_info *p, struct Port *PortP, u8 Cmd) switch (Cmd) { case MEMDUMP: rio_dprintk(RIO_DEBUG_CTRL, "Queue MEMDUMP command blk %p (addr 0x%x)\n", CmdBlkP, (int) SubCmd.Addr); rio_dprintk(RIO_DEBUG_CTRL, "Queue MEMDUMP command blk %p " "(addr 0x%x)\n", CmdBlkP, (int) SubCmd.Addr); PktCmdP->SubCommand = MEMDUMP; PktCmdP->SubAddr = SubCmd.Addr; break; case FCLOSE: rio_dprintk(RIO_DEBUG_CTRL, "Queue FCLOSE command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue FCLOSE command blk %p\n", CmdBlkP); break; case READ_REGISTER: rio_dprintk(RIO_DEBUG_CTRL, "Queue READ_REGISTER (0x%x) command blk %p\n", (int) SubCmd.Addr, CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue READ_REGISTER (0x%x) " "command blk %p\n", (int) SubCmd.Addr, CmdBlkP); PktCmdP->SubCommand = READ_REGISTER; PktCmdP->SubAddr = SubCmd.Addr; break; case RESUME: rio_dprintk(RIO_DEBUG_CTRL, "Queue RESUME command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue RESUME command blk %p\n", CmdBlkP); break; case RFLUSH: rio_dprintk(RIO_DEBUG_CTRL, "Queue RFLUSH command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue RFLUSH command blk %p\n", CmdBlkP); CmdBlkP->PostFuncP = RIORFlushEnable; break; case SUSPEND: rio_dprintk(RIO_DEBUG_CTRL, "Queue SUSPEND command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue SUSPEND command blk %p\n", CmdBlkP); break; case MGET: rio_dprintk(RIO_DEBUG_CTRL, "Queue MGET command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue MGET command blk %p\n", CmdBlkP); break; case MSET: case MBIC: case MBIS: CmdBlkP->Packet.data[4] = (char) PortP->ModemLines; rio_dprintk(RIO_DEBUG_CTRL, "Queue MSET/MBIC/MBIS command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue MSET/MBIC/MBIS command " "blk %p\n", CmdBlkP); break; case WFLUSH: Loading @@ -1465,12 +1476,14 @@ int RIOPreemptiveCmd(struct rio_info *p, struct Port *PortP, u8 Cmd) ** allowed then we should not bother sending any more to the ** RTA. */ if ((int) ((char) PortP->WflushFlag) == (int) -1) { rio_dprintk(RIO_DEBUG_CTRL, "Trashed WFLUSH, WflushFlag about to wrap!"); if (PortP->WflushFlag == (typeof(PortP->WflushFlag))-1) { rio_dprintk(RIO_DEBUG_CTRL, "Trashed WFLUSH, " "WflushFlag about to wrap!"); RIOFreeCmdBlk(CmdBlkP); return (RIO_FAIL); } else { rio_dprintk(RIO_DEBUG_CTRL, "Queue WFLUSH command blk %p\n", CmdBlkP); rio_dprintk(RIO_DEBUG_CTRL, "Queue WFLUSH command " "blk %p\n", CmdBlkP); CmdBlkP->PostFuncP = RIOWFlushMark; } break; Loading
drivers/char/rio/rioioctl.h +5 −51 Original line number Diff line number Diff line Loading @@ -33,10 +33,6 @@ #ifndef __rioioctl_h__ #define __rioioctl_h__ #ifdef SCCS_LABELS static char *_rioioctl_h_sccs_ = "@(#)rioioctl.h 1.2"; #endif /* ** RIO device driver - user ioctls and associated structures. */ Loading @@ -44,55 +40,13 @@ static char *_rioioctl_h_sccs_ = "@(#)rioioctl.h 1.2"; struct portStats { int port; int gather; ulong txchars; ulong rxchars; ulong opens; ulong closes; ulong ioctls; unsigned long txchars; unsigned long rxchars; unsigned long opens; unsigned long closes; unsigned long ioctls; }; #define rIOC ('r'<<8) #define TCRIOSTATE (rIOC | 1) #define TCRIOXPON (rIOC | 2) #define TCRIOXPOFF (rIOC | 3) #define TCRIOXPCPS (rIOC | 4) #define TCRIOXPRINT (rIOC | 5) #define TCRIOIXANYON (rIOC | 6) #define TCRIOIXANYOFF (rIOC | 7) #define TCRIOIXONON (rIOC | 8) #define TCRIOIXONOFF (rIOC | 9) #define TCRIOMBIS (rIOC | 10) #define TCRIOMBIC (rIOC | 11) #define TCRIOTRIAD (rIOC | 12) #define TCRIOTSTATE (rIOC | 13) /* ** 15.10.1998 ARG - ESIL 0761 part fix ** Add RIO ioctls for manipulating RTS and CTS flow control, (as LynxOS ** appears to not support hardware flow control). */ #define TCRIOCTSFLOWEN (rIOC | 14) /* enable CTS flow control */ #define TCRIOCTSFLOWDIS (rIOC | 15) /* disable CTS flow control */ #define TCRIORTSFLOWEN (rIOC | 16) /* enable RTS flow control */ #define TCRIORTSFLOWDIS (rIOC | 17) /* disable RTS flow control */ /* ** 09.12.1998 ARG - ESIL 0776 part fix ** Definition for 'RIOC' also appears in daemon.h, so we'd better do a ** #ifndef here first. ** 'RIO_QUICK_CHECK' also #define'd here as this ioctl is now ** allowed to be used by customers. ** ** 05.02.1999 ARG - ** This is what I've decied to do with ioctls etc., which are intended to be ** invoked from users applications : ** Anything that needs to be defined here will be removed from daemon.h, that ** way it won't end up having to be defined/maintained in two places. The only ** consequence of this is that this file should now be #include'd by daemon.h ** ** 'stats' ioctls now #define'd here as they are to be used by customers. */ #define RIOC ('R'<<8)|('i'<<16)|('o'<<24) #define RIO_QUICK_CHECK (RIOC | 105) Loading