Changeset e2d97d7 in mainline for kernel/arch/mips32/include
- Timestamp:
- 2009-03-12T18:05:28Z (17 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 99495b6
- Parents:
- a2a2a34
- File:
-
- 1 edited
-
kernel/arch/mips32/include/mm/tlb.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/mips32/include/mm/tlb.h
ra2a2a34 re2d97d7 27 27 */ 28 28 29 /** @addtogroup mips32mm 29 /** @addtogroup mips32mm 30 30 * @{ 31 31 */ … … 41 41 #include <arch/exception.h> 42 42 43 #ifdef TLBCNT 44 # define TLB_ENTRY_COUNT TLBCNT 45 #else 46 # define TLB_ENTRY_COUNT 48 47 #endif 43 #define TLB_ENTRY_COUNT 48 48 44 49 #define TLB_WIRED 150 #define TLB_KSTACK_WIRED_INDEX 045 #define TLB_WIRED 1 46 #define TLB_KSTACK_WIRED_INDEX 0 51 47 52 #define TLB_PAGE_MASK_4K (0x000 << 13)53 #define TLB_PAGE_MASK_16K (0x003 << 13)54 #define TLB_PAGE_MASK_64K (0x00f << 13)55 #define TLB_PAGE_MASK_256K (0x03f << 13)56 #define TLB_PAGE_MASK_1M (0x0ff << 13)57 #define TLB_PAGE_MASK_4M (0x3ff << 13)58 #define TLB_PAGE_MASK_16M (0xfff << 13)48 #define TLB_PAGE_MASK_4K (0x000 << 13) 49 #define TLB_PAGE_MASK_16K (0x003 << 13) 50 #define TLB_PAGE_MASK_64K (0x00f << 13) 51 #define TLB_PAGE_MASK_256K (0x03f << 13) 52 #define TLB_PAGE_MASK_1M (0x0ff << 13) 53 #define TLB_PAGE_MASK_4M (0x3ff << 13) 54 #define TLB_PAGE_MASK_16M (0xfff << 13) 59 55 60 #define PAGE_UNCACHED 261 #define PAGE_CACHEABLE_EXC_WRITE 556 #define PAGE_UNCACHED 2 57 #define PAGE_CACHEABLE_EXC_WRITE 5 62 58 63 59 typedef union { 64 60 struct { 65 61 #ifdef BIG_ENDIAN 66 unsigned : 2; /* zero */67 unsigned pfn : 24; /* frame number */68 unsigned c : 3; /* cache coherency attribute */69 unsigned d : 1; /* dirty/write-protect bit */70 unsigned v : 1; /* valid bit */71 unsigned g : 1; /* global bit */62 unsigned : 2; /* zero */ 63 unsigned pfn : 24; /* frame number */ 64 unsigned c : 3; /* cache coherency attribute */ 65 unsigned d : 1; /* dirty/write-protect bit */ 66 unsigned v : 1; /* valid bit */ 67 unsigned g : 1; /* global bit */ 72 68 #else 73 unsigned g : 1; /* global bit */74 unsigned v : 1; /* valid bit */75 unsigned d : 1; /* dirty/write-protect bit */76 unsigned c : 3; /* cache coherency attribute */77 unsigned pfn : 24; /* frame number */78 unsigned : 2; /* zero */69 unsigned g : 1; /* global bit */ 70 unsigned v : 1; /* valid bit */ 71 unsigned d : 1; /* dirty/write-protect bit */ 72 unsigned c : 3; /* cache coherency attribute */ 73 unsigned pfn : 24; /* frame number */ 74 unsigned : 2; /* zero */ 79 75 #endif 80 76 } __attribute__ ((packed)); … … 164 160 } 165 161 166 #define tlb_invalidate(asid) tlb_invalidate_asid(asid)162 #define tlb_invalidate(asid) tlb_invalidate_asid(asid) 167 163 168 164 extern void tlb_invalid(istate_t *istate);
Note:
See TracChangeset
for help on using the changeset viewer.
