1*1812Sbill /* conf.c 4.3 11/14/80 */ 2318Sbill 3318Sbill #include "../h/param.h" 4318Sbill #include "../h/inode.h" 5421Sbill #include "../h/pte.h" 6318Sbill #include "../h/mba.h" 7318Sbill #include "saio.h" 8318Sbill 9318Sbill devread(io) 10318Sbill register struct iob *io; 11318Sbill { 12318Sbill 13318Sbill return( (*devsw[io->i_ino.i_dev].dv_strategy)(io,READ) ); 14318Sbill } 15318Sbill 16318Sbill devwrite(io) 17318Sbill register struct iob *io; 18318Sbill { 19318Sbill return( (*devsw[io->i_ino.i_dev].dv_strategy)(io, WRITE) ); 20318Sbill } 21318Sbill 22318Sbill devopen(io) 23318Sbill register struct iob *io; 24318Sbill { 25318Sbill (*devsw[io->i_ino.i_dev].dv_open)(io); 26318Sbill } 27318Sbill 28318Sbill devclose(io) 29318Sbill register struct iob *io; 30318Sbill { 31318Sbill (*devsw[io->i_ino.i_dev].dv_close)(io); 32318Sbill } 33318Sbill 34318Sbill nullsys() 35318Sbill { ; } 36318Sbill 37318Sbill int nullsys(); 38318Sbill int hpstrategy(), hpopen(); 39318Sbill int htstrategy(), htopen(), htclose(); 40318Sbill int upstrategy(), upopen(); 41*1812Sbill int tmstrategy(), tmopen(), tmclose(); 42318Sbill 43318Sbill struct devsw devsw[] = { 44318Sbill "hp", hpstrategy, hpopen, nullsys, 45318Sbill "ht", htstrategy, htopen, htclose, 46318Sbill "up", upstrategy, upopen, nullsys, 47*1812Sbill "tm", tmstrategy, tmopen, tmclose, 48318Sbill 0,0,0,0 49318Sbill }; 50318Sbill 51318Sbill int mbanum[] = { /* mba number of major device */ 52318Sbill 0, /* disk */ 53318Sbill 1, /* tape */ 54318Sbill -1, /* unused */ 55318Sbill }; 56318Sbill 57318Sbill int *mbaloc[] = { /* physical location of mba */ 58318Sbill (int *)PHYSMBA0, 59318Sbill (int *)PHYSMBA1, 60318Sbill }; 61