diff options
Diffstat (limited to 'arch/sh/mm/tlbflush_32.c')
-rw-r--r-- | arch/sh/mm/tlbflush_32.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/sh/mm/tlbflush_32.c b/arch/sh/mm/tlbflush_32.c index 3fbe03ce8fe..a6a20d6de4c 100644 --- a/arch/sh/mm/tlbflush_32.c +++ b/arch/sh/mm/tlbflush_32.c | |||
@@ -119,3 +119,19 @@ void local_flush_tlb_mm(struct mm_struct *mm) | |||
119 | local_irq_restore(flags); | 119 | local_irq_restore(flags); |
120 | } | 120 | } |
121 | } | 121 | } |
122 | |||
123 | void __flush_tlb_global(void) | ||
124 | { | ||
125 | unsigned long flags; | ||
126 | |||
127 | local_irq_save(flags); | ||
128 | |||
129 | /* | ||
130 | * This is the most destructive of the TLB flushing options, | ||
131 | * and will tear down all of the UTLB/ITLB mappings, including | ||
132 | * wired entries. | ||
133 | */ | ||
134 | __raw_writel(__raw_readl(MMUCR) | MMUCR_TI, MMUCR); | ||
135 | |||
136 | local_irq_restore(flags); | ||
137 | } | ||