|
|
1.1 ! root 1: /* $Header: vsioctl.h,v 10.3 86/02/01 15:48:03 tony Rel $ */ ! 2: /* $Header: vsioctl.h,v 10.3 86/02/01 15:48:03 tony Rel $ */ ! 3: ! 4: /* ! 5: * vsio.h - VS100 I/O command definitions ! 6: * ! 7: * Author: Christopher A. Kent ! 8: * Digital Equipment Corporation ! 9: * Western Research Lab ! 10: * Date: Tue Jun 21 1983 ! 11: */ ! 12: ! 13: /* $Log: vsioctl.h,v $ ! 14: * Revision 10.3 86/02/01 15:48:03 tony ! 15: * X Version 10.0 Release 3.0 ! 16: * ! 17: * Revision 10.2 85/11/24 15:12:05 jg ! 18: * add RCS id and mark it released... ! 19: * ! 20: * Revision 10.1 85/11/08 17:38:41 newman ! 21: * X Version 10.0 release ! 22: * ! 23: * Revision 9.1 85/09/04 13:27:15 tony ! 24: * X Version 9.0 release. ! 25: * ! 26: * Revision 1.1 85/06/30 12:01:32 jg ! 27: * Initial revision ! 28: * */ ! 29: ! 30: /* ! 31: * Possible ioctl calls ! 32: */ ! 33: ! 34: #define VSIOINIT _IO(V, 0) /* init the device */ ! 35: #define VSIOSTART _IOW(V, 1, int) /* start microcode */ ! 36: #define VSIOABORT _IO(V, 2) /* abort a command chain */ ! 37: #define VSIOPWRUP _IO(V, 3) /* power-up reset */ ! 38: #define VSIOGETVER _IOR(V, 4, int) /* get rom version */ ! 39: #define VSIOSYNC _IO(V, 6) /* synch with device */ ! 40: #define VSIOBBACTL _IOW(V, 8, int) /* control the BBA */ ! 41: #define VSIOFIBCTL _IOW(V, 9, int) /* lamp on/off */ ! 42: #define VSIOFIBRETRY _IOW(V,10, int) /* fiber retries */ ! 43: #define VSIOGETSTATS _IOR(V,11, vsStats) /* get statistics */ ! 44: #define VSIOGETIOA _IOR(V,13, vsIoAddrAddr)/* get ioreg address */ ! 45: #define VSIOUSERWAIT _IO(V, 15) /* wait for user I/O completion */ ! 46: #define VSIOWAITGO _IOW(V, 16, caddr_t) /* wait then go */ ! 47: ! 48: ! 49: #define VSIO_OFF 0 /* option off */ ! 50: #define VSIO_ON 1 /* option on */ ! 51: ! 52: #define VS_FIB_FINITE 1 /* finite retries */ ! 53: #define VS_FIB_INFINITE 2 /* infinite retries */ ! 54: ! 55: typedef struct _vsStats{ ! 56: int errors; /* count errors */ ! 57: int unsolIntr; /* count unsolicited interrupts */ ! 58: int overruns; /* event queue overruns */ ! 59: int flashes; /* flashes on fiber link */ ! 60: int ignites; /* times turned on */ ! 61: int douses; /* times turned off */ ! 62: int linkErrors; /* link errors */ ! 63: }vsStats; ! 64: ! 65: typedef struct _vsIoAddr { ! 66: short *ioreg; ! 67: short status; ! 68: caddr_t obuff; ! 69: int obufflen; ! 70: int reloc; ! 71: vsEvent *ibuff; ! 72: int iqsize; /* may assume power of 2 */ ! 73: int ihead; /* atomic write */ ! 74: int itail; /* atomic read */ ! 75: vsCursor mouse; /* atomic read/write */ ! 76: vsBox mbox; /* atomic read/write */ ! 77: } vsIoAddr; ! 78: typedef vsIoAddr *vsIoAddrAddr;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.