1*2ad04261Svisa /* $OpenBSD: conf.h,v 1.7 2022/06/28 14:43:50 visa Exp $ */ 2f8bad279Saoyama /* 3f8bad279Saoyama * Copyright (c) 2004, Miodrag Vallat. 4f8bad279Saoyama * All rights reserved. 5f8bad279Saoyama * 6f8bad279Saoyama * Permission to redistribute, use, copy, and modify this software 7f8bad279Saoyama * is hereby granted without fee, provided that the following 8f8bad279Saoyama * conditions are met: 9f8bad279Saoyama * 10f8bad279Saoyama * 1. This entire notice is included in all source code copies of any 11f8bad279Saoyama * software which is or includes a copy or modification of this 12f8bad279Saoyama * software. 13f8bad279Saoyama * 2. The name of the author may not be used to endorse or promote 14f8bad279Saoyama * products derived from this software without specific prior 15f8bad279Saoyama * written permission. 16f8bad279Saoyama * 17f8bad279Saoyama * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS 18f8bad279Saoyama * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19f8bad279Saoyama * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20f8bad279Saoyama * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 21f8bad279Saoyama * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22f8bad279Saoyama * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 23f8bad279Saoyama * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24f8bad279Saoyama * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 25f8bad279Saoyama * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 26f8bad279Saoyama * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27f8bad279Saoyama * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28f8bad279Saoyama */ 29f8bad279Saoyama 30f8bad279Saoyama #include <sys/conf.h> 31f8bad279Saoyama 32f8bad279Saoyama #define mmread mmrw 33f8bad279Saoyama #define mmwrite mmrw 34f8bad279Saoyama cdev_decl(mm); 35f8bad279Saoyama 36f8bad279Saoyama cdev_decl(sio); 370f82e710Saoyama 380f82e710Saoyama cdev_decl(lcd); 390f82e710Saoyama 40a5a68e2fSaoyama cdev_decl(pcex); 41a5a68e2fSaoyama 420641c1a2Saoyama cdev_decl(xp); 430641c1a2Saoyama 4497b56d56Saoyama /* devices on PCMCIA */ 4597b56d56Saoyama /* block devices */ 4697b56d56Saoyama bdev_decl(wd); 4797b56d56Saoyama /* character devices */ 4897b56d56Saoyama cdev_decl(com); 4997b56d56Saoyama cdev_decl(wd); 5097b56d56Saoyama 510f82e710Saoyama /* open, close, write, ioctl */ 520f82e710Saoyama #define cdev_lcd_init(c,n) { \ 530f82e710Saoyama dev_init(c,n,open), dev_init(c,n,close), \ 540f82e710Saoyama (dev_type_read((*))) enodev, dev_init(c,n,write), \ 550f82e710Saoyama dev_init(c,n,ioctl), (dev_type_stop((*))) enodev, \ 56*2ad04261Svisa 0, (dev_type_mmap((*))) enodev, 0, 0, seltrue_kqfilter } 57a5a68e2fSaoyama 58a5a68e2fSaoyama /* open, close, ioctl, mmap */ 59a5a68e2fSaoyama #define cdev_pcex_init(c,n) { \ 60a5a68e2fSaoyama dev_init(c,n,open), dev_init(c,n,close), (dev_type_read((*))) enodev, \ 61a5a68e2fSaoyama (dev_type_write((*))) enodev, dev_init(c,n,ioctl), \ 62*2ad04261Svisa (dev_type_stop((*))) enodev, 0, \ 63a5a68e2fSaoyama dev_init(c,n,mmap) } 640641c1a2Saoyama 650641c1a2Saoyama /* open, close, ioctl, mmap */ 660641c1a2Saoyama #define cdev_xp_init(c,n) { \ 670641c1a2Saoyama dev_init(c,n,open), dev_init(c,n,close), (dev_type_read((*))) enodev, \ 680641c1a2Saoyama (dev_type_write((*))) enodev, dev_init(c,n,ioctl), \ 69*2ad04261Svisa (dev_type_stop((*))) enodev, 0, \ 700641c1a2Saoyama dev_init(c,n,mmap) } 71