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

1.1       root        1: /* qmapinit.c -- qmapinit */
                      2: 
                      3: #include <conf.h>
                      4: #include <kernel.h>
                      5: #include <qbus.h>
                      6: #include <mem.h>
                      7: #include <mach.h>
                      8: 
                      9: /*------------------------------------------------------------------------
                     10:  *  qmapinit -- initialize Microvax II qbus mapping registers
                     11:  *             warning: only 4 megs of memory are mapped for dma access
                     12:  *------------------------------------------------------------------------
                     13:  */
                     14: 
                     15: qmapinit()
                     16: {
                     17:        unsigned int    *pqmapreg;
                     18:                unsigned int    i;
                     19: 
                     20:        if (! isUVAXII)
                     21:                return(SYSERR);
                     22:        *QMMECSR = 1;           /* enable parity error detection */
                     23:        for (pqmapreg = QMAP, i = 0; i < QMNMREG; )
                     24:                *pqmapreg++ = QMREGV | i++;
                     25:        *QMIPCR = QMENAB;       /* enable bus mapping   */
                     26:        if ((int)maxaddr+sizeof(int)-1 > QMNMREG*PAGESIZE)
                     27:                kprintf("warning: dma only mapped for 1st %u bytes\n",
                     28:                        QMNMREG*PAGESIZE);
                     29:        return(OK);
                     30: }

unix.superglobalmegacorp.com

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