Rev 1982 | Rev 2008 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1982 | Rev 1996 | ||
---|---|---|---|
Line 120... | Line 120... | ||
120 | ! write DTLB tag |
120 | ! write DTLB tag |
121 | SET_TLB_TAG(g1, MEM_CONTEXT_KERNEL) |
121 | SET_TLB_TAG(g1, MEM_CONTEXT_KERNEL) |
122 | stxa %g1, [VA_DMMU_TAG_ACCESS] %asi |
122 | stxa %g1, [VA_DMMU_TAG_ACCESS] %asi |
123 | membar #Sync |
123 | membar #Sync |
124 | 124 | ||
- | 125 | #ifdef CONFIG_VIRT_IDX_CACHE |
|
- | 126 | #define TTE_LOW_DATA(imm) (TTE_CP | TTE_CV | TTE_P | LMA | (imm)) |
|
- | 127 | #else /* CONFIG_VIRT_IDX_CACHE */ |
|
- | 128 | #define TTE_LOW_DATA(imm) (TTE_CP | TTE_P | LMA | (imm)) |
|
- | 129 | #endif /* CONFIG_VIRT_IDX_CACHE */ |
|
- | 130 | ||
125 | #define SET_TLB_DATA(r1, r2, imm) \ |
131 | #define SET_TLB_DATA(r1, r2, imm) \ |
126 | set TTE_CV | TTE_CP | TTE_P | LMA | imm, %r1; \ |
132 | set TTE_LOW_DATA(imm), %r1; \ |
127 | or %r1, %l5, %r1; \ |
133 | or %r1, %l5, %r1; \ |
128 | mov PAGESIZE_4M, %r2; \ |
134 | mov PAGESIZE_4M, %r2; \ |
129 | sllx %r2, TTE_SIZE_SHIFT, %r2; \ |
135 | sllx %r2, TTE_SIZE_SHIFT, %r2; \ |
130 | or %r1, %r2, %r1; \ |
136 | or %r1, %r2, %r1; \ |
131 | mov 1, %r2; \ |
137 | mov 1, %r2; \ |
Line 346... | Line 352... | ||
346 | * In runtime, it is further modified to reflect the starting address of |
352 | * In runtime, it is further modified to reflect the starting address of |
347 | * physical memory. |
353 | * physical memory. |
348 | */ |
354 | */ |
349 | .global kernel_8k_tlb_data_template |
355 | .global kernel_8k_tlb_data_template |
350 | kernel_8k_tlb_data_template: |
356 | kernel_8k_tlb_data_template: |
- | 357 | #ifdef CONFIG_VIRT_IDX_CACHE |
|
- | 358 | .quad ((1 << TTE_V_SHIFT) | (PAGESIZE_8K << TTE_SIZE_SHIFT) | TTE_CP | TTE_CV | TTE_P | TTE_W) |
|
- | 359 | #else /* CONFIG_VIRT_IDX_CACHE */ |
|
351 | .quad ((1 << TTE_V_SHIFT) | TTE_CV | TTE_CP | TTE_P | TTE_W) |
360 | .quad ((1 << TTE_V_SHIFT) | (PAGESIZE_8K << TTE_SIZE_SHIFT) | TTE_CP | TTE_P | TTE_W) |
- | 361 | #endif /* CONFIG_VIRT_IDX_CACHE */ |