Annotation of 42BSD/sys/stand/conf.c, revision 1.1.1.1

1.1       root        1: /*     conf.c  6.1     83/07/29        */
                      2: 
                      3: #include "../machine/pte.h"
                      4: 
                      5: #include "../h/param.h"
                      6: #include "../h/inode.h"
                      7: #include "../h/fs.h"
                      8: 
                      9: #include "../vaxmba/mbareg.h"
                     10: 
                     11: #include "saio.h"
                     12: 
                     13: devread(io)
                     14:        register struct iob *io;
                     15: {
                     16:        int cc;
                     17: 
                     18:        io->i_flgs |= F_RDDATA;
                     19:        io->i_error = 0;
                     20:        cc = (*devsw[io->i_ino.i_dev].dv_strategy)(io, READ);
                     21:        io->i_flgs &= ~F_TYPEMASK;
                     22:        return (cc);
                     23: }
                     24: 
                     25: devwrite(io)
                     26:        register struct iob *io;
                     27: {
                     28:        int cc;
                     29: 
                     30:        io->i_flgs |= F_WRDATA;
                     31:        io->i_error = 0;
                     32:        cc = (*devsw[io->i_ino.i_dev].dv_strategy)(io, WRITE);
                     33:        io->i_flgs &= ~F_TYPEMASK;
                     34:        return (cc);
                     35: }
                     36: 
                     37: devopen(io)
                     38:        register struct iob *io;
                     39: {
                     40: 
                     41:        (*devsw[io->i_ino.i_dev].dv_open)(io);
                     42: }
                     43: 
                     44: devclose(io)
                     45:        register struct iob *io;
                     46: {
                     47: 
                     48:        (*devsw[io->i_ino.i_dev].dv_close)(io);
                     49: }
                     50: 
                     51: devioctl(io, cmd, arg)
                     52:        register struct iob *io;
                     53:        int cmd;
                     54:        caddr_t arg;
                     55: {
                     56: 
                     57:        return ((*devsw[io->i_ino.i_dev].dv_ioctl)(io, cmd, arg));
                     58: }
                     59: 
                     60: /*ARGSUSED*/
                     61: nullsys(io)
                     62:        struct iob *io;
                     63: {
                     64: 
                     65:        ;
                     66: }
                     67: 
                     68: /*ARGSUSED*/
                     69: nullioctl(io, cmd, arg)
                     70:        struct iob *io;
                     71:        int cmd;
                     72:        caddr_t arg;
                     73: {
                     74: 
                     75:        return (ECMD);
                     76: }
                     77: 
                     78: int    nullsys(), nullioctl();
                     79: #if defined(VAX780) || defined(VAX750)
                     80: int    hpstrategy(), hpopen(), hpioctl();
                     81: #endif
                     82: #if defined(VAX780) || defined(VAX750)
                     83: int    upstrategy(), upopen(), upioctl();
                     84: #endif
                     85: int    rkstrategy(), rkopen(), rkioctl();
                     86: int    rastrategy(), raopen(), raioctl();
                     87: #if defined(VAX730)
                     88: int    idcstrategy(), idcopen(), idcioctl();
                     89: #endif
                     90: int    rlstrategy(), rlopen(), rlioctl();
                     91: #ifndef BOOT
                     92: int    tmstrategy(), tmopen(), tmclose();
                     93: int    tsstrategy(), tsopen(), tsclose();
                     94: #if defined(VAX780) || defined(VAX750)
                     95: int    htstrategy(), htopen(), htclose();
                     96: int    mtstrategy(), mtopen(), mtclose();
                     97: #endif
                     98: int    utstrategy(), utopen(), utclose();
                     99: #endif
                    100: 
                    101: struct devsw devsw[] = {
                    102: #if defined(VAX780) || defined(VAX750)
                    103:        { "hp", hpstrategy,     hpopen,         nullsys,        hpioctl },
                    104: #endif
                    105: #if defined(VAX780) || defined(VAX750)
                    106:        { "up", upstrategy,     upopen,         nullsys,        upioctl },
                    107: #endif
                    108:        { "hk", rkstrategy,     rkopen,         nullsys,        rkioctl },
                    109:        { "ra", rastrategy,     raopen,         nullsys,        raioctl },
                    110: #if defined(VAX730)
                    111:        { "rb", idcstrategy,    idcopen,        nullsys,        idcioctl },
                    112: #endif
                    113:        { "rl", rlstrategy,     rlopen,         nullsys,        rlioctl },
                    114: #ifndef BOOT
                    115:        { "ts", tsstrategy,     tsopen,         tsclose,        nullioctl },
                    116: #if defined(VAX780) || defined(VAX750)
                    117:        { "ht", htstrategy,     htopen,         htclose,        nullioctl },
                    118:        { "mt", mtstrategy,     mtopen,         mtclose,        nullioctl },
                    119: #endif
                    120:        { "tm", tmstrategy,     tmopen,         tmclose,        nullioctl },
                    121:        { "ut", utstrategy,     utopen,         utclose,        nullioctl },
                    122: #endif
                    123:        { 0, 0, 0, 0, 0 },
                    124: };

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.