Home | History | Annotate | Line # | Download | only in boot
conf.c revision 1.6.98.1
      1  1.6.98.1  uebayasi /*	$NetBSD: conf.c,v 1.6.98.1 2010/10/22 07:21:08 uebayasi Exp $	*/
      2       1.1  sakamoto 
      3       1.1  sakamoto /*
      4       1.1  sakamoto  * Copyright (c) 1982, 1986, 1990, 1993
      5       1.1  sakamoto  *	The Regents of the University of California.  All rights reserved.
      6       1.1  sakamoto  *
      7       1.1  sakamoto  * Redistribution and use in source and binary forms, with or without
      8       1.1  sakamoto  * modification, are permitted provided that the following conditions
      9       1.1  sakamoto  * are met:
     10       1.1  sakamoto  * 1. Redistributions of source code must retain the above copyright
     11       1.1  sakamoto  *    notice, this list of conditions and the following disclaimer.
     12       1.1  sakamoto  * 2. Redistributions in binary form must reproduce the above copyright
     13       1.1  sakamoto  *    notice, this list of conditions and the following disclaimer in the
     14       1.1  sakamoto  *    documentation and/or other materials provided with the distribution.
     15       1.3       agc  * 3. Neither the name of the University nor the names of its contributors
     16       1.1  sakamoto  *    may be used to endorse or promote products derived from this software
     17       1.1  sakamoto  *    without specific prior written permission.
     18       1.1  sakamoto  *
     19       1.1  sakamoto  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
     20       1.1  sakamoto  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     21       1.1  sakamoto  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     22       1.1  sakamoto  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
     23       1.1  sakamoto  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     24       1.1  sakamoto  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     25       1.1  sakamoto  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     26       1.1  sakamoto  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     27       1.1  sakamoto  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     28       1.1  sakamoto  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     29       1.1  sakamoto  * SUCH DAMAGE.
     30       1.1  sakamoto  *
     31       1.1  sakamoto  *	@(#)conf.c	8.1 (Berkeley) 6/10/93
     32       1.1  sakamoto  */
     33       1.1  sakamoto 
     34       1.1  sakamoto #include <sys/param.h>
     35       1.5  junyoung #include <lib/libsa/stand.h>
     36       1.1  sakamoto 
     37  1.6.98.1  uebayasi extern int fdstrategy(void *, int, daddr_t, size_t, void *, size_t *);
     38  1.6.98.1  uebayasi extern int fdopen(struct open_file *, ...);
     39  1.6.98.1  uebayasi extern int fdclose(struct open_file *);
     40  1.6.98.1  uebayasi 
     41  1.6.98.1  uebayasi extern int instrategy(void *, int, daddr_t, size_t, void *, size_t *);
     42  1.6.98.1  uebayasi extern int inopen(struct open_file *, ...);
     43  1.6.98.1  uebayasi extern int inclose(struct open_file *);
     44  1.6.98.1  uebayasi 
     45  1.6.98.1  uebayasi extern int sdstrategy(void *, int, daddr_t, size_t, void *, size_t *);
     46  1.6.98.1  uebayasi extern int sdopen(struct open_file *, ...);
     47  1.6.98.1  uebayasi extern int sdclose(struct open_file *);
     48  1.6.98.1  uebayasi 
     49  1.6.98.1  uebayasi extern int wdstrategy(void *, int, daddr_t, size_t, void *, size_t *);
     50  1.6.98.1  uebayasi extern int wdopen(struct open_file *, ...);
     51  1.6.98.1  uebayasi extern int wdclose(struct open_file *);
     52       1.1  sakamoto 
     53       1.1  sakamoto struct devsw devsw[] = {
     54       1.4  junyoung 	{ "fd", fdstrategy, fdopen, fdclose, noioctl },
     55  1.6.98.1  uebayasi 	{ "sd", sdstrategy, sdopen, sdclose, noioctl },
     56  1.6.98.1  uebayasi 	{ "wd", wdstrategy, wdopen, wdclose, noioctl },
     57  1.6.98.1  uebayasi 
     58  1.6.98.1  uebayasi 	{ NULL, NULL,       NULL,   NULL,    NULL },
     59       1.1  sakamoto };
     60  1.6.98.1  uebayasi struct devsw pseudo_devsw = { "in", instrategy, inopen, inclose, noioctl };
     61       1.1  sakamoto 
     62       1.4  junyoung int ndevs = sizeof(devsw) / sizeof(devsw[0]);
     63