cdev_mouse_init(NWSKBD,wskbd), /* 29: /dev/kbd XXX */ cdev_mouse_init(NWSMOUSE,wsmouse), /* 30: /dev/mouse XXX */ cdev_lpt_init(NLPT,lpt), /* 31: parallel printer */ cdev_scanner_init(NSS,ss), /* 32: SCSI scanner */ cdev_uk_init(NUK,uk), /* 33: SCSI unknown */ cdev_random_init(1,random), /* 34: random data source */ cdev_pf_init(NPF, pf), /* 35: packet filter */ cdev_disk_init(NWD,wd), /* 36: ST506/ESDI/IDE disk */ cdev_disk_init(NFD,fd), /* 37: Floppy disk */ cdev_tty_init(NCY,cy), /* 38: Cyclom serial port */ cdev_ksyms_init(NKSYMS,ksyms), /* 39: Kernel symbols device */ cdev_spkr_init(NSPKR,spkr), /* 40: PC speaker */ cdev_midi_init(NMIDI,midi), /* 41: MIDI I/O */ cdev_midi_init(NSEQUENCER,sequencer), /* 42: sequencer I/O */ cdev_disk_init(NRAID,raid), /* 43: RAIDframe disk driver */ cdev_notdef(), /* 44 */ cdev_usb_init(NUSB,usb), /* 45: USB controller */ cdev_usbdev_init(NUHID,uhid), /* 46: USB generic HID */ cdev_ulpt_init(NULPT,ulpt), /* 47: USB printer */ cdev_usbdev_init(NUGEN,ugen), /* 48: USB generic driver */ cdev_tty_init(NUCOM, ucom), /* 49: USB tty */ cdev_systrace_init(NSYSTRACE,systrace), /* 50 system call tracing */ #ifdef XFS cdev_xfs_init(NXFS,xfs_dev), /* 51: xfs communication device */ #else cdev_notdef(), /* 51 */ #endif #ifdef USER_PCICONF cdev_pci_init(NPCI,pci), /* 52: PCI user */ #else cdev_notdef(),
bdev_notdef(), /* 12 */ bdev_lkm_dummy(), /* 13 */ bdev_lkm_dummy(), /* 14 */ bdev_lkm_dummy(), /* 15 */ bdev_lkm_dummy(), /* 16 */ bdev_lkm_dummy(), /* 17 */ bdev_lkm_dummy(), /* 18 */ }; int nblkdev = nitems(bdevsw); struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 3 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_notdef(), /* 7 */ cdev_disk_init(NSD,sd), /* 8: SCSI disk */ cdev_disk_init(NCD,cd), /* 9: SCSI CD-ROM */ cdev_mm_init(NNVRAM,nvram), /* 10: /dev/nvramX */ cdev_notdef(), /* 11: */ cdev_tty_init(NDART,dart), /* 12: on-board serial (tty[ab]) */ cdev_notdef(), /* 13 */ cdev_notdef(), /* 14 */ cdev_notdef(), /* 15 */ cdev_notdef(), /* 16 */ cdev_notdef(), /* 17: was: concatenated disk */ cdev_disk_init(NRD,rd), /* 18: ramdisk disk */
bdev_lkm_dummy(), /* 21 */ bdev_lkm_dummy(), /* 22 */ bdev_lkm_dummy(), /* 23 */ bdev_lkm_dummy(), /* 24 */ bdev_disk_init(NRAID,raid), /* 25: RAIDframe disk driver */ }; int nblkdev = sizeof(bdevsw) / sizeof(bdevsw[0]); struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_tty_init(NKBD+NSUNKBD,kd), /* 1: Sun keyboard/display */ cdev_ctty_init(1,ctty), /* 2: controlling terminal */ cdev_mm_init(1,mm), /* 3: /dev/{null,mem,kmem,...} */ cdev_ses_init(NSES,ses), /* 4: SCSI SES/SAF-TE */ cdev_notdef(), /* 5: tapemaster tape */ cdev_notdef(), /* 6: systech/versatec */ cdev_swap_init(1,sw), /* 7: /dev/drum (swap pseudo-device) */ cdev_notdef(), /* 8: Archive QIC-11 tape */ cdev_notdef(), /* 9: SMD disk on Xylogics 450/451 */ cdev_notdef(), /* 10: systech multi-terminal board */ cdev_notdef(), /* 11: DES encryption chip */ cdev_tty_init(NZSTTY,zs), /* 12: Zilog 8530 serial port */ cdev_mouse_init(NMS+NSUNMS,ms), /* 13: /dev/mouse */ cdev_notdef(), /* 14: cgone */ cdev_notdef(), /* 15: sun /dev/winNNN */ cdev_log_init(1,log), /* 16: /dev/klog */ cdev_disk_init(NSD,sd), /* 17: SCSI disk */ cdev_tape_init(NST,st), /* 18: SCSI tape */ cdev_ch_init(NCH,ch), /* 19: SCSI autochanger */ cdev_tty_init(NPTY,pts), /* 20: pseudo-tty slave */
bdev_notdef(), /* 17 */ bdev_disk_init(NCD,cd), /* 18: SCSI CD-ROM */ bdev_notdef(), /* 19 */ bdev_notdef(), /* 20 */ bdev_notdef(), /* 21 */ bdev_notdef(), /* 22 */ bdev_notdef(), /* 23 */ bdev_notdef(), /* 24 */ bdev_notdef(), /* 25 was: RAIDframe disk driver */ }; int nblkdev = nitems(bdevsw); struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_notdef(), /* 1: tapemaster tape */ cdev_ctty_init(1,ctty), /* 2: controlling terminal */ cdev_mm_init(1,mm), /* 3: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 4 */ cdev_notdef(), /* 5: tapemaster tape */ cdev_notdef(), /* 6: systech/versatec */ cdev_notdef(), /* 7 was /dev/drum */ cdev_notdef(), /* 8: Archive QIC-11 tape */ cdev_notdef(), /* 9: SMD disk on Xylogics 450/451 */ cdev_notdef(), /* 10: systech multi-terminal board */ cdev_notdef(), /* 11: DES encryption chip */ cdev_tty_init(NZSTTY,zs), /* 12: Zilog 8530 serial port */ cdev_notdef(), /* 13: /dev/mouse */ cdev_notdef(), /* 14: cgone */ cdev_notdef(), /* 15: sun /dev/winNNN */ cdev_log_init(1,log), /* 16: /dev/klog */
#include "pci.h" cdev_decl(pci); #endif #include "pf.h" #include "hotplug.h" #include "vscsi.h" #include "pppx.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_disk_init(NWD,wd), /* 3: ST506/ESDI/IDE disk */ cdev_notdef(), /* 4 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 5: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 6: pseudo-tty master */ cdev_log_init(1,log), /* 7: /dev/klog */ cdev_tty_init(NCOM,com), /* 8: serial port */ cdev_notdef(), /* 9: floppy disk */ cdev_notdef(), /* 10 */ cdev_lkm_dummy(), /* 11: Sony CD-ROM */ cdev_notdef(), /* 12: frame buffers, etc. */ cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_lpt_init(NLPT,lpt), /* 16: parallel printer */ cdev_ch_init(NCH,ch), /* 17: SCSI autochanger */ cdev_notdef(), /* 18: was: concatenated disk driver */ cdev_notdef(), /* 19 */
#include "bpfilter.h" #include "tun.h" #include "pf.h" #include "systrace.h" #include "vscsi.h" #include "pppx.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 3 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_mdev_init(NSRAM,sram), /* 7: /dev/sramX */ cdev_disk_init(NSD,sd), /* 8: SCSI disk */ cdev_disk_init(NCD,cd), /* 9: SCSI CD-ROM */ cdev_mdev_init(NNVRAM,nvram), /* 10: /dev/nvramX */ cdev_mdev_init(NFLASH,flash), /* 11: /dev/flashX */ cdev_tty_init(NZS,zs), /* 12: SCC serial (tty[a-d]) */ cdev_tty_init(NCL,cl), /* 13: CL-CD2400 serial (tty0[0-3]) */ cdev_tty_init(NDART,dart), /* 14: MC68681 serial (ttyd[0-1]) */ cdev_notdef(), /* 15 */ cdev_notdef(), /* 16 */ cdev_notdef(), /* 17: was: concatenated disk */ cdev_disk_init(NRD,rd), /* 18: ramdisk device */
bdev_notdef(), /* 12 */ bdev_notdef(), /* 13 */ bdev_notdef(), /* 14 */ bdev_notdef(), /* 15 */ bdev_notdef(), /* 16 */ bdev_notdef(), /* 17 */ bdev_notdef(), /* 18 */ }; int nblkdev = nitems(bdevsw); struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 3 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_notdef(), /* 7 */ cdev_disk_init(NSD,sd), /* 8: SCSI disk */ cdev_disk_init(NCD,cd), /* 9: SCSI CD-ROM */ cdev_lcd_init(NLCD,lcd), /* 10: /dev/lcd */ cdev_notdef(), /* 11 */ cdev_tty_init(NSIOTTY,sio), /* 12: on-board UART (ttya) */ cdev_wsdisplay_init(NWSDISPLAY, /* 13: frame buffers, etc. */ wsdisplay), cdev_mouse_init(NWSKBD,wskbd), /* 14: keyboard */ cdev_mouse_init(NWSMOUSE, /* 15: mouse */ wsmouse), cdev_mouse_init(NWSMUX,wsmux), /* 16: ws multiplexor */
#define cdev_bpf_init(c,n) { \ dev_init(c,n,open), dev_init(c,n,close), dev_init(c,n,read), \ dev_init(c,n,write), dev_init(c,n,ioctl), (dev_type_stop((*))) enodev, \ (dev_type_reset((*))) enodev, 0, dev_init(c,n,select), \ (dev_type_map((*))) enodev, 0 } struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_swap_init(1,sw), /* 3: /dev/drum (swap pseudo-device) */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_notdef(), /* 7 */ cdev_ldisk_init(NSD,sd), /* 8: scsi disk */ cdev_notdef(), /* 9 */ cdev_fb_init(1,fb), /* 10: frame buffer */ cdev_notdef(), /* 11 */ cdev_tty_init(NSIO,sio), /* 12: built-in single-port serial */ cdev_tty_init(NBMC,bmc), /* 13: console terminal emulator */ cdev_kbd_init(2,kbd), /* 14: keyboard */ cdev_notdef(), /* 15 */ cdev_notdef(), /* 16 */ cdev_notdef(), /* 17 */ cdev_notdef(), /* 18 */ cdev_vn_init(NVN,vn), /* 19: vnode disk */ cdev_tape_init(NST,st), /* 20: scsi tape */ cdev_fd_init(1,fd), /* 21: file descriptor pseudo-dev */ cdev_bpf_init(NBPFILTER,bpf), /* 22: berkeley packet filter */
#include "pf.h" #include "hotplug.h" #include "gpio.h" #include "amdmsr.h" #include "vscsi.h" #include "pppx.h" #include "fuse.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_disk_init(NWD,wd), /* 3: ST506/ESDI/IDE disk */ cdev_notdef(), /* 4 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 5: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 6: pseudo-tty master */ cdev_log_init(1,log), /* 7: /dev/klog */ cdev_tty_init(NCOM,com), /* 8: serial port */ cdev_notdef(), /* 9: was floppy disk */ cdev_notdef(), /* 10 */ cdev_notdef(), /* 11 */ cdev_wsdisplay_init(NWSDISPLAY, /* 12: frame buffers, etc. */ wsdisplay), cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_lpt_init(NLPT,lpt), /* 16: parallel printer */ cdev_ch_init(NCH,ch), /* 17: SCSI autochanger */ cdev_notdef(), /* 18: was: concatenated disk driver */
bdev_lkm_dummy(), /* 21 */ bdev_lkm_dummy(), /* 22 */ bdev_lkm_dummy(), /* 23 */ bdev_lkm_dummy(), /* 24 */ bdev_disk_init(NRAID,raid), /* 25: RAIDframe disk driver */ }; int nblkdev = sizeof(bdevsw) / sizeof(bdevsw[0]); /* Character devices */ struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_tty_init(NKBD+NSUNKBD,kd), /* 1: Sun keyboard/display */ cdev_ctty_init(1,ctty), /* 2: controlling terminal */ cdev_mm_init(1,mm), /* 3: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 4: was PROM console */ cdev_notdef(), /* 5: tapemaster tape */ cdev_notdef(), /* 6: systech/versatec */ cdev_swap_init(1,sw), /* 7: /dev/drum (swap pseudo-device) */ cdev_notdef(), /* 8: Archive QIC-11 tape */ cdev_disk_init(NXY,xy), /* 9: SMD disk on Xylogics 450/451 */ cdev_notdef(), /* 10: systech multi-terminal board */ cdev_notdef(), /* 11: DES encryption chip */ cdev_tty_init(NZSTTY,zs), /* 12: Zilog 8530 serial port */ cdev_mouse_init(NMS+NSUNMS,ms), /* 13: Sun mouse */ cdev_notdef(), /* 14: cgone */ cdev_notdef(), /* 15: /dev/winXXX */ cdev_log_init(1,log), /* 16: /dev/klog */ cdev_disk_init(NSD,sd), /* 17: SCSI disk */ cdev_tape_init(NST,st), /* 18: SCSI tape */ cdev_disk_init(NVND,vnd), /* 19: vnode disk driver */
cdev_log_init(1,log), /* 7: /dev/klog */ cdev_tty_init(NCOM,com), /* 8: serial port */ cdev_disk_init(NFD,fd), /* 9: floppy disk */ cdev_tape_init(NWT,wt), /* 10: QIC-02/QIC-36 tape */ cdev_lkm_dummy(), /* 11: Sony CD-ROM */ cdev_wsdisplay_init(NWSDISPLAY, /* 12: frame buffers, etc. */ wsdisplay), cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_lpt_init(NLPT,lpt), /* 16: parallel printer */ cdev_ch_init(NCH,ch), /* 17: SCSI autochanger */ cdev_disk_init(NCCD,ccd), /* 18: concatenated disk driver */ cdev_ss_init(NSS,ss), /* 19: SCSI scanner */ cdev_uk_init(NUK,uk), /* 20: unknown SCSI */ cdev_notdef(), /* 21 */ cdev_fd_init(1,filedesc), /* 22: file descriptor pseudo-device */ cdev_bpftun_init(NBPFILTER,bpf),/* 23: Berkeley packet filter */ cdev_ses_init(NSES,ses), /* 24: SES/SAF-TE SCSI */ #if 0 cdev_ocis_init(NPCMCIA,pcmcia), /* 25: PCMCIA Bus */ #else cdev_notdef(), /* 25 */ #endif cdev_notdef(), /* 26 */ cdev_spkr_init(NSPKR,spkr), /* 27: PC speaker */ cdev_lkm_init(NLKM,lkm), /* 28: loadable module driver */ cdev_lkm_dummy(), /* 29 */ cdev_lkm_dummy(), /* 30 */ cdev_lkm_dummy(), /* 31 */ cdev_lkm_dummy(), /* 32 */
#include "pf.h" #include "systrace.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_swap_init(1,sw), /* 3: /dev/drum (swap pseudo-device) */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_tape_init(NCT,ct), /* 7: cs80 cartridge tape */ cdev_disk_init(NSD,sd), /* 8: SCSI disk */ cdev_disk_init(NHD,hd), /* 9: HPIB disk */ cdev_notdef(), /* 10 */ cdev_ppi_init(NPPI,ppi), /* 11: printer/plotter interface */ cdev_tty_init(NDCA,dca), /* 12: built-in single-port serial */ cdev_notdef(), /* 13 */ cdev_notdef(), /* 14 */ cdev_tty_init(NDCM,dcm), /* 15: 4-port serial */ cdev_tape_init(NMT,mt), /* 16: magnetic reel tape */ cdev_notdef(), /* 17 */ cdev_disk_init(NCD,cd), /* 18: SCSI CD-ROM */ cdev_disk_init(NVND,vnd), /* 19: vnode disk driver */ cdev_tape_init(NST,st), /* 20: SCSI tape */ cdev_fd_init(1,filedesc), /* 21: file descriptor pseudo-device */ cdev_bpf_init(NBPFILTER,bpf), /* 22: Berkeley packet filter */ cdev_tun_init(NTUN,tun), /* 23: network tunnel */ cdev_lkm_init(NLKM,lkm), /* 24: loadable module driver */ cdev_lkm_dummy(), /* 25 */
#include "gpio.h" #else #define NGPIO 0 #endif #ifdef CONF_HAVE_SPKR #include "spkr.h" #else #define NSPKR 0 #endif struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 3 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_fd_init(1,filedesc), /* 7: file descriptor pseudo-device */ cdev_ksyms_init(NKSYMS,ksyms), /* 8: Kernel symbols device */ cdev_lpt_init(NLPT,lpt), /* 9: parallel printer */ cdev_lkm_dummy(), /* 10: */ cdev_lkm_dummy(), /* 11: */ cdev_tty_init(NCOM,com), /* 12: serial port */ cdev_gpio_init(NGPIO,gpio), /* 13: GPIO interface */ cdev_notdef(), /* 14 was alternate serial port */ cdev_lkm_dummy(), /* 15: */ cdev_disk_init(NWD,wd), /* 16: ST506/ESDI/IDE disk */ cdev_lkm_dummy(), /* 17: */ cdev_disk_init(NRD,rd), /* 18: ram disk driver */
struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_swap_init(1,sw), /* 1: /dev/drum (swap pseudo-device) */ cdev_ctty_init(1,ctty), /* 2: controlling terminal */ cdev_mm_init(1,mm), /* 3: /dev/{null,mem,kmem,...} */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_fd_init(1,filedesc), /* 7: file descriptor pseudo-dev */ cdev_disk_init(NCD,cd), /* 8: SCSI CD */ cdev_disk_init(NSD,sd), /* 9: SCSI disk */ cdev_tape_init(NST,st), /* 10: SCSI tape */ cdev_disk_init(NVND,vnd), /* 11: vnode disk */ cdev_bpftun_init(NBPFILTER,bpf),/* 12: berkeley packet filter */ cdev_notdef(), /* 13: */ cdev_notdef(), /* 14: */ cdev_notdef(), /* 15: */ cdev_lpt_init(NLPT,lpt), /* 16: Parallel printer interface */ cdev_tty_init(NCOM,com), /* 17: 16C450 serial interface */ cdev_disk_init(NWD,wd), /* 18: ST506/ESDI/IDE disk */ cdev_notdef(), /* 19: */ cdev_tty_init(NPTY,pts), /* 20: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 21: pseudo-tty master */ cdev_disk_init(NRD,rd), /* 22: ramdisk device */ cdev_disk_init(NCCD,ccd), /* 23: concatenated disk driver */ cdev_notdef(), /* 24: */ cdev_wsdisplay_init(NWSDISPLAY, wsdisplay), /* 25: */ cdev_mouse_init(NWSKBD, wskbd), /* 26: */ cdev_mouse_init(NWSMOUSE, wsmouse), /* 27: */ cdev_mouse_init(NWSMUX, wsmux), /* 28: */
struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_disk_init(NWD,wd), /* 3: st506/rll/esdi/ide disk */ cdev_swap_init(1,sw), /* 4: /dev/drum (swap pseudo-device) */ cdev_tty_init(NPTY,pts), /* 5: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 6: pseudo-tty master */ cdev_log_init(1,log), /* 7: /dev/klog */ cdev_tty_init(NCOM,com), /* 8: serial communications ports */ cdev_disk_init(NFD,Fd), /* 9: floppy disk */ cdev_tape_init(NWT,wt), /* 10: QIC-24/60/120/150 cartridge tape */ cdev_disk_init(NXD,xd), /* 11: temp alt st506/rll/esdi/ide disk */ cdev_pc_init(1,pc), /* 12: real console */ cdev_notdef(), /* 13 */ cdev_bpf_init(NBPFILTER,bpf), /* 14: berkeley packet filter */ }; int nchrdev = sizeof (cdevsw) / sizeof (cdevsw[0]); int mem_no = 2; /* major device number of memory special file */ /* * Swapdev is a fake device implemented * in sw.c used only internally to get to swstrategy. * It cannot be provided to the users, because the * swstrategy routine munches the b_dev and b_blkno entries * before calling the appropriate driver. This would horribly * confuse, e.g. the hashing routines. Instead, /dev/drum is * provided as a character (raw) device.
#include "pf.h" #include "systrace.h" #include "vscsi.h" #include "pppx.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_tty_init(NDZ,dz), /* 1: DZ11 */ cdev_ctty_init(1,ctty), /* 2: controlling terminal */ cdev_mm_init(1,mm), /* 3: /dev/{null,mem,kmem,...} */ cdev_disk_init(NHP,hp), /* 4: Massbuss disk */ cdev_notdef(), /* 5 */ cdev_plotter_init(NVP,vp), /* 6: Versatec plotter */ cdev_notdef(), /* 7 was /dev/drum */ cdev_cnstore_init(NCFL,cfl), /* 8: 11/780 console floppy */ cdev_disk_init(NRA,ra), /* 9: MSCP disk interface */ cdev_plotter_init(NVA,va), /* 10: Benson-Varian plotter */ cdev_disk_init(NRK,rk), /* 11: RK06/07 */ cdev_tty_init(NDH,dh), /* 12: DH-11/DM-11 */ cdev_disk_init(NUP,up), /* 13: SC-21/SC-31 */ cdev_tape_init(NTE,tm), /* 14: TM11/TE10 */ cdev_lp_init(NLP,lp), /* 15: LP-11 line printer */ cdev_tape_init(NTS,ts), /* 16: TS11 */ cdev_tape_init(NTJ,ut), /* 17: TU45 */ cdev_lp_init(NCT,ct), /* 18: phototypesetter interface */ cdev_tape_init(NMU,mu), /* 19: TU78 */ cdev_tty_init(NPTY,pts), /* 20: pseudo-tty slave */
cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_swap_init(1,sw), /* 3: /dev/drum (swap pseudo-device) */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_bpftun_init(NTUN,tun), /* 7: network tunnel */ cdev_disk_init(NSD,sd), /* 8: SCSI disk */ cdev_disk_init(NVND,vnd), /* 9: vnode disk driver */ cdev_fd_init(1,filedesc), /* 10: file descriptor pseudo-dev */ cdev_bpftun_init(NBPFILTER,bpf),/* 11: Berkeley packet filter */ cdev_tape_init(NST,st), /* 12: SCSI tape */ cdev_disk_init(NCD,cd), /* 13: SCSI CD-ROM */ cdev_ch_init(NCH,ch), /* 14: SCSI autochanger */ cdev_notdef(), /* 15 */ cdev_lkm_init(NLKM,lkm), /* 16: loadable module driver */ cdev_lkm_dummy(), /* 17 */ cdev_lkm_dummy(), /* 18 */ cdev_lkm_dummy(), /* 19 */ cdev_lkm_dummy(), /* 20 */ cdev_lkm_dummy(), /* 21 */ cdev_lkm_dummy(), /* 22 */ cdev_lkm_dummy(), /* 23 */ cdev_audio_init(NAUDIO,audio), /* 24: generic audio I/O */ cdev_wsdisplay_init(NWSDISPLAY, wsdisplay), /* 25: frame buffers, etc. */ cdev_tty_init(NCOM,com), /* 26: ns16550 UART */ cdev_disk_init(NCCD,ccd), /* 27: concatenated disk driver */ cdev_disk_init(NMD,md), /* 28: memory disk driver */ cdev_mouse_init(NWSKBD, wskbd), /* 29: keyboards */
cdev_ptc_init(NPTY,ptc), /* 6: pseudo-tty master */ cdev_log_init(1,log), /* 7: /dev/klog */ cdev_tty_init(NCOM,com), /* 8: serial port */ cdev_disk_init(NFDC,fd), /* 9: floppy disk */ cdev_tape_init(NWT,wt), /* 10: QIC-02/QIC-36 tape */ cdev_disk_init(NSCD,scd), /* 11: Sony CD-ROM */ cdev_pc_init(NPC,pc), /* 12: PC console */ cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_lpt_init(NLPT,lpt), /* 16: parallel printer */ cdev_ch_init(NCH,ch), /* 17: SCSI autochanger */ cdev_disk_init(NCCD,ccd), /* 18: concatenated disk driver */ cdev_scanner_init(NSS,ss), /* 19: SCSI scanner */ cdev_uk_init(NUK,uk), /* 20: SCSI unknown */ cdev_notdef(), /* 21: */ cdev_fd_init(1,filedesc), /* 22: file descriptor pseudo-device */ cdev_bpftun_init(NBPFILTER,bpf),/* 23: Berkeley packet filter */ cdev_disk_init(NMD,md), /* 24: memory disk driver */ cdev_notdef(), /* 25 */ cdev_joy_init(NJOY,joy), /* 26: joystick */ cdev_spkr_init(NSPKR,spkr), /* 27: PC speaker */ cdev_lkm_init(NLKM,lkm), /* 28: loadable module driver */ cdev_lkm_dummy(), /* 29 */ cdev_lkm_dummy(), /* 30 */ cdev_lkm_dummy(), /* 31 */ cdev_lkm_dummy(), /* 32 */ cdev_lkm_dummy(), /* 33 */ cdev_lkm_dummy(), /* 34 */ cdev_lkm_dummy(), /* 35 */ cdev_lkm_dummy(), /* 36 */
#include "uhid.h" cdev_decl(uhid); #include "ugen.h" cdev_decl(ugen); #include "ulpt.h" cdev_decl(ulpt); struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: control tty */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_tty_init(NPTY,pts), /* 3: pseudo tty slave */ cdev_ptc_init(NPTY,ptc), /* 4: pseudo tty master */ cdev_log_init(1,log), /* 5: /dev/klog */ cdev_swap_init(1,sw), /* 6: /dev/drum pseudo device */ cdev_notdef(), /* 7: Openfirmware console */ cdev_notdef(), /* 8: Openfirmware disk */ cdev_notdef(), /* 9: Openfirmware RTC */ cdev_bpftun_init(NBPFILTER,bpf),/* 10: Berkeley packet filter */ cdev_bpftun_init(NTUN,tun), /* 11: network tunnel */ cdev_tty_init(NZSTTY,zs), /* 12: Zilog 8350 serial port */ cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_ch_init(NCH,ch), /* 16: SCSI autochanger */ cdev_scanner_init(NSS,ss), /* 17: SCSI scanners */ cdev_uk_init(NUK,uk), /* 18: SCSI unknown */ cdev_lkm_dummy(), /* 19: */ cdev_lkm_dummy(), /* 20: */ cdev_ipf_init(NIPFILTER,ipl), /* 21: ip-filter device */ cdev_tty_init(NITE,ite), /* 22: console terminal emulator */
#include "wsmux.h" #include "pf.h" #include "systrace.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_swap_init(1,sw), /* 3: /dev/drum (swap pseudo-device) */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_notdef(), /* 7 */ cdev_notdef(), /* 8 */ cdev_notdef(), /* 9 */ cdev_notdef(), /* 10 was GRF */ cdev_notdef(), /* 11 was ITE */ cdev_tty_init(NZSTTY,zs), /* 12: 2 mac serial ports -- BG*/ cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_notdef(), /* 16 */ cdev_ch_init(NCH,ch), /* 17: SCSI autochanger */ cdev_disk_init(NRD,rd), /* 18: ramdisk device */ cdev_disk_init(NVND,vnd), /* 19: vnode disk driver */ cdev_notdef(), /* 20 */ cdev_fd_init(1,filedesc), /* 21: file descriptor pseudo-device */ cdev_bpf_init(NBPFILTER,bpf), /* 22: Berkeley packet filter */
#include "pci.h" cdev_decl(pci); #endif #include "bthub.h" #include "systrace.h" #include "hotplug.h" #include "vscsi.h" #include "pppx.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 3 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_tun_init(NTUN,tun), /* 7: network tunnel */ cdev_disk_init(NSD,sd), /* 8: SCSI disk */ cdev_disk_init(NVND,vnd), /* 9: vnode disk driver */ cdev_fd_init(1,filedesc), /* 10: file descriptor pseudo-dev */ cdev_bpf_init(NBPFILTER,bpf), /* 11: Berkeley packet filter */ cdev_tape_init(NST,st), /* 12: SCSI tape */ cdev_disk_init(NCD,cd), /* 13: SCSI CD-ROM */ cdev_ch_init(NCH,ch), /* 14: SCSI autochanger */ cdev_tty_init(NSCC,scc), /* 15: scc 8530 serial interface */ cdev_lkm_init(NLKM,lkm), /* 16: loadable module driver */ cdev_lkm_dummy(), /* 17 */ cdev_lkm_dummy(), /* 18 */
#include "pf.h" #include "hotplug.h" #include "gpio.h" #include "vscsi.h" #include "pppx.h" #include "fuse.h" #include "pvbus.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_disk_init(NWD,wd), /* 3: ST506/ESDI/IDE disk */ cdev_notdef(), /* 4 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 5: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 6: pseudo-tty master */ cdev_log_init(1,log), /* 7: /dev/klog */ cdev_tty_init(NCOM,com), /* 8: serial port */ cdev_disk_init(NFD,fd), /* 9: floppy disk */ cdev_vmm_init(NVMM,vmm), /* 10 vmm */ cdev_notdef(), /* 11: Sony CD-ROM */ cdev_wsdisplay_init(NWSDISPLAY, /* 12: frame buffers, etc. */ wsdisplay), cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_lpt_init(NLPT,lpt), /* 16: parallel printer */ cdev_ch_init(NCH,ch), /* 17: SCSI autochanger */ cdev_notdef(), /* 18: was: concatenated disk driver */
#include "ipfilter.h" #include "rnd.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_disk_init(NWD,wd), /* 3: ST506/ESDI/IDE disk */ cdev_swap_init(1,sw), /* 4: /dev/drum (swap pseudo-device) */ cdev_tty_init(NPTY,pts), /* 5: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 6: pseudo-tty master */ cdev_log_init(1,log), /* 7: /dev/klog */ cdev_tty_init(NCOM,com), /* 8: serial port */ cdev_notdef(), /* 9 (was floppy disk) */ cdev_tty_init(NSCIF,scif), /* 10: serial with FIFO */ cdev_tty_init(NSCI,sci), /* 11: serial */ cdev_notdef(), /* 12: */ cdev_disk_init(NSD,sd), /* 13: SCSI disk */ cdev_tape_init(NST,st), /* 14: SCSI tape */ cdev_disk_init(NCD,cd), /* 15: SCSI CD-ROM */ cdev_notdef(), /* 16: */ cdev_ch_init(NCH,ch), /* 17: SCSI autochanger */ cdev_disk_init(NCCD,ccd), /* 18: concatenated disk driver */ cdev_scanner_init(NSS,ss), /* 19: SCSI scanner */ cdev_uk_init(NUK,uk), /* 20: SCSI unknown */ cdev_notdef(), /* 21 (was APM) */ cdev_fd_init(1,filedesc), /* 22: file descriptor pseudo-device */ cdev_bpftun_init(NBPFILTER,bpf),/* 23: Berkeley packet filter */ cdev_disk_init(NMD,md), /* 24: memory disk driver */
#include "systrace.h" #include "usb.h" #include "uhid.h" #include "ugen.h" #include "ulpt.h" #include "ucom.h" #include "vscsi.h" #include "pppx.h" #include "fuse.h" struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_notdef(), /* 1 was /dev/drum */ cdev_ctty_init(1,ctty), /* 2: controlling terminal */ cdev_mm_init(1,mm), /* 3: /dev/{null,mem,kmem,...} */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_fd_init(1,filedesc), /* 7: file descriptor pseudo-dev */ cdev_disk_init(NCD,cd), /* 8: SCSI CD */ cdev_disk_init(NSD,sd), /* 9: SCSI disk */ cdev_tape_init(NST,st), /* 10: SCSI tape */ cdev_disk_init(NVND,vnd), /* 11: vnode disk */ cdev_bpf_init(NBPFILTER,bpf), /* 12: berkeley packet filter */ cdev_tun_init(NTUN,tun), /* 13: network tunnel */ cdev_notdef(), /* 14 */ cdev_notdef(), /* 15: */ cdev_lpt_init(NLPT,lpt), /* 16: Parallel printer interface */
bdev_notdef(), /* 12 */ bdev_lkm_dummy(), /* 13 */ bdev_lkm_dummy(), /* 14 */ bdev_lkm_dummy(), /* 15 */ bdev_lkm_dummy(), /* 16 */ bdev_lkm_dummy(), /* 17 */ bdev_lkm_dummy(), /* 18 */ }; int nblkdev = nitems(bdevsw); struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: controlling terminal */ cdev_mm_init(1,mm), /* 2: /dev/{null,mem,kmem,...} */ cdev_notdef(), /* 3 was /dev/drum */ cdev_tty_init(NPTY,pts), /* 4: pseudo-tty slave */ cdev_ptc_init(NPTY,ptc), /* 5: pseudo-tty master */ cdev_log_init(1,log), /* 6: /dev/klog */ cdev_notdef(), /* 7 */ cdev_disk_init(NSD,sd), /* 8: SCSI disk */ cdev_disk_init(NCD,cd), /* 9: SCSI CD-ROM */ cdev_lcd_init(NLCD,lcd), /* 10: /dev/lcd */ cdev_notdef(), /* 11 */ cdev_tty_init(NSIOTTY,sio), /* 12: on-board UART (ttya) */ cdev_wsdisplay_init(NWSDISPLAY, /* 13: frame buffers, etc. */ wsdisplay), cdev_mouse_init(NWSKBD,wskbd), /* 14: keyboard */ cdev_mouse_init(NWSMOUSE, /* 15: mouse */ wsmouse), cdev_mouse_init(NWSMUX,wsmux), /* 16: ws multiplexor */
#include "clockctl.h" cdev_decl(clockctl); /* Character devices */ struct cdevsw cdevsw[] = { cdev_mm_init(1, mm), /* 0: /dev/{null,mem,kmem,...} */ cdev_swap_init(1, sw), /* 1: /dev/drum (swap pseudo-device) */ cdev_cn_init(1, cn), /* 2: virtual console */ cdev_ctty_init(1,ctty), /* 3: controlling terminal */ #if defined(SHARK) && (NPC > 0) cdev_pc_init(1,pc), /* 4: PC console */ #elif (defined(OFWGENCFG) || defined(SHARK)) cdev_tty_init(NOFCONS,ofcons_), /* 4: Openfirmware console */ #else cdev_notdef(), /* 4: */ #endif cdev_log_init(1,log), /* 5: /dev/klog */ cdev_ptc_init(NPTY,ptc), /* 6: pseudo-tty master */ cdev_tty_init(NPTY,pts), /* 7: pseudo-tty slave */ cdev_lpt_init(NLPT,lpt), /* 8: parallel printer */ cdev_lkm_dummy(), /* 9: was qms */ cdev_lkm_dummy(), /* 10: was beep */ cdev_lkm_dummy(), /* 11: was kbd */ cdev_tty_init(NCOM,com), /* 12: serial port */ cdev_lkm_dummy(), /* 13: */ cdev_lkm_dummy(), /* 14: */ cdev_lkm_dummy(), /* 15: */ cdev_disk_init(NWD, wd), /* 16: ST506/ESDI/IDE disk */ cdev_lkm_dummy(), /* 17: was fd */ cdev_disk_init(NMD, md), /* 18: memory disk driver */
cdev_lkm_dummy(), /* 23: */ cdev_disk_init(NSD,sd), /* 24: SCSI disk */ cdev_tape_init(NST,st), /* 25: SCSI tape */ cdev_disk_init(NCD,cd), /* 26: SCSI CD-ROM */ cdev_ch_init(NCH,ch), /* 27: SCSI autochanger */ cdev_uk_init(NUK,uk), /* 28: SCSI unknown */ cdev_scanner_init(NSS,ss), /* 29: SCSI scanner */ cdev_lkm_dummy(), /* 30: */ cdev_lkm_dummy(), /* 31: */ cdev_lkm_dummy(), /* 32: */ cdev_bpftun_init(NTUN,tun), /* 33: network tunnel */ cdev_apm_init(NAPM,apm), /* 34: APM interface */ cdev_lkm_init(NLKM,lkm), /* 35: loadable module driver */ cdev_audio_init(NAUDIO,audio), /* 36: generic audio I/O */ cdev_hotplug_init(NHOTPLUG,hotplug), /* 37: devices hot plugging*/ cdev_notdef(), /* 38: removed cpu device */ cdev_lkm_dummy(), /* 39: reserved */ cdev_random_init(1,random), /* 40: random generator */ cdev_lkm_dummy(), /* 41: reserved */ cdev_lkm_dummy(), /* 42: reserved */ cdev_lkm_dummy(), /* 43: reserved */ cdev_lkm_dummy(), /* 44: reserved */ cdev_lkm_dummy(), /* 45: reserved */ cdev_pf_init(NPF,pf), /* 46: packet filter */ cdev_crypto_init(NCRYPTO,crypto), /* 47: /dev/crypto */ cdev_lkm_dummy(), /* 48: reserved */ cdev_lkm_dummy(), /* 49: reserved */ cdev_systrace_init(NSYSTRACE,systrace), /* 50: system call tracing */ #ifdef XFS cdev_xfs_init(NXFS,xfs_dev), /* 51: xfs communication device */ #else
#if NZSTTY > 0 cdev_tty_init(NZSTTY,zs), /* 15: SCC 8530 serial port tty */ #else cdev_tty_init(NSCC,scc), /* 15: scc 8530 serial interface */ #endif cdev_lkm_init(NLKM,lkm), /* 16: loadable module driver */ cdev_lkm_dummy(), /* 17 */ cdev_lkm_dummy(), /* 18 */ cdev_lkm_dummy(), /* 19 */ cdev_lkm_dummy(), /* 20 */ cdev_lkm_dummy(), /* 21 */ cdev_lkm_dummy(), /* 22 */ #ifdef _PMAP_MAY_USE_PROM_CONSOLE cdev_tty_init(1,prom), /* 23: XXX prom console */ #else cdev_notdef(), /* 23 */ #endif cdev_audio_init(NAUDIO,audio), /* 24: generic audio I/O */ cdev_wsdisplay_init(NWSDISPLAY, wsdisplay), /* 25: frame buffers, etc. */ cdev_tty_init(NCOM,com), /* 26: ns16550 UART */ cdev_disk_init(NCCD,ccd), /* 27: concatenated disk driver */ cdev_disk_init(NMD,md), /* 28: memory disk driver */ cdev_mouse_init(NWSKBD, wskbd), /* 29: keyboards */ cdev_mouse_init(NWSMOUSE, wsmouse), /* 30: mice */ cdev_lpt_init(NLPT,lpt), /* 31: parallel printer */ cdev_scanner_init(NSS,ss), /* 32: SCSI scanner */ cdev_uk_init(NUK,uk), /* 33: SCSI unknown */ cdev_disk_init(NFDC,fd), /* 34: PC-ish floppy disk driver */ cdev_ipf_init(NIPFILTER,ipl), /* 35: ip-filter device */
* users, because the swstrategy routine munches the b_dev and b_blkno * entries before calling the appropriate driver. This would horribly * confuse, e.g. the hashing routines. User access (e.g., for libkvm * and ps) is provided through the /dev/drum character (raw) device. */ dev_t swapdev = makedev(0, 0); struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: console */ cdev_swap_init(1,sw), /* 1: /dev/drum (swap pseudo-device) */ cdev_disk_init(NMD,md), /* 2: memory disk driver */ cdev_disk_init(NVND,vnd), /* 3: vnode disk driver */ cdev_disk_init(NCCD,ccd), /* 4: concatenated disk driver */ cdev_disk_init(NRAID,raid), /* 5: RAIDframe disk driver */ cdev_notdef(), /* 6: */ cdev_notdef(), /* 7: */ cdev_notdef(), /* 8: */ cdev_notdef(), /* 9: */ cdev_disk_init(NSD,sd), /* 10: SCSI disk */ cdev_tape_init(NST,st), /* 11: SCSI tape */ cdev_disk_init(NCD,cd), /* 12: SCSI CD-ROM */ cdev_disk_init(NWD,wd), /* 13: ATA disk */ cdev_disk_init(NCA,ca), /* 14: Compaq array */ cdev_notdef(), /* 15: */ cdev_notdef(), /* 16: */ cdev_notdef(), /* 17: */ cdev_notdef(), /* 18: */ cdev_notdef(), /* 19: */ cdev_mm_init(1,mm), /* 20: /dev/{null,mem,kmem,...} */ cdev_ctty_init(1,ctty), /* 21: controlling terminal */