1: /*
2: * Copyright (c) 1982, 1986 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: *
6: * @(#)confrk.c 7.1 (Berkeley) 6/5/86
7: */
8:
9: #include "../machine/pte.h"
10:
11: #include "../h/param.h"
12: #include "../h/inode.h"
13: #include "../h/fs.h"
14: #include "saio.h"
15:
16: devread(io)
17: register struct iob *io;
18: {
19: int cc;
20:
21: io->i_flgs |= F_RDDATA;
22: io->i_error = 0;
23: cc = (*devsw[io->i_ino.i_dev].dv_strategy)(io, READ);
24: io->i_flgs &= ~F_TYPEMASK;
25: return (cc);
26: }
27:
28: devwrite(io)
29: register struct iob *io;
30: {
31: int cc;
32:
33: io->i_flgs |= F_WRDATA;
34: io->i_error = 0;
35: cc = (*devsw[io->i_ino.i_dev].dv_strategy)(io, WRITE);
36: io->i_flgs &= ~F_TYPEMASK;
37: return (cc);
38: }
39:
40: devopen(io)
41: register struct iob *io;
42: {
43:
44: (*devsw[io->i_ino.i_dev].dv_open)(io);
45: }
46:
47: devclose(io)
48: register struct iob *io;
49: {
50:
51: (*devsw[io->i_ino.i_dev].dv_close)(io);
52: }
53:
54: devioctl(io, cmd, arg)
55: register struct iob *io;
56: int cmd;
57: caddr_t arg;
58: {
59:
60: return ((*devsw[io->i_ino.i_dev].dv_ioctl)(io, cmd, arg));
61: }
62:
63: /*ARGSUSED*/
64: nullsys(io)
65: struct iob *io;
66: {
67:
68: ;
69: }
70:
71: /*ARGSUSED*/
72: nullioctl(io, cmd, arg)
73: struct iob *io;
74: int cmd;
75: caddr_t arg;
76: {
77:
78: return (ECMD);
79: }
80:
81: int nullsys(), nullioctl();
82: int rkstrategy(), rkopen(), rkioctl();
83:
84: struct devsw devsw[] = {
85: { "hk", rkstrategy, rkopen, nullsys, rkioctl },
86: { 0, 0, 0, 0, 0 }
87: };
Defined functions
Defined variables
devsw
defined in line
84; used 5 times