diff options
Diffstat (limited to 'arch/sh/mm/tlb-sh4.c')
-rw-r--r-- | arch/sh/mm/tlb-sh4.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/sh/mm/tlb-sh4.c b/arch/sh/mm/tlb-sh4.c index 7d3c63e707a5..8cf550e2570f 100644 --- a/arch/sh/mm/tlb-sh4.c +++ b/arch/sh/mm/tlb-sh4.c | |||
@@ -43,9 +43,12 @@ void __update_tlb(struct vm_area_struct *vma, unsigned long address, pte_t pte) | |||
43 | */ | 43 | */ |
44 | ctrl_outl(pte.pte_high, MMU_PTEA); | 44 | ctrl_outl(pte.pte_high, MMU_PTEA); |
45 | #else | 45 | #else |
46 | if (cpu_data->flags & CPU_HAS_PTEA) | 46 | if (cpu_data->flags & CPU_HAS_PTEA) { |
47 | /* TODO: make this look less hacky */ | 47 | /* The last 3 bits and the first one of pteval contains |
48 | ctrl_outl(((pteval >> 28) & 0xe) | (pteval & 0x1), MMU_PTEA); | 48 | * the PTEA timing control and space attribute bits |
49 | */ | ||
50 | ctrl_outl(copy_ptea_attributes(pteval), MMU_PTEA); | ||
51 | } | ||
49 | #endif | 52 | #endif |
50 | 53 | ||
51 | /* Set PTEL register */ | 54 | /* Set PTEL register */ |