diff options
Diffstat (limited to 'arch/mips/loongson/common/init.c')
-rw-r--r-- | arch/mips/loongson/common/init.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/arch/mips/loongson/common/init.c b/arch/mips/loongson/common/init.c index ae7af1fd5d59..f37fe5413b73 100644 --- a/arch/mips/loongson/common/init.c +++ b/arch/mips/loongson/common/init.c | |||
@@ -9,6 +9,7 @@ | |||
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/bootmem.h> | 11 | #include <linux/bootmem.h> |
12 | #include <asm/smp-ops.h> | ||
12 | 13 | ||
13 | #include <loongson.h> | 14 | #include <loongson.h> |
14 | 15 | ||
@@ -17,10 +18,6 @@ unsigned long __maybe_unused _loongson_addrwincfg_base; | |||
17 | 18 | ||
18 | void __init prom_init(void) | 19 | void __init prom_init(void) |
19 | { | 20 | { |
20 | /* init base address of io space */ | ||
21 | set_io_port_base((unsigned long) | ||
22 | ioremap(LOONGSON_PCIIO_BASE, LOONGSON_PCIIO_SIZE)); | ||
23 | |||
24 | #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG | 21 | #ifdef CONFIG_CPU_SUPPORTS_ADDRWINCFG |
25 | _loongson_addrwincfg_base = (unsigned long) | 22 | _loongson_addrwincfg_base = (unsigned long) |
26 | ioremap(LOONGSON_ADDRWINCFG_BASE, LOONGSON_ADDRWINCFG_SIZE); | 23 | ioremap(LOONGSON_ADDRWINCFG_BASE, LOONGSON_ADDRWINCFG_SIZE); |
@@ -28,10 +25,16 @@ void __init prom_init(void) | |||
28 | 25 | ||
29 | prom_init_cmdline(); | 26 | prom_init_cmdline(); |
30 | prom_init_env(); | 27 | prom_init_env(); |
28 | |||
29 | /* init base address of io space */ | ||
30 | set_io_port_base((unsigned long) | ||
31 | ioremap(LOONGSON_PCIIO_BASE, LOONGSON_PCIIO_SIZE)); | ||
32 | |||
31 | prom_init_memory(); | 33 | prom_init_memory(); |
32 | 34 | ||
33 | /*init the uart base address */ | 35 | /*init the uart base address */ |
34 | prom_init_uart_base(); | 36 | prom_init_uart_base(); |
37 | register_smp_ops(&loongson3_smp_ops); | ||
35 | } | 38 | } |
36 | 39 | ||
37 | void __init prom_free_prom_memory(void) | 40 | void __init prom_free_prom_memory(void) |