diff options
| author | Grant Grundler <grundler@parisc-linux.org> | 2005-10-21 22:40:24 -0400 |
|---|---|---|
| committer | Kyle McMartin <kyle@parisc-linux.org> | 2005-10-21 22:40:24 -0400 |
| commit | 04d472dc83388c59deb6241e9aed841926aa1c8c (patch) | |
| tree | b6ebff62c0f62416f9c84bb24e1d6b2901661e02 /include/asm-parisc | |
| parent | 896a375623c3643a3f189353e7d4828c48a7fdf8 (diff) | |
[PARISC] Move pa_tlb_lock to tlb_flush.h
move pa_tlb_lock and it's primary consumers to tlb_flush.h
Future step will be to move spinlock_t definition out of system.h.
Signed-off-by: Grant Grundler <grundler@parisc-linux.org>
Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Diffstat (limited to 'include/asm-parisc')
| -rw-r--r-- | include/asm-parisc/system.h | 19 | ||||
| -rw-r--r-- | include/asm-parisc/tlbflush.h | 20 |
2 files changed, 20 insertions, 19 deletions
diff --git a/include/asm-parisc/system.h b/include/asm-parisc/system.h index 26ff844a21c1..a25e9dcd2e79 100644 --- a/include/asm-parisc/system.h +++ b/include/asm-parisc/system.h | |||
| @@ -164,25 +164,6 @@ static inline void set_eiem(unsigned long val) | |||
| 164 | #endif | 164 | #endif |
| 165 | 165 | ||
| 166 | #define KERNEL_START (0x10100000 - 0x1000) | 166 | #define KERNEL_START (0x10100000 - 0x1000) |
| 167 | |||
| 168 | /* This is for the serialisation of PxTLB broadcasts. At least on the | ||
| 169 | * N class systems, only one PxTLB inter processor broadcast can be | ||
| 170 | * active at any one time on the Merced bus. This tlb purge | ||
| 171 | * synchronisation is fairly lightweight and harmless so we activate | ||
| 172 | * it on all SMP systems not just the N class. */ | ||
| 173 | #ifdef CONFIG_SMP | ||
| 174 | extern spinlock_t pa_tlb_lock; | ||
| 175 | |||
| 176 | #define purge_tlb_start(x) spin_lock(&pa_tlb_lock) | ||
| 177 | #define purge_tlb_end(x) spin_unlock(&pa_tlb_lock) | ||
| 178 | |||
| 179 | #else | ||
| 180 | |||
| 181 | #define purge_tlb_start(x) do { } while(0) | ||
| 182 | #define purge_tlb_end(x) do { } while (0) | ||
| 183 | |||
| 184 | #endif | ||
| 185 | |||
| 186 | #define arch_align_stack(x) (x) | 167 | #define arch_align_stack(x) (x) |
| 187 | 168 | ||
| 188 | #endif | 169 | #endif |
diff --git a/include/asm-parisc/tlbflush.h b/include/asm-parisc/tlbflush.h index efbb2d8625b1..84af4ab1fe51 100644 --- a/include/asm-parisc/tlbflush.h +++ b/include/asm-parisc/tlbflush.h | |||
| @@ -7,6 +7,26 @@ | |||
| 7 | #include <linux/mm.h> | 7 | #include <linux/mm.h> |
| 8 | #include <asm/mmu_context.h> | 8 | #include <asm/mmu_context.h> |
| 9 | 9 | ||
| 10 | |||
| 11 | /* This is for the serialisation of PxTLB broadcasts. At least on the | ||
| 12 | * N class systems, only one PxTLB inter processor broadcast can be | ||
| 13 | * active at any one time on the Merced bus. This tlb purge | ||
| 14 | * synchronisation is fairly lightweight and harmless so we activate | ||
| 15 | * it on all SMP systems not just the N class. */ | ||
| 16 | #ifdef CONFIG_SMP | ||
| 17 | extern spinlock_t pa_tlb_lock; | ||
| 18 | |||
| 19 | #define purge_tlb_start(x) spin_lock(&pa_tlb_lock) | ||
| 20 | #define purge_tlb_end(x) spin_unlock(&pa_tlb_lock) | ||
| 21 | |||
| 22 | #else | ||
| 23 | |||
| 24 | #define purge_tlb_start(x) do { } while(0) | ||
| 25 | #define purge_tlb_end(x) do { } while (0) | ||
| 26 | |||
| 27 | #endif | ||
| 28 | |||
| 29 | |||
| 10 | extern void flush_tlb_all(void); | 30 | extern void flush_tlb_all(void); |
| 11 | 31 | ||
| 12 | /* | 32 | /* |
