m8820x_pte.h File Reference

Back to the index.

Macros | Typedefs
m8820x_pte.h File Reference

Go to the source code of this file.

Macros

#define SDT_BITS   10 /* M88K segment table size bits */
 
#define PDT_BITS   10 /* M88K page table size bits */
 
#define PG_BITS   PAGE_SHIFT /* M88K hardware page size bits */
 
#define PG_FRAME   0xfffff000
 
#define PG_SHIFT   PG_BITS
 
#define PG_PFNUM(x)   (((x) & PG_FRAME) >> PG_SHIFT)
 
#define CACHE_DFL   0x00000000
 
#define CACHE_INH   0x00000040 /* cache inhibit */
 
#define CACHE_GLOBAL   0x00000080 /* global scope */
 
#define CACHE_WT   0x00000200 /* write through */
 
#define CACHE_MASK   (CACHE_INH | CACHE_GLOBAL | CACHE_WT)
 
#define APR_V   0x00000001 /* valid bit */
 
#define PATC_ENTRIES   56
 
#define BATC_V   0x00000001
 
#define BATC_PROT   0x00000002
 
#define BATC_INH   0x00000004
 
#define BATC_GLOBAL   0x00000008
 
#define BATC_WT   0x00000010
 
#define BATC_SO   0x00000020
 
#define SG_V   0x00000001
 
#define SG_NV   0x00000000
 
#define SG_PROT   0x00000004
 
#define SG_RO   0x00000004
 
#define SG_RW   0x00000000
 
#define SG_SO   0x00000100
 
#define SDT_VALID(sdt)   (*(sdt) & SG_V)
 
#define SDT_SUP(sdt)   (*(sdt) & SG_SO)
 
#define SDT_WP(sdt)   (*(sdt) & SG_PROT)
 
#define PG_V   0x00000001
 
#define PG_NV   0x00000000
 
#define PG_PROT   0x00000004
 
#define PG_U   0x00000008
 
#define PG_M   0x00000010
 
#define PG_M_U   0x00000018
 
#define PG_RO   0x00000004
 
#define PG_RW   0x00000000
 
#define PG_SO   0x00000100
 
#define PG_W   0x00000020 /* XXX unused but reserved field */
 
#define PG_U0   0x00000400 /* U0 bit for M88110 */
 
#define PG_U1   0x00000800 /* U1 bit for M88110 */
 
#define PDT_VALID(pte)   (*(pte) & PG_V)
 
#define PDT_SUP(pte)   (*(pte) & PG_SO)
 
#define PDT_WP(pte)   (*(pte) & PG_PROT)
 
#define IND_V   0x00000001
 
#define IND_NV   0x00000000
 
#define IND_MASKED   0x00000002
 
#define IND_UNMASKED   0x00000003
 
#define IND_MASK   0x00000003
 
#define IND_FRAME   0xfffffffc
 
#define IND_SHIFT   2
 
#define IND_PDA(x)   ((x) & IND_FRAME >> IND_SHIFT)
 
#define SDT_ENTRIES   (1<<(SDT_BITS))
 
#define PDT_ENTRIES   (1<<(PDT_BITS))
 
#define SDT_SIZE   (sizeof(sdt_entry_t) * SDT_ENTRIES)
 
#define PDT_SIZE   (sizeof(pt_entry_t) * PDT_ENTRIES)
 
#define SDT_SHIFT   (PDT_BITS + PG_BITS)
 
#define PDT_SHIFT   (PG_BITS)
 
#define SDT_MASK   (((1 << SDT_BITS) - 1) << SDT_SHIFT)
 
#define PDT_MASK   (((1 << PDT_BITS) - 1) << PDT_SHIFT)
 
#define SDTIDX(va)   (((va) & SDT_MASK) >> SDT_SHIFT)
 
#define PDTIDX(va)   (((va) & PDT_MASK) >> PDT_SHIFT)
 
#define BATC_BLKSHIFT   19
 
#define BATC_BLKBYTES   (1 << BATC_BLKSHIFT)
 
#define BATC_BLKMASK   (BATC_BLKBYTES-1)
 
#define BATC_MAX   8
 
#define BATC_PSHIFT   6
 
#define BATC_VSHIFT   (BATC_PSHIFT + (32 - BATC_BLKSHIFT))
 
#define BATC_BLK_ALIGNED(x)   ((x & BATC_BLKMASK) == 0)
 
#define M88K_BTOBLK(x)   (x >> BATC_BLKSHIFT)
 

Typedefs

typedef u_int32_t apr_t
 
typedef u_int32_t sdt_entry_t
 
typedef u_int32_t pt_entry_t
 
typedef u_int32_t pt_ind_entry_t
 

Macro Definition Documentation

◆ APR_V

#define APR_V   0x00000001 /* valid bit */

Definition at line 81 of file m8820x_pte.h.

Referenced by m88k_translate_v2p().

◆ BATC_BLK_ALIGNED

#define BATC_BLK_ALIGNED (   x)    ((x & BATC_BLKMASK) == 0)

