diff options
author | Kumar Gala <galak@freescale.com> | 2005-09-27 16:13:12 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-09-28 01:42:54 -0400 |
commit | 400d221274426958f1e1c7081a247bea9cede696 (patch) | |
tree | db0907bc14504d827b06b45004152b6610387b40 /arch/ppc/kernel/misc.S | |
parent | 10b35d9978ac35556aec0d2642055742d8941488 (diff) |
[PATCH] ppc32: make cur_cpu_spec a single pointer instead of an array
Changed ppc32 so that cur_cpu_spec is just a single pointer for all CPUs.
Additionally, made call_setup_cpu check to see if the cpu_setup pointer
is NULL or not before calling the function. This lets remove the dummy
cpu_setup calls that just return.
Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/ppc/kernel/misc.S')
-rw-r--r-- | arch/ppc/kernel/misc.S | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/arch/ppc/kernel/misc.S b/arch/ppc/kernel/misc.S index 9d2cb79475c6..2b9a16274b0b 100644 --- a/arch/ppc/kernel/misc.S +++ b/arch/ppc/kernel/misc.S | |||
@@ -125,9 +125,8 @@ _GLOBAL(identify_cpu) | |||
125 | 1: | 125 | 1: |
126 | addis r6,r3,cur_cpu_spec@ha | 126 | addis r6,r3,cur_cpu_spec@ha |
127 | addi r6,r6,cur_cpu_spec@l | 127 | addi r6,r6,cur_cpu_spec@l |
128 | slwi r4,r4,2 | ||
129 | sub r8,r8,r3 | 128 | sub r8,r8,r3 |
130 | stwx r8,r4,r6 | 129 | stw r8,0(r6) |
131 | blr | 130 | blr |
132 | 131 | ||
133 | /* | 132 | /* |
@@ -186,19 +185,18 @@ _GLOBAL(do_cpu_ftr_fixups) | |||
186 | * | 185 | * |
187 | * Setup function is called with: | 186 | * Setup function is called with: |
188 | * r3 = data offset | 187 | * r3 = data offset |
189 | * r4 = CPU number | 188 | * r4 = ptr to CPU spec (relocated) |
190 | * r5 = ptr to CPU spec (relocated) | ||
191 | */ | 189 | */ |
192 | _GLOBAL(call_setup_cpu) | 190 | _GLOBAL(call_setup_cpu) |
193 | addis r5,r3,cur_cpu_spec@ha | 191 | addis r4,r3,cur_cpu_spec@ha |
194 | addi r5,r5,cur_cpu_spec@l | 192 | addi r4,r4,cur_cpu_spec@l |
195 | slwi r4,r24,2 | 193 | lwz r4,0(r4) |
196 | lwzx r5,r4,r5 | 194 | add r4,r4,r3 |
195 | lwz r5,CPU_SPEC_SETUP(r4) | ||
196 | cmpi 0,r5,0 | ||
197 | add r5,r5,r3 | 197 | add r5,r5,r3 |
198 | lwz r6,CPU_SPEC_SETUP(r5) | 198 | beqlr |
199 | add r6,r6,r3 | 199 | mtctr r5 |
200 | mtctr r6 | ||
201 | mr r4,r24 | ||
202 | bctr | 200 | bctr |
203 | 201 | ||
204 | #if defined(CONFIG_CPU_FREQ_PMAC) && defined(CONFIG_6xx) | 202 | #if defined(CONFIG_CPU_FREQ_PMAC) && defined(CONFIG_6xx) |