11 #include <asm/mmu_context.h>
15 #define UPDATE_TLB_SEL_IDX(val) \
17 unsigned long tlb_sel; \
19 tlb_sel = REG_FIELD(mmu, rw_mm_tlb_sel, idx, val); \
20 SUPP_REG_WR(RW_MM_TLB_SEL, tlb_sel); \
23 #define UPDATE_TLB_HILO(tlb_hi, tlb_lo) \
25 SUPP_REG_WR(RW_MM_TLB_HI, tlb_hi); \
26 SUPP_REG_WR(RW_MM_TLB_LO, tlb_lo); \
50 unsigned long mmu_tlb_hi;
51 unsigned long mmu_tlb_sel;
59 for (mmu = 1; mmu <= 2; mmu++) {
66 |
REG_FIELD(mmu, rw_mm_tlb_hi, vpn, i & 0xf));
84 unsigned long page_id;
86 unsigned long mmu_tlb_hi;
96 for (mmu = 1; mmu <= 2; mmu++) {
105 if ((tlb_hi & 0xff) == page_id) {
125 unsigned long page_id;
127 unsigned long tlb_hi;
128 unsigned long mmu_tlb_hi;
130 page_id = vma->
vm_mm->context.page_id;
143 for (mmu = 1; mmu <= 2; mmu++) {
150 if (((tlb_hi & 0xff) == page_id) &&
186 spin_lock(&mmu_context_lock);
188 cpumask_set_cpu(cpu, mm_cpumask(next));
189 spin_unlock(&mmu_context_lock);