xref: /original-bsd/sys/sys/conf.h (revision 18f6d767)
1 /*	conf.h	6.1	83/07/29	*/
2 
3 /*
4  * Declaration of block device
5  * switch. Each entry (row) is
6  * the only link between the
7  * main unix code and the driver.
8  * The initialization of the
9  * device switches is in the
10  * file conf.c.
11  */
12 struct bdevsw
13 {
14 	int	(*d_open)();
15 	int	(*d_close)();
16 	int	(*d_strategy)();
17 	int	(*d_dump)();
18 	int	(*d_psize)();
19 	int	d_flags;
20 };
21 #ifdef KERNEL
22 struct	bdevsw bdevsw[];
23 #endif
24 
25 /*
26  * Character device switch.
27  */
28 struct cdevsw
29 {
30 	int	(*d_open)();
31 	int	(*d_close)();
32 	int	(*d_read)();
33 	int	(*d_write)();
34 	int	(*d_ioctl)();
35 	int	(*d_stop)();
36 	int	(*d_reset)();
37 	struct tty *d_ttys;
38 	int	(*d_select)();
39 	int	(*d_mmap)();
40 };
41 #ifdef KERNEL
42 struct	cdevsw cdevsw[];
43 #endif
44 
45 /*
46  * tty line control switch.
47  */
48 struct linesw
49 {
50 	int	(*l_open)();
51 	int	(*l_close)();
52 	int	(*l_read)();
53 	int	(*l_write)();
54 	int	(*l_ioctl)();
55 	int	(*l_rint)();
56 	int	(*l_rend)();
57 	int	(*l_meta)();
58 	int	(*l_start)();
59 	int	(*l_modem)();
60 };
61 #ifdef KERNEL
62 struct	linesw linesw[];
63 #endif
64 
65 /*
66  * Swap device information
67  */
68 struct swdevt
69 {
70 	dev_t	sw_dev;
71 	int	sw_freed;
72 	int	sw_nblks;
73 };
74 #ifdef KERNEL
75 struct	swdevt swdevt[];
76 #endif
77