Annotation of researchv9/sys/sun3/mmu.h, revision 1.1

1.1     ! root        1: /*      @(#)mmu.h 1.1 86/02/03 SMI      */
        !             2: 
        !             3: /*
        !             4:  * Copyright (c) 1985 by Sun Microsystems, Inc.
        !             5:  */
        !             6: 
        !             7: /* 
        !             8:  * Sun-3 memory management.
        !             9:  */
        !            10: #define KCONTEXT        0      /* Kernel context (no valid user pages) */
        !            11: #define        NCONTEXT         8      /* Number of contexts */
        !            12: #define        CONTEXTMASK     (NCONTEXT-1)
        !            13: 
        !            14: /*
        !            15:  * Hardware segment and page registers and constants.
        !            16:  */
        !            17: #define        NSEGMAP 2048            /* # of segments per context */
        !            18: #define        SEGINV  (NPMEG-1)       /* invalid pmeg - no access */
        !            19: #define        NPAGSEG 16              /* # of pages per segment */
        !            20: #define        NPME    4096            /* number of hardware page map entries */
        !            21: #define        NPMEG   (NPME/NPAGSEG)  /* # of pme groups (segment allocation) */
        !            22: 
        !            23: /*
        !            24:  * Function code register values.
        !            25:  */
        !            26: #define        FC_UD   1               /* user data */
        !            27: #define        FC_UP   2               /* user program */
        !            28: #define        FC_MAP  3               /* Sun-3 memory maps */
        !            29: #define        FC_SD   5               /* supervisor data */
        !            30: #define        FC_SP   6               /* supervisor program */
        !            31: #define        FC_CPU  7               /* cpu space */
        !            32: 
        !            33: /*
        !            34:  * FC_MAP base addresses
        !            35:  */
        !            36: #define        IDPROMBASE      0x00000000      /* id prom base */
        !            37: #define        PAGEBASE        0x10000000      /* page map base */
        !            38: #define        SEGMENTBASE     0x20000000      /* segment map base */
        !            39: #define        CONTEXTBASE     0x30000000      /* context map base */
        !            40: 
        !            41: #define IDPROMSIZE     0x20            /* size of id prom in bytes */
        !            42: 
        !            43: /*
        !            44:  * Masks for relevant bits of virtual address
        !            45:  * when accessing control space devices
        !            46:  */
        !            47: #define        PAGEADDRBITS    0x0FFFE000      /* page map virtual address mask */
        !            48: #define        SEGMENTADDRBITS 0x0FFE0000      /* segment map virtual address mask */
        !            49: 
        !            50: /*
        !            51:  * 68020 Cache Control Register
        !            52:  */
        !            53: #define CACHE_ENABLE   0x1     /* enable the cache */
        !            54: #define CACHE_FREEZE   0x2     /* freeze the cache */
        !            55: #define CACHE_CLRENTRY 0x4     /* clear entry specified by cache addr reg */
        !            56: #define CACHE_CLEAR    0x8     /* clear entire cache */

unix.superglobalmegacorp.com

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