xref: /csrg-svn/sys/i386/stand/confxx.c (revision 41073)
1*41073Swilliam /*-
2*41073Swilliam  * Copyright (c) 1990 The Regents of the University of California.
3*41073Swilliam  * All rights reserved.
4*41073Swilliam  *
5*41073Swilliam  * This code is derived from software contributed to Berkeley by
6*41073Swilliam  * William Jolitz.
7*41073Swilliam  *
8*41073Swilliam  * %sccs.include.noredist.c%
9*41073Swilliam  *
10*41073Swilliam  *	@(#)confxx.c	7.1 (Berkeley) 04/24/90
11*41073Swilliam  */
12*41073Swilliam 
13*41073Swilliam #include "../machine/pte.h"
14*41073Swilliam 
15*41073Swilliam #include "../h/param.h"
16*41073Swilliam #include "../h/inode.h"
17*41073Swilliam #include "../h/fs.h"
18*41073Swilliam #include "saio.h"
19*41073Swilliam 
20*41073Swilliam devread(io)
21*41073Swilliam 	register struct iob *io;
22*41073Swilliam {
23*41073Swilliam 	int cc;
24*41073Swilliam 
25*41073Swilliam 	io->i_flgs |= F_RDDATA;
26*41073Swilliam 	io->i_error = 0;
27*41073Swilliam 	cc = (*devsw[0].dv_strategy)(io, READ);
28*41073Swilliam 	io->i_flgs &= ~F_TYPEMASK;
29*41073Swilliam 	return (cc);
30*41073Swilliam }
31*41073Swilliam 
32*41073Swilliam devwrite(io)
33*41073Swilliam 	register struct iob *io;
34*41073Swilliam {
35*41073Swilliam 	int cc;
36*41073Swilliam 
37*41073Swilliam 	io->i_flgs |= F_WRDATA;
38*41073Swilliam 	io->i_error = 0;
39*41073Swilliam 	cc = (*devsw[0].dv_strategy)(io, WRITE);
40*41073Swilliam 	io->i_flgs &= ~F_TYPEMASK;
41*41073Swilliam 	return (cc);
42*41073Swilliam }
43*41073Swilliam 
44*41073Swilliam devopen(io)
45*41073Swilliam 	register struct iob *io;
46*41073Swilliam {
47*41073Swilliam 
48*41073Swilliam 	(*devsw[0].dv_open)(io);
49*41073Swilliam }
50*41073Swilliam 
51*41073Swilliam devclose(io)
52*41073Swilliam 	register struct iob *io;
53*41073Swilliam {
54*41073Swilliam 
55*41073Swilliam 	(*devsw[0].dv_close)(io);
56*41073Swilliam }
57*41073Swilliam 
58*41073Swilliam devioctl(io, cmd, arg)
59*41073Swilliam 	register struct iob *io;
60*41073Swilliam 	int cmd;
61*41073Swilliam 	caddr_t arg;
62*41073Swilliam {
63*41073Swilliam 
64*41073Swilliam 	return ((*devsw[0].dv_ioctl)(io, cmd, arg));
65*41073Swilliam }
66*41073Swilliam 
67*41073Swilliam /*ARGSUSED*/
68*41073Swilliam nullsys(io)
69*41073Swilliam 	struct iob *io;
70*41073Swilliam {
71*41073Swilliam 
72*41073Swilliam 	;
73*41073Swilliam }
74*41073Swilliam 
75*41073Swilliam /*ARGSUSED*/
76*41073Swilliam nullioctl(io, cmd, arg)
77*41073Swilliam 	struct iob *io;
78*41073Swilliam 	int cmd;
79*41073Swilliam 	caddr_t arg;
80*41073Swilliam {
81*41073Swilliam 
82*41073Swilliam 	return (ECMD);
83*41073Swilliam }
84*41073Swilliam 
85*41073Swilliam int	nullsys(), nullioctl();
86*41073Swilliam int	xxstrategy(), xxopen()/*, xxioctl()*/;
87*41073Swilliam 
88*41073Swilliam struct devsw devsw[] = {
89*41073Swilliam 	{ "XX",	xxstrategy,	xxopen,		nullsys,	/*xxioctl*/ },
90*41073Swilliam 	{ 0, 0, 0, 0, 0 }
91*41073Swilliam };
92*41073Swilliam #ifdef	TP
93*41073Swilliam char	bootprog[] = "XX0b:" ;
94*41073Swilliam #else
95*41073Swilliam char	bootprog[] = "XX0a:/boot" ;
96*41073Swilliam #endif
97*41073Swilliam int ndevs = 1 ;
98