Annotation of xinu/sys/ethwstrt.c, revision 1.1.1.1

1.1       root        1: /* ethwstrt.c - ethwstrt */
                      2: 
                      3: #include <conf.h>
                      4: #include <kernel.h>
                      5: #include <proc.h>
                      6: #include <network.h>
                      7: #include <qbus.h>
                      8: 
                      9: /*------------------------------------------------------------------------
                     10:  *  ethwstrt - start an ethernet write operation on the DEQNA
                     11:  *------------------------------------------------------------------------
                     12:  */
                     13: 
                     14: ethwstrt(etptr, buf, len, setup)
                     15:        struct  etblk   *etptr;
                     16:        char    *buf;
                     17:        int     len;
                     18:        int     setup;
                     19: {
                     20:        register struct dcmd    *dcmptr;
                     21:        register struct dqregs  *dqptr;
                     22: 
                     23:        dqptr = etptr->eioaddr;
                     24:        while (! (dqptr->d_csr & DQ_XLI) )
                     25:                ;
                     26:        etptr->etwtry = EXRETRY;
                     27:        dcmptr = etptr->ewcmd;
                     28:        dcmptr->dc_bufh = DC_VALID | DC_ENDM | (etptr->etsetup = setup) |
                     29:                            hiQ2low(buf);
                     30:        if (isodd(len))
                     31:                dcmptr->dc_bufh |= DC_LBIT;
                     32:        dcmptr->dc_buf  = (short) buf;
                     33:        dcmptr->dc_len = dqlen(len);
                     34:        dcmptr->dc_st1 = dcmptr->dc_st2 = DC_INIT;
                     35:        dcmptr->dc_flag = DC_NUSED;
                     36:        dqptr->d_wcmd = (short) dcmptr;
                     37:        dqptr->d_wcmdh = hiQ2low(dcmptr);
                     38: }

unix.superglobalmegacorp.com

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