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