1 /* $OpenBSD: conf.h,v 1.6 2008/11/29 09:47:35 matthieu Exp $ */ 2 /* $NetBSD: conf.h,v 1.7 2002/04/19 01:04:39 wiz Exp $ */ 3 4 /* 5 * Copyright (c) 1997 Mark Brinicombe. 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without 9 * modification, are permitted provided that the following conditions 10 * are met: 11 * 1. Redistributions of source code must retain the above copyright 12 * notice, this list of conditions and the following disclaimer. 13 * 2. Redistributions in binary form must reproduce the above copyright 14 * notice, this list of conditions and the following disclaimer in the 15 * documentation and/or other materials provided with the distribution. 16 * 3. All advertising materials mentioning features or use of this software 17 * must display the following acknowledgement: 18 * This product includes software developed by Mark Brinicombe 19 * for the NetBSD Project. 20 * 4. The name of the company nor the name of the author may be used to 21 * endorse or promote products derived from this software without specific 22 * prior written permission. 23 * 24 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 25 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 26 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 27 * IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 28 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 29 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 34 * SUCH DAMAGE. 35 * 36 * RiscBSD kernel project 37 * 38 * conf.h 39 * 40 * Prototypes for device driver functions 41 */ 42 43 #ifndef _ARM_CONF_H 44 #define _ARM_CONF_H 45 46 47 #include <sys/conf.h> 48 49 #define mmread mmrw 50 #define mmwrite mmrw 51 cdev_decl(mm); 52 53 bdev_decl(wd); 54 cdev_decl(wd); 55 bdev_decl(fd); 56 cdev_decl(fd); 57 58 /* Character device declarations */ 59 60 /* open, close, read, write, ioctl, tty, mmap -- XXX should be a tty */ 61 #define cdev_physcon_init(c,n) cdev__ttym_init(c,n,0) 62 63 /* open, close, ioctl */ 64 #define cdev_beep_init(c,n) cdev__oci_init(c,n) 65 66 /* open, close, read, ioctl */ 67 #define cdev_kbd_init(c,n) cdev__ocri_init(c,n) 68 69 /* open, close, ioctl, mmap */ 70 #define cdev_vidcvid_init(c,n) { \ 71 dev_init(c,n,open), dev_init(c,n,close), dev_noimpl(read,enodev), \ 72 dev_noimpl(write,enodev), dev_init(c,n,ioctl), \ 73 dev_noimpl(stop,enodev), 0, seltrue, dev_init(c,n,mmap), 0 } 74 75 /* open, close, read, write, ioctl */ 76 #define cdev_iic_init(c,n) cdev__ocrwi_init(c,n) 77 #define cdev_rtc_init(c,n) cdev__ocrwi_init(c,n) 78 79 /* open, close, read, ioctl */ 80 #define cdev_prof_init(c,n) cdev__ocri_init(c,n) 81 82 /* open, close, ioctl, kqueue */ 83 #define cdev_apm_init(c,n) { \ 84 dev_init(c,n,open), dev_init(c,n,close), (dev_type_read((*))) enodev, \ 85 (dev_type_write((*))) enodev, dev_init(c,n,ioctl), \ 86 (dev_type_stop((*))) enodev, 0, (dev_type_poll((*))) enodev, \ 87 (dev_type_mmap((*))) enodev, 0, D_KQFILTER, dev_init(c,n,kqfilter) } 88 89 cdev_decl(physcon); 90 cdev_decl(vidcconsole); 91 cdev_decl(biconsdev); 92 cdev_decl(com); 93 cdev_decl(lpt); 94 cdev_decl(qms); 95 cdev_decl(opms); 96 cdev_decl(beep); 97 cdev_decl(kbd); 98 cdev_decl(iic); 99 cdev_decl(rtc); 100 cdev_decl(fcom); 101 cdev_decl(sscom); 102 cdev_decl(pc); 103 cdev_decl(ofcons_); 104 cdev_decl(ofd); 105 cdev_decl(ofrtc); 106 cdev_decl(sacom); 107 cdev_decl(scr); 108 cdev_decl(prof); 109 #define ofromread ofromrw 110 #define ofromwrite ofromrw 111 cdev_decl(ofrom); 112 cdev_decl(joy); 113 cdev_decl(vc_nb_); 114 cdev_decl(wsfont); 115 cdev_decl(scsibus); 116 cdev_decl(openfirm); 117 cdev_decl(pci); 118 cdev_decl(agp); 119 cdev_decl(iop); 120 cdev_decl(ld); 121 cdev_decl(mlx); 122 cdev_decl(mly); 123 cdev_decl(plcom); 124 cdev_decl(apm); 125 cdev_decl(spkr); 126 127 #endif /* _ARM_CONF_H_ */ 128