Changeset e2d97d7 in mainline
- Timestamp:
- 2009-03-12T18:05:28Z (16 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 99495b6
- Parents:
- a2a2a34
- File:
-
- 1 edited
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 50 #define TLB_KSTACK_WIRED_INDEX 45 #define TLB_WIRED 1 46 #define TLB_KSTACK_WIRED_INDEX 0 51 47 52 #define TLB_PAGE_MASK_4K 53 #define TLB_PAGE_MASK_16K 54 #define TLB_PAGE_MASK_64K 55 #define TLB_PAGE_MASK_256K 56 #define TLB_PAGE_MASK_1M 57 #define TLB_PAGE_MASK_4M 58 #define TLB_PAGE_MASK_16M 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 61 #define PAGE_CACHEABLE_EXC_WRITE 56 #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; 67 unsigned pfn : 24; 68 unsigned c : 3; 69 unsigned d : 1; 70 unsigned v : 1; 71 unsigned g : 1; 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; 74 unsigned v : 1; 75 unsigned d : 1; 76 unsigned c : 3; 77 unsigned pfn : 24; 78 unsigned : 2; 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) 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.