diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2007-10-11 18:46:15 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-10-11 18:46:15 -0400 |
commit | 10cc3529072d5415fb040018a8a99aa7a60190b6 (patch) | |
tree | fe07fb5112c9c34c2aecfac982155307bc168f07 /arch/mips/mm | |
parent | aeffdbbaff133b0c3989e20af5baa091d3d0b409 (diff) |
[MIPS] Allow hardwiring of the CPU type to a single type for optimization.
This saves a few k on systems which only ever ship with a single CPU type.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/mm')
-rw-r--r-- | arch/mips/mm/c-r4k.c | 12 | ||||
-rw-r--r-- | arch/mips/mm/c-tx39.c | 6 | ||||
-rw-r--r-- | arch/mips/mm/dma-default.c | 4 | ||||
-rw-r--r-- | arch/mips/mm/pg-r4k.c | 2 | ||||
-rw-r--r-- | arch/mips/mm/tlbex.c | 10 |
5 files changed, 17 insertions, 17 deletions
diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c index cf48371e5690..8b7b7c57baca 100644 --- a/arch/mips/mm/c-r4k.c +++ b/arch/mips/mm/c-r4k.c | |||
@@ -328,7 +328,7 @@ static inline void local_r4k___flush_cache_all(void * args) | |||
328 | r4k_blast_dcache(); | 328 | r4k_blast_dcache(); |
329 | r4k_blast_icache(); | 329 | r4k_blast_icache(); |
330 | 330 | ||
331 | switch (current_cpu_data.cputype) { | 331 | switch (current_cpu_type()) { |
332 | case CPU_R4000SC: | 332 | case CPU_R4000SC: |
333 | case CPU_R4000MC: | 333 | case CPU_R4000MC: |
334 | case CPU_R4400SC: | 334 | case CPU_R4400SC: |
@@ -377,10 +377,10 @@ static inline void local_r4k_flush_cache_mm(void * args) | |||
377 | * R4000SC and R4400SC indexed S-cache ops also invalidate primary | 377 | * R4000SC and R4400SC indexed S-cache ops also invalidate primary |
378 | * caches, so we can bail out early. | 378 | * caches, so we can bail out early. |
379 | */ | 379 | */ |
380 | if (current_cpu_data.cputype == CPU_R4000SC || | 380 | if (current_cpu_type() == CPU_R4000SC || |
381 | current_cpu_data.cputype == CPU_R4000MC || | 381 | current_cpu_type() == CPU_R4000MC || |
382 | current_cpu_data.cputype == CPU_R4400SC || | 382 | current_cpu_type() == CPU_R4400SC || |
383 | current_cpu_data.cputype == CPU_R4400MC) { | 383 | current_cpu_type() == CPU_R4400MC) { |
384 | r4k_blast_scache(); | 384 | r4k_blast_scache(); |
385 | return; | 385 | return; |
386 | } | 386 | } |
@@ -1197,7 +1197,7 @@ static void __init coherency_setup(void) | |||
1197 | * this bit and; some wire it to zero, others like Toshiba had the | 1197 | * this bit and; some wire it to zero, others like Toshiba had the |
1198 | * silly idea of putting something else there ... | 1198 | * silly idea of putting something else there ... |
1199 | */ | 1199 | */ |
1200 | switch (current_cpu_data.cputype) { | 1200 | switch (current_cpu_type()) { |
1201 | case CPU_R4000PC: | 1201 | case CPU_R4000PC: |
1202 | case CPU_R4000SC: | 1202 | case CPU_R4000SC: |
1203 | case CPU_R4000MC: | 1203 | case CPU_R4000MC: |
diff --git a/arch/mips/mm/c-tx39.c b/arch/mips/mm/c-tx39.c index 560a6de96556..9ea121e8cdce 100644 --- a/arch/mips/mm/c-tx39.c +++ b/arch/mips/mm/c-tx39.c | |||
@@ -69,7 +69,7 @@ static void tx39h_dma_cache_wback_inv(unsigned long addr, unsigned long size) | |||
69 | /* TX39H2,TX39H3 */ | 69 | /* TX39H2,TX39H3 */ |
70 | static inline void tx39_blast_dcache_page(unsigned long addr) | 70 | static inline void tx39_blast_dcache_page(unsigned long addr) |
71 | { | 71 | { |
72 | if (current_cpu_data.cputype != CPU_TX3912) | 72 | if (current_cpu_type() != CPU_TX3912) |
73 | blast_dcache16_page(addr); | 73 | blast_dcache16_page(addr); |
74 | } | 74 | } |
75 | 75 | ||
@@ -307,7 +307,7 @@ static __init void tx39_probe_cache(void) | |||
307 | TX39_CONF_DCS_SHIFT)); | 307 | TX39_CONF_DCS_SHIFT)); |
308 | 308 | ||
309 | current_cpu_data.icache.linesz = 16; | 309 | current_cpu_data.icache.linesz = 16; |
310 | switch (current_cpu_data.cputype) { | 310 | switch (current_cpu_type()) { |
311 | case CPU_TX3912: | 311 | case CPU_TX3912: |
312 | current_cpu_data.icache.ways = 1; | 312 | current_cpu_data.icache.ways = 1; |
313 | current_cpu_data.dcache.ways = 1; | 313 | current_cpu_data.dcache.ways = 1; |
@@ -341,7 +341,7 @@ void __init tx39_cache_init(void) | |||
341 | 341 | ||
342 | tx39_probe_cache(); | 342 | tx39_probe_cache(); |
343 | 343 | ||
344 | switch (current_cpu_data.cputype) { | 344 | switch (current_cpu_type()) { |
345 | case CPU_TX3912: | 345 | case CPU_TX3912: |
346 | /* TX39/H core (writethru direct-map cache) */ | 346 | /* TX39/H core (writethru direct-map cache) */ |
347 | flush_cache_all = tx39h_flush_icache_all; | 347 | flush_cache_all = tx39h_flush_icache_all; |
diff --git a/arch/mips/mm/dma-default.c b/arch/mips/mm/dma-default.c index f60b3dc0fc62..98b5e5bac02e 100644 --- a/arch/mips/mm/dma-default.c +++ b/arch/mips/mm/dma-default.c | |||
@@ -35,8 +35,8 @@ static inline unsigned long dma_addr_to_virt(dma_addr_t dma_addr) | |||
35 | static inline int cpu_is_noncoherent_r10000(struct device *dev) | 35 | static inline int cpu_is_noncoherent_r10000(struct device *dev) |
36 | { | 36 | { |
37 | return !plat_device_is_coherent(dev) && | 37 | return !plat_device_is_coherent(dev) && |
38 | (current_cpu_data.cputype == CPU_R10000 || | 38 | (current_cpu_type() == CPU_R10000 || |
39 | current_cpu_data.cputype == CPU_R12000); | 39 | current_cpu_type() == CPU_R12000); |
40 | } | 40 | } |
41 | 41 | ||
42 | void *dma_alloc_noncoherent(struct device *dev, size_t size, | 42 | void *dma_alloc_noncoherent(struct device *dev, size_t size, |
diff --git a/arch/mips/mm/pg-r4k.c b/arch/mips/mm/pg-r4k.c index c0294541d295..4f770ac885ce 100644 --- a/arch/mips/mm/pg-r4k.c +++ b/arch/mips/mm/pg-r4k.c | |||
@@ -354,7 +354,7 @@ void __init build_clear_page(void) | |||
354 | store_offset = 0; | 354 | store_offset = 0; |
355 | 355 | ||
356 | if (cpu_has_prefetch) { | 356 | if (cpu_has_prefetch) { |
357 | switch (current_cpu_data.cputype) { | 357 | switch (current_cpu_type()) { |
358 | case CPU_TX49XX: | 358 | case CPU_TX49XX: |
359 | /* TX49 supports only Pref_Load */ | 359 | /* TX49 supports only Pref_Load */ |
360 | pref_offset_clear = 0; | 360 | pref_offset_clear = 0; |
diff --git a/arch/mips/mm/tlbex.c b/arch/mips/mm/tlbex.c index 73250741a0f9..c3da4fefbcb4 100644 --- a/arch/mips/mm/tlbex.c +++ b/arch/mips/mm/tlbex.c | |||
@@ -827,7 +827,7 @@ static __initdata u32 final_handler[64]; | |||
827 | */ | 827 | */ |
828 | static __init void __maybe_unused build_tlb_probe_entry(u32 **p) | 828 | static __init void __maybe_unused build_tlb_probe_entry(u32 **p) |
829 | { | 829 | { |
830 | switch (current_cpu_data.cputype) { | 830 | switch (current_cpu_type()) { |
831 | /* Found by experiment: R4600 v2.0 needs this, too. */ | 831 | /* Found by experiment: R4600 v2.0 needs this, too. */ |
832 | case CPU_R4600: | 832 | case CPU_R4600: |
833 | case CPU_R5000: | 833 | case CPU_R5000: |
@@ -860,7 +860,7 @@ static __init void build_tlb_write_entry(u32 **p, struct label **l, | |||
860 | case tlb_indexed: tlbw = i_tlbwi; break; | 860 | case tlb_indexed: tlbw = i_tlbwi; break; |
861 | } | 861 | } |
862 | 862 | ||
863 | switch (current_cpu_data.cputype) { | 863 | switch (current_cpu_type()) { |
864 | case CPU_R4000PC: | 864 | case CPU_R4000PC: |
865 | case CPU_R4000SC: | 865 | case CPU_R4000SC: |
866 | case CPU_R4000MC: | 866 | case CPU_R4000MC: |
@@ -1158,7 +1158,7 @@ static __init void build_adjust_context(u32 **p, unsigned int ctx) | |||
1158 | unsigned int shift = 4 - (PTE_T_LOG2 + 1) + PAGE_SHIFT - 12; | 1158 | unsigned int shift = 4 - (PTE_T_LOG2 + 1) + PAGE_SHIFT - 12; |
1159 | unsigned int mask = (PTRS_PER_PTE / 2 - 1) << (PTE_T_LOG2 + 1); | 1159 | unsigned int mask = (PTRS_PER_PTE / 2 - 1) << (PTE_T_LOG2 + 1); |
1160 | 1160 | ||
1161 | switch (current_cpu_data.cputype) { | 1161 | switch (current_cpu_type()) { |
1162 | case CPU_VR41XX: | 1162 | case CPU_VR41XX: |
1163 | case CPU_VR4111: | 1163 | case CPU_VR4111: |
1164 | case CPU_VR4121: | 1164 | case CPU_VR4121: |
@@ -1188,7 +1188,7 @@ static __init void build_get_ptep(u32 **p, unsigned int tmp, unsigned int ptr) | |||
1188 | * in a different cacheline or a load instruction, probably any | 1188 | * in a different cacheline or a load instruction, probably any |
1189 | * memory reference, is between them. | 1189 | * memory reference, is between them. |
1190 | */ | 1190 | */ |
1191 | switch (current_cpu_data.cputype) { | 1191 | switch (current_cpu_type()) { |
1192 | case CPU_NEVADA: | 1192 | case CPU_NEVADA: |
1193 | i_LW(p, ptr, 0, ptr); | 1193 | i_LW(p, ptr, 0, ptr); |
1194 | GET_CONTEXT(p, tmp); /* get context reg */ | 1194 | GET_CONTEXT(p, tmp); /* get context reg */ |
@@ -1872,7 +1872,7 @@ void __init build_tlb_refill_handler(void) | |||
1872 | */ | 1872 | */ |
1873 | static int run_once = 0; | 1873 | static int run_once = 0; |
1874 | 1874 | ||
1875 | switch (current_cpu_data.cputype) { | 1875 | switch (current_cpu_type()) { |
1876 | case CPU_R2000: | 1876 | case CPU_R2000: |
1877 | case CPU_R3000: | 1877 | case CPU_R3000: |
1878 | case CPU_R3000A: | 1878 | case CPU_R3000A: |