Definition at line 203 of file m8820x_pte.h.

◆ BATC_BLKBYTES

#define BATC_BLKBYTES   (1 << BATC_BLKSHIFT)

Definition at line 193 of file m8820x_pte.h.

◆ BATC_BLKMASK

#define BATC_BLKMASK   (BATC_BLKBYTES-1)

Definition at line 195 of file m8820x_pte.h.

◆ BATC_BLKSHIFT

#define BATC_BLKSHIFT   19

Definition at line 191 of file m8820x_pte.h.

◆ BATC_GLOBAL

#define BATC_GLOBAL   0x00000008

Definition at line 96 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump().

◆ BATC_INH

#define BATC_INH   0x00000004

Definition at line 95 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump().

◆ BATC_MAX

#define BATC_MAX   8

Definition at line 197 of file m8820x_pte.h.

◆ BATC_PROT

#define BATC_PROT   0x00000002

Definition at line 94 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump(), and m88k_translate_v2p().

◆ BATC_PSHIFT

#define BATC_PSHIFT   6

Definition at line 200 of file m8820x_pte.h.

◆ BATC_SO

#define BATC_SO   0x00000020

Definition at line 98 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump(), and m88k_translate_v2p().

◆ BATC_V

#define BATC_V   0x00000001

Definition at line 93 of file m8820x_pte.h.

Referenced by m88k_translate_v2p().

◆ BATC_VSHIFT

#define BATC_VSHIFT   (BATC_PSHIFT + (32 - BATC_BLKSHIFT))

Definition at line 201 of file m8820x_pte.h.

◆ BATC_WT

#define BATC_WT   0x00000010

Definition at line 97 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump().

◆ CACHE_DFL

#define CACHE_DFL   0x00000000

Definition at line 68 of file m8820x_pte.h.

◆ CACHE_GLOBAL

#define CACHE_GLOBAL   0x00000080 /* global scope */

Definition at line 70 of file m8820x_pte.h.

◆ CACHE_INH

#define CACHE_INH   0x00000040 /* cache inhibit */

Definition at line 69 of file m8820x_pte.h.

◆ CACHE_MASK

#define CACHE_MASK   (CACHE_INH | CACHE_GLOBAL | CACHE_WT)

Definition at line 73 of file m8820x_pte.h.

◆ CACHE_WT

#define CACHE_WT   0x00000200 /* write through */

Definition at line 71 of file m8820x_pte.h.

◆ IND_FRAME

#define IND_FRAME   0xfffffffc

Definition at line 154 of file m8820x_pte.h.

◆ IND_MASK

#define IND_MASK   0x00000003

Definition at line 152 of file m8820x_pte.h.

◆ IND_MASKED

#define IND_MASKED   0x00000002

Definition at line 150 of file m8820x_pte.h.

◆ IND_NV

#define IND_NV   0x00000000

Definition at line 149 of file m8820x_pte.h.

◆ IND_PDA

#define IND_PDA (   x)    ((x) & IND_FRAME >> IND_SHIFT)

Definition at line 157 of file m8820x_pte.h.

◆ IND_SHIFT

#define IND_SHIFT   2

Definition at line 155 of file m8820x_pte.h.

◆ IND_UNMASKED

#define IND_UNMASKED   0x00000003

Definition at line 151 of file m8820x_pte.h.

◆ IND_V

#define IND_V   0x00000001

Definition at line 148 of file m8820x_pte.h.

◆ M88K_BTOBLK

#define M88K_BTOBLK (   x)    (x >> BATC_BLKSHIFT)

Definition at line 205 of file m8820x_pte.h.

◆ PATC_ENTRIES

#define PATC_ENTRIES   56

Definition at line 87 of file m8820x_pte.h.

◆ PDT_BITS

#define PDT_BITS   10 /* M88K page table size bits */

Definition at line 55 of file m8820x_pte.h.

◆ PDT_ENTRIES

#define PDT_ENTRIES   (1<<(PDT_BITS))

Definition at line 164 of file m8820x_pte.h.

◆ PDT_MASK

#define PDT_MASK   (((1 << PDT_BITS) - 1) << PDT_SHIFT)

Definition at line 181 of file m8820x_pte.h.

◆ PDT_SHIFT

#define PDT_SHIFT   (PG_BITS)

Definition at line 178 of file m8820x_pte.h.

◆ PDT_SIZE

#define PDT_SIZE   (sizeof(pt_entry_t) * PDT_ENTRIES)

Definition at line 171 of file m8820x_pte.h.

◆ PDT_SUP

#define PDT_SUP (   pte)    (*(pte) & PG_SO)

Definition at line 138 of file m8820x_pte.h.

◆ PDT_VALID

#define PDT_VALID (   pte)    (*(pte) & PG_V)

Definition at line 137 of file m8820x_pte.h.

◆ PDT_WP

#define PDT_WP (   pte)    (*(pte) & PG_PROT)

Definition at line 139 of file m8820x_pte.h.

◆ PDTIDX

