|
|
1.1 root 1: /* (-lgl
2: * COHERENT Version 4.0
3: * Copyright 1984, 1992 by Mark Williams Company.
4: * All rights reserved. May not be copied without permission.
5: -lgl) */
6: /*
7: * /usr/include/sys/io.h
8: *
9: * I/O template.
10: *
11: * Revised: Wed Apr 7 15:09:53 1993 CDT
12: */
13:
14: #ifndef __SYS_IO_H__
15: #define __SYS_IO_H__
16:
17: #include <common/feature.h>
18: #include <common/__paddr.h>
19: #include <sys/types.h>
20:
21: /*
22: * Structure used to store parameters for I/O.
23: */
24: typedef struct io {
25: int io_seg; /* Space */
26: unsigned io_ioc; /* Count */
27: #if _I386
28: off_t io_seek; /* Seek posiion */
29: union {
30: caddr_t vbase; /* Virtual base */
31: __paddr_t pbase; /* Physical base */
32: } io;
33: #else
34: fsize_t io_seek; /* Seek posiion */
35: char *io_base; /* Virtual base */
36: __paddr_t io_phys; /* Physical base */
37: #endif
38: short io_flag; /* Flags: 0, IONDLY */
39: } IO;
40:
41: /*
42: * Types of space I/O operation is being performed from.
43: */
44: #define IOSYS 0 /* System */
45: #define IOUSR 1 /* User */
46: #define IOPHY 2 /* Physical */
47:
48: /*
49: * No delay if results are not immediately available. IONDLY is the funky
50: * internal name for O_NDELAY and IONONBLOCK is the version for O_NONBLOCK.
51: */
52: #define IONDLY 8
53: #define IONONBLOCK 16
54:
55: #endif /* ! defined (__SYS_IO_H__) */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.