aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/netlogic/xlr/setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/netlogic/xlr/setup.c')
-rw-r--r--arch/mips/netlogic/xlr/setup.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/arch/mips/netlogic/xlr/setup.c b/arch/mips/netlogic/xlr/setup.c
index 8fca6807cab8..696d4248b92f 100644
--- a/arch/mips/netlogic/xlr/setup.c
+++ b/arch/mips/netlogic/xlr/setup.c
@@ -51,14 +51,11 @@
51#include <asm/netlogic/xlr/gpio.h> 51#include <asm/netlogic/xlr/gpio.h>
52 52
53uint64_t nlm_io_base = DEFAULT_NETLOGIC_IO_BASE; 53uint64_t nlm_io_base = DEFAULT_NETLOGIC_IO_BASE;
54uint64_t nlm_pic_base;
55struct psb_info nlm_prom_info; 54struct psb_info nlm_prom_info;
56 55
57unsigned long nlm_common_ebase = 0x0;
58
59/* default to uniprocessor */ 56/* default to uniprocessor */
60uint32_t nlm_coremask = 1; 57unsigned int nlm_threads_per_core = 1;
61int nlm_threads_per_core = 1; 58struct nlm_soc_info nlm_nodes[NLM_NR_NODES];
62cpumask_t nlm_cpumask = CPU_MASK_CPU0; 59cpumask_t nlm_cpumask = CPU_MASK_CPU0;
63 60
64static void __init nlm_early_serial_setup(void) 61static void __init nlm_early_serial_setup(void)
@@ -177,6 +174,16 @@ static void prom_add_memory(void)
177 } 174 }
178} 175}
179 176
177static void nlm_init_node(void)
178{
179 struct nlm_soc_info *nodep;
180
181 nodep = nlm_current_node();
182 nodep->picbase = nlm_mmio_base(NETLOGIC_IO_PIC_OFFSET);
183 nodep->ebase = read_c0_ebase() & (~((1 << 12) - 1));
184 spin_lock_init(&nodep->piclock);
185}
186
180void __init prom_init(void) 187void __init prom_init(void)
181{ 188{
182 int i, *argv, *envp; /* passed as 32 bit ptrs */ 189 int i, *argv, *envp; /* passed as 32 bit ptrs */
@@ -188,11 +195,10 @@ void __init prom_init(void)
188 prom_infop = (struct psb_info *)(long)(int)fw_arg3; 195 prom_infop = (struct psb_info *)(long)(int)fw_arg3;
189 196
190 nlm_prom_info = *prom_infop; 197 nlm_prom_info = *prom_infop;
191 nlm_pic_base = nlm_mmio_base(NETLOGIC_IO_PIC_OFFSET); 198 nlm_init_node();
192 199
193 nlm_early_serial_setup(); 200 nlm_early_serial_setup();
194 build_arcs_cmdline(argv); 201 build_arcs_cmdline(argv);
195 nlm_common_ebase = read_c0_ebase() & (~((1 << 12) - 1));
196 prom_add_memory(); 202 prom_add_memory();
197 203
198#ifdef CONFIG_SMP 204#ifdef CONFIG_SMP