#define PDTIDX (   va)    (((va) & PDT_MASK) >> PDT_SHIFT)

Definition at line 184 of file m8820x_pte.h.

◆ PG_BITS

#define PG_BITS   PAGE_SHIFT /* M88K hardware page size bits */

Definition at line 56 of file m8820x_pte.h.

◆ PG_FRAME

#define PG_FRAME   0xfffff000

Definition at line 63 of file m8820x_pte.h.

◆ PG_M

#define PG_M   0x00000010

◆ PG_M_U

#define PG_M_U   0x00000018

Definition at line 129 of file m8820x_pte.h.

◆ PG_NV

#define PG_NV   0x00000000

Definition at line 125 of file m8820x_pte.h.

◆ PG_PFNUM

#define PG_PFNUM (   x)    (((x) & PG_FRAME) >> PG_SHIFT)

Definition at line 65 of file m8820x_pte.h.

◆ PG_PROT

#define PG_PROT   0x00000004

Definition at line 126 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump(), and m88k_translate_v2p().

◆ PG_RO

#define PG_RO   0x00000004

Definition at line 130 of file m8820x_pte.h.

Referenced by m88k_translate_v2p().

◆ PG_RW

#define PG_RW   0x00000000

Definition at line 131 of file m8820x_pte.h.

◆ PG_SHIFT

#define PG_SHIFT   PG_BITS

Definition at line 64 of file m8820x_pte.h.

◆ PG_SO

#define PG_SO   0x00000100

Definition at line 132 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump(), and m88k_translate_v2p().

◆ PG_U

#define PG_U   0x00000008

◆ PG_U0

#define PG_U0   0x00000400 /* U0 bit for M88110 */

Definition at line 134 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump().

◆ PG_U1

#define PG_U1   0x00000800 /* U1 bit for M88110 */

Definition at line 135 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump().

◆ PG_V

#define PG_V   0x00000001

Definition at line 124 of file m8820x_pte.h.

Referenced by m88k_cpu_tlbdump(), and m88k_translate_v2p().

◆ PG_W

#define PG_W   0x00000020 /* XXX unused but reserved field */

Definition at line 133 of file m8820x_pte.h.

◆ SDT_BITS

#define SDT_BITS   10 /* M88K segment table size bits */

Definition at line 54 of file m8820x_pte.h.

◆ SDT_ENTRIES

#define SDT_ENTRIES   (1<<(SDT_BITS))

Definition at line 163 of file m8820x_pte.h.

◆ SDT_MASK

#define SDT_MASK   (((1 << SDT_BITS) - 1) << SDT_SHIFT)

Definition at line 180 of file m8820x_pte.h.

◆ SDT_SHIFT

#define SDT_SHIFT   (PDT_BITS + PG_BITS)

Definition at line 177 of file m8820x_pte.h.

◆ SDT_SIZE

#define SDT_SIZE   (sizeof(sdt_entry_t) * SDT_ENTRIES)

Definition at line 170 of file m8820x_pte.h.

◆ SDT_SUP

#define SDT_SUP (   sdt)    (*(sdt) & SG_SO)

Definition at line 115 of file m8820x_pte.h.

◆ SDT_VALID

#define SDT_VALID (   sdt)    (*(sdt) & SG_V)

Definition at line 114 of file m8820x_pte.h.

◆ SDT_WP

#define SDT_WP (   sdt)    (*(sdt) & SG_PROT)

Definition at line 116 of file m8820x_pte.h.

◆ SDTIDX

#define SDTIDX (   va)    (((va) & SDT_MASK) >> SDT_SHIFT)

Definition at line 183 of file m8820x_pte.h.

◆ SG_NV

#define SG_NV   0x00000000

Definition at line 108 of file m8820x_pte.h.

◆ SG_PROT

#define SG_PROT   0x00000004

Definition at line 109 of file m8820x_pte.h.

◆ SG_RO

#define SG_RO   0x00000004

Definition at line 110 of file m8820x_pte.h.

Referenced by m88k_translate_v2p().

◆ SG_RW

#define SG_RW   0x00000000

Definition at line 111 of file m8820x_pte.h.

◆ SG_SO

#define SG_SO   0x00000100

Definition at line 112 of file m8820x_pte.h.

Referenced by m88k_translate_v2p().

◆ SG_V

#define SG_V   0x00000001

Definition at line 107 of file m8820x_pte.h.

Referenced by m88k_translate_v2p().

Typedef Documentation

◆ apr_t

typedef u_int32_t apr_t

Definition at line 79 of file m8820x_pte.h.

◆ pt_entry_t

typedef u_int32_t pt_entry_t

Definition at line 122 of file m8820x_pte.h.

◆ pt_ind_entry_t

typedef u_int32_t pt_ind_entry_t

Definition at line 145 of file m8820x_pte.h.

◆ sdt_entry_t

typedef u_int32_t sdt_entry_t

Definition at line 105 of file m8820x_pte.h.


Generated on Fri Dec 7 2018 19:52:23 for GXemul by doxygen 1.8.13