Annotation of xinu/sys/qmapinit.c, revision 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.