diff options
Diffstat (limited to 'arch/mips/kernel/setup.c')
-rw-r--r-- | arch/mips/kernel/setup.c | 46 |
1 files changed, 16 insertions, 30 deletions
diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c index 12b531c295c4..d86affa21278 100644 --- a/arch/mips/kernel/setup.c +++ b/arch/mips/kernel/setup.c | |||
@@ -37,12 +37,13 @@ | |||
37 | 37 | ||
38 | #include <asm/addrspace.h> | 38 | #include <asm/addrspace.h> |
39 | #include <asm/bootinfo.h> | 39 | #include <asm/bootinfo.h> |
40 | #include <asm/cache.h> | ||
40 | #include <asm/cpu.h> | 41 | #include <asm/cpu.h> |
41 | #include <asm/sections.h> | 42 | #include <asm/sections.h> |
42 | #include <asm/setup.h> | 43 | #include <asm/setup.h> |
43 | #include <asm/system.h> | 44 | #include <asm/system.h> |
44 | 45 | ||
45 | struct cpuinfo_mips cpu_data[NR_CPUS]; | 46 | struct cpuinfo_mips cpu_data[NR_CPUS] __read_mostly; |
46 | 47 | ||
47 | EXPORT_SYMBOL(cpu_data); | 48 | EXPORT_SYMBOL(cpu_data); |
48 | 49 | ||
@@ -62,8 +63,8 @@ EXPORT_SYMBOL(PCI_DMA_BUS_IS_PHYS); | |||
62 | * | 63 | * |
63 | * These are initialized so they are in the .data section | 64 | * These are initialized so they are in the .data section |
64 | */ | 65 | */ |
65 | unsigned long mips_machtype = MACH_UNKNOWN; | 66 | unsigned long mips_machtype __read_mostly = MACH_UNKNOWN; |
66 | unsigned long mips_machgroup = MACH_GROUP_UNKNOWN; | 67 | unsigned long mips_machgroup __read_mostly = MACH_GROUP_UNKNOWN; |
67 | 68 | ||
68 | EXPORT_SYMBOL(mips_machtype); | 69 | EXPORT_SYMBOL(mips_machtype); |
69 | EXPORT_SYMBOL(mips_machgroup); | 70 | EXPORT_SYMBOL(mips_machgroup); |
@@ -77,7 +78,7 @@ static char command_line[CL_SIZE]; | |||
77 | * mips_io_port_base is the begin of the address space to which x86 style | 78 | * mips_io_port_base is the begin of the address space to which x86 style |
78 | * I/O ports are mapped. | 79 | * I/O ports are mapped. |
79 | */ | 80 | */ |
80 | const unsigned long mips_io_port_base = -1; | 81 | const unsigned long mips_io_port_base __read_mostly = -1; |
81 | EXPORT_SYMBOL(mips_io_port_base); | 82 | EXPORT_SYMBOL(mips_io_port_base); |
82 | 83 | ||
83 | /* | 84 | /* |
@@ -510,31 +511,7 @@ static inline void resource_init(void) | |||
510 | #undef MAXMEM | 511 | #undef MAXMEM |
511 | #undef MAXMEM_PFN | 512 | #undef MAXMEM_PFN |
512 | 513 | ||
513 | static int __initdata earlyinit_debug; | 514 | extern void plat_setup(void); |
514 | |||
515 | static int __init earlyinit_debug_setup(char *str) | ||
516 | { | ||
517 | earlyinit_debug = 1; | ||
518 | return 1; | ||
519 | } | ||
520 | __setup("earlyinit_debug", earlyinit_debug_setup); | ||
521 | |||
522 | extern initcall_t __earlyinitcall_start, __earlyinitcall_end; | ||
523 | |||
524 | static void __init do_earlyinitcalls(void) | ||
525 | { | ||
526 | initcall_t *call, *start, *end; | ||
527 | |||
528 | start = &__earlyinitcall_start; | ||
529 | end = &__earlyinitcall_end; | ||
530 | |||
531 | for (call = start; call < end; call++) { | ||
532 | if (earlyinit_debug) | ||
533 | printk("calling earlyinitcall 0x%p\n", *call); | ||
534 | |||
535 | (*call)(); | ||
536 | } | ||
537 | } | ||
538 | 515 | ||
539 | void __init setup_arch(char **cmdline_p) | 516 | void __init setup_arch(char **cmdline_p) |
540 | { | 517 | { |
@@ -551,7 +528,7 @@ void __init setup_arch(char **cmdline_p) | |||
551 | #endif | 528 | #endif |
552 | 529 | ||
553 | /* call board setup routine */ | 530 | /* call board setup routine */ |
554 | do_earlyinitcalls(); | 531 | plat_setup(); |
555 | 532 | ||
556 | strlcpy(command_line, arcs_cmdline, sizeof(command_line)); | 533 | strlcpy(command_line, arcs_cmdline, sizeof(command_line)); |
557 | strlcpy(saved_command_line, command_line, COMMAND_LINE_SIZE); | 534 | strlcpy(saved_command_line, command_line, COMMAND_LINE_SIZE); |
@@ -573,3 +550,12 @@ int __init fpu_disable(char *s) | |||
573 | } | 550 | } |
574 | 551 | ||
575 | __setup("nofpu", fpu_disable); | 552 | __setup("nofpu", fpu_disable); |
553 | |||
554 | int __init dsp_disable(char *s) | ||
555 | { | ||
556 | cpu_data[0].ases &= ~MIPS_ASE_DSP; | ||
557 | |||
558 | return 1; | ||
559 | } | ||
560 | |||
561 | __setup("nodsp", dsp_disable); | ||