Annotation of xinu/sys/LSI/dskstrt.c, revision 1.1.1.1

1.1       root        1: /* dskstrt.c - dskstrt */
                      2: 
                      3: #include <conf.h>
                      4: #include <kernel.h>
                      5: #include <disk.h>
                      6: 
                      7: /*------------------------------------------------------------------------
                      8:  *  dskstrt  --  start an I/O operation on a disk device
                      9:  *------------------------------------------------------------------------
                     10:  */
                     11: dskstrt(dsptr)
                     12:        struct  dsblk   *dsptr;
                     13: {
                     14:        struct  xbdcb   *xptr;
                     15:        struct  dtc     *dtptr;
                     16:        struct  dreq    *drptr;
                     17: 
                     18:        /* build command for controller */
                     19: 
                     20:        drptr = dsptr->dreqlst;
                     21:        xptr = & dsptr->ddcb;
                     22:        xptr->xop    = (char) drptr->drop;              /* opcode       */
                     23:        xptr->xunit  = (char) 0;                        /* top addr bits*/
                     24:        xptr->xmaddr = (char) ((drptr->drdba>>8)&0377); /* mid addr bits*/
                     25:        xptr->xladdr = (char) (drptr->drdba & 0377);    /* low addr bits*/
                     26:        xptr->xcount = (char) 1;                        /* num of blocks*/
                     27:        xptr->xcntl  = (char) XRETRY;                   /* retry code   */
                     28: 
                     29:        /* feed command to controller through interface */
                     30: 
                     31:        dtptr = dsptr->dcsr;
                     32:        dtptr->dt_dar = drptr->drbuff;
                     33:        dtptr->dt_car = xptr;
                     34:        dtptr->dt_xdar = dtptr->dt_xcar = 0;
                     35:        dtptr->dt_csr = DTINTR | DTGO;
                     36: }

unix.superglobalmegacorp.com

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