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 | |
| 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>
| -rw-r--r-- | arch/mips/dec/ecc-berr.c | 2 | ||||
| -rw-r--r-- | arch/mips/dec/kn02xa-berr.c | 2 | ||||
| -rw-r--r-- | arch/mips/dec/prom/init.c | 8 | ||||
| -rw-r--r-- | arch/mips/kernel/traps.c | 6 | ||||
| -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 | ||||
| -rw-r--r-- | arch/mips/oprofile/common.c | 2 | ||||
| -rw-r--r-- | arch/mips/oprofile/op_model_mipsxx.c | 4 | ||||
| -rw-r--r-- | arch/mips/pci/pci-vr41xx.c | 2 | ||||
| -rw-r--r-- | arch/mips/vr41xx/common/bcu.c | 8 | ||||
| -rw-r--r-- | arch/mips/vr41xx/common/cmu.c | 16 | ||||
| -rw-r--r-- | arch/mips/vr41xx/common/giu.c | 2 | ||||
| -rw-r--r-- | arch/mips/vr41xx/common/icu.c | 76 | ||||
| -rw-r--r-- | arch/mips/vr41xx/common/pmu.c | 4 | ||||
| -rw-r--r-- | arch/mips/vr41xx/common/rtc.c | 2 | ||||
| -rw-r--r-- | arch/mips/vr41xx/common/siu.c | 2 | ||||
| -rw-r--r-- | include/asm-mips/cpu-features.h | 5 |
20 files changed, 89 insertions, 86 deletions
diff --git a/arch/mips/dec/ecc-berr.c b/arch/mips/dec/ecc-berr.c index 6d55e8aab668..6a17c9b508ea 100644 --- a/arch/mips/dec/ecc-berr.c +++ b/arch/mips/dec/ecc-berr.c | |||
| @@ -263,7 +263,7 @@ static inline void dec_kn03_be_init(void) | |||
| 263 | */ | 263 | */ |
| 264 | *mcr = (*mcr & ~(KN03_MCR_DIAGCHK | KN03_MCR_DIAGGEN)) | | 264 | *mcr = (*mcr & ~(KN03_MCR_DIAGCHK | KN03_MCR_DIAGGEN)) | |
| 265 | KN03_MCR_CORRECT; | 265 | KN03_MCR_CORRECT; |
| 266 | if (current_cpu_data.cputype == CPU_R4400SC) | 266 | if (current_cpu_type() == CPU_R4400SC) |
| 267 | *mbcs |= KN4K_MB_CSR_EE; | 267 | *mbcs |= KN4K_MB_CSR_EE; |
| 268 | fast_iob(); | 268 | fast_iob(); |
| 269 | } | 269 | } |
diff --git a/arch/mips/dec/kn02xa-berr.c b/arch/mips/dec/kn02xa-berr.c index 7a053aadcd3a..5f04545c3606 100644 --- a/arch/mips/dec/kn02xa-berr.c +++ b/arch/mips/dec/kn02xa-berr.c | |||
| @@ -132,7 +132,7 @@ void __init dec_kn02xa_be_init(void) | |||
| 132 | volatile u32 *mbcs = (void *)CKSEG1ADDR(KN4K_SLOT_BASE + KN4K_MB_CSR); | 132 | volatile u32 *mbcs = (void *)CKSEG1ADDR(KN4K_SLOT_BASE + KN4K_MB_CSR); |
| 133 | 133 | ||
| 134 | /* For KN04 we need to make sure EE (?) is enabled in the MB. */ | 134 | /* For KN04 we need to make sure EE (?) is enabled in the MB. */ |
| 135 | if (current_cpu_data.cputype == CPU_R4000SC) | 135 | if (current_cpu_type() == CPU_R4000SC) |
| 136 | *mbcs |= KN4K_MB_CSR_EE; | 136 | *mbcs |= KN4K_MB_CSR_EE; |
| 137 | fast_iob(); | 137 | fast_iob(); |
| 138 | 138 | ||
diff --git a/arch/mips/dec/prom/init.c b/arch/mips/dec/prom/init.c index 808c182fd3fa..93f1239af524 100644 --- a/arch/mips/dec/prom/init.c +++ b/arch/mips/dec/prom/init.c | |||
| @@ -108,8 +108,8 @@ void __init prom_init(void) | |||
| 108 | 108 | ||
| 109 | /* Were we compiled with the right CPU option? */ | 109 | /* Were we compiled with the right CPU option? */ |
| 110 | #if defined(CONFIG_CPU_R3000) | 110 | #if defined(CONFIG_CPU_R3000) |
| 111 | if ((current_cpu_data.cputype == CPU_R4000SC) || | 111 | if ((current_cpu_type() == CPU_R4000SC) || |
| 112 | (current_cpu_data.cputype == CPU_R4400SC)) { | 112 | (current_cpu_type() == CPU_R4400SC)) { |
| 113 | static char r4k_msg[] __initdata = | 113 | static char r4k_msg[] __initdata = |
| 114 | "Please recompile with \"CONFIG_CPU_R4x00 = y\".\n"; | 114 | "Please recompile with \"CONFIG_CPU_R4x00 = y\".\n"; |
| 115 | printk(cpu_msg); | 115 | printk(cpu_msg); |
| @@ -119,8 +119,8 @@ void __init prom_init(void) | |||
| 119 | #endif | 119 | #endif |
| 120 | 120 | ||
| 121 | #if defined(CONFIG_CPU_R4X00) | 121 | #if defined(CONFIG_CPU_R4X00) |
| 122 | if ((current_cpu_data.cputype == CPU_R3000) || | 122 | if ((current_cpu_type() == CPU_R3000) || |
| 123 | (current_cpu_data.cputype == CPU_R3000A)) { | 123 | (current_cpu_type() == CPU_R3000A)) { |
| 124 | static char r3k_msg[] __initdata = | 124 | static char r3k_msg[] __initdata = |
| 125 | "Please recompile with \"CONFIG_CPU_R3000 = y\".\n"; | 125 | "Please recompile with \"CONFIG_CPU_R3000 = y\".\n"; |
| 126 | printk(cpu_msg); | 126 | printk(cpu_msg); |
diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c index d96f8218a91e..ac762d8d802d 100644 --- a/arch/mips/kernel/traps.c +++ b/arch/mips/kernel/traps.c | |||
| @@ -954,7 +954,7 @@ asmlinkage void do_reserved(struct pt_regs *regs) | |||
| 954 | */ | 954 | */ |
| 955 | static inline void parity_protection_init(void) | 955 | static inline void parity_protection_init(void) |
| 956 | { | 956 | { |
| 957 | switch (current_cpu_data.cputype) { | 957 | switch (current_cpu_type()) { |
| 958 | case CPU_24K: | 958 | case CPU_24K: |
| 959 | case CPU_34K: | 959 | case CPU_34K: |
| 960 | case CPU_5KC: | 960 | case CPU_5KC: |
| @@ -1549,8 +1549,8 @@ void __init trap_init(void) | |||
| 1549 | set_except_vector(12, handle_ov); | 1549 | set_except_vector(12, handle_ov); |
| 1550 | set_except_vector(13, handle_tr); | 1550 | set_except_vector(13, handle_tr); |
| 1551 | 1551 | ||
| 1552 | if (current_cpu_data.cputype == CPU_R6000 || | 1552 | if (current_cpu_type() == CPU_R6000 || |
| 1553 | current_cpu_data.cputype == CPU_R6000A) { | 1553 | current_cpu_type() == CPU_R6000A) { |
| 1554 | /* | 1554 | /* |
| 1555 | * The R6000 is the only R-series CPU that features a machine | 1555 | * The R6000 is the only R-series CPU that features a machine |
| 1556 | * check exception (similar to the R4000 cache error) and | 1556 | * check exception (similar to the R4000 cache error) and |
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< | |
