xref: /csrg-svn/sys/vax/stand/confxx.c (revision 33409)
123222Smckusick /*
229295Smckusick  * Copyright (c) 1982, 1986 Regents of the University of California.
323222Smckusick  * All rights reserved.  The Berkeley software License Agreement
423222Smckusick  * specifies the terms and conditions for redistribution.
523222Smckusick  *
6*33409Skarels  *	@(#)confxx.c	7.3 (Berkeley) 01/28/88
723222Smckusick  */
87465Skre 
932200Skarels #include "machine/pte.h"
109803Ssam 
1132200Skarels #include "param.h"
1232200Skarels #include "inode.h"
1332200Skarels #include "fs.h"
147465Skre #include "saio.h"
157465Skre 
167465Skre devread(io)
177465Skre 	register struct iob *io;
187465Skre {
1911111Ssam 	int cc;
207465Skre 
2110024Ssam 	io->i_flgs |= F_RDDATA;
2211111Ssam 	io->i_error = 0;
23*33409Skarels 	cc = (*devsw[0].dv_strategy)(io, READ);
2410024Ssam 	io->i_flgs &= ~F_TYPEMASK;
2511111Ssam 	return (cc);
267465Skre }
277465Skre 
287465Skre devwrite(io)
297465Skre 	register struct iob *io;
307465Skre {
3111111Ssam 	int cc;
327465Skre 
3310024Ssam 	io->i_flgs |= F_WRDATA;
3411111Ssam 	io->i_error = 0;
35*33409Skarels 	cc = (*devsw[0].dv_strategy)(io, WRITE);
3610024Ssam 	io->i_flgs &= ~F_TYPEMASK;
3711111Ssam 	return (cc);
387465Skre }
397465Skre 
407465Skre devopen(io)
417465Skre 	register struct iob *io;
427465Skre {
437465Skre 
44*33409Skarels 	return (*devsw[0].dv_open)(io);
457465Skre }
467465Skre 
477465Skre devclose(io)
487465Skre 	register struct iob *io;
497465Skre {
507465Skre 
51*33409Skarels 	(*devsw[0].dv_close)(io);
527465Skre }
537465Skre 
5410024Ssam devioctl(io, cmd, arg)
5510024Ssam 	register struct iob *io;
5610024Ssam 	int cmd;
5710024Ssam 	caddr_t arg;
587465Skre {
597465Skre 
60*33409Skarels 	return ((*devsw[0].dv_ioctl)(io, cmd, arg));
6110024Ssam }
6210024Ssam 
6310024Ssam /*ARGSUSED*/
6410024Ssam nullsys(io)
6510024Ssam 	struct iob *io;
6610024Ssam {
6710024Ssam 
687465Skre 	;
697465Skre }
707465Skre 
7110024Ssam /*ARGSUSED*/
7210024Ssam nullioctl(io, cmd, arg)
7310024Ssam 	struct iob *io;
7410024Ssam 	int cmd;
7510024Ssam 	caddr_t arg;
7610024Ssam {
777465Skre 
7810024Ssam 	return (ECMD);
7910024Ssam }
8010024Ssam 
8110024Ssam int	nullsys(), nullioctl();
8210024Ssam int	xxstrategy(), xxopen(), xxioctl();
8310024Ssam 
847465Skre struct devsw devsw[] = {
8510024Ssam 	{ "XX",	xxstrategy,	xxopen,		nullsys,	xxioctl },
867465Skre };
8732200Skarels 
88*33409Skarels int	ndevs = (sizeof(devsw) / sizeof(devsw[0]));
89