summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/86xx/mpc86xx_smp.c
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2006-06-28 16:10:53 +1000
committerPaul Mackerras <paulus@samba.org>2006-06-28 16:10:53 +1000
commit489244498ec99c949ecbd7105299066cff283dcd (patch)
tree003b5637cb8998ca0ab524e436c1a5eff25a9a1c /arch/powerpc/platforms/86xx/mpc86xx_smp.c
parent649e85797259162f7fdc696420e7492f20226f2d (diff)
parent9ad494f62444ee37209e85173377c67612e66ef1 (diff)
downloadblackbird-op-linux-489244498ec99c949ecbd7105299066cff283dcd.tar.gz
blackbird-op-linux-489244498ec99c949ecbd7105299066cff283dcd.zip
Merge branch 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc
Diffstat (limited to 'arch/powerpc/platforms/86xx/mpc86xx_smp.c')
-rw-r--r--arch/powerpc/platforms/86xx/mpc86xx_smp.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/powerpc/platforms/86xx/mpc86xx_smp.c b/arch/powerpc/platforms/86xx/mpc86xx_smp.c
index 167f0401a1c5..bb7fb41933ad 100644
--- a/arch/powerpc/platforms/86xx/mpc86xx_smp.c
+++ b/arch/powerpc/platforms/86xx/mpc86xx_smp.c
@@ -33,8 +33,8 @@ extern unsigned long __secondary_hold_acknowledge;
static void __init
smp_86xx_release_core(int nr)
{
- void *mcm_vaddr;
- unsigned long vaddr, pcr;
+ __be32 __iomem *mcm_vaddr;
+ unsigned long pcr;
if (nr < 0 || nr >= NR_CPUS)
return;
@@ -44,10 +44,9 @@ smp_86xx_release_core(int nr)
*/
mcm_vaddr = ioremap(get_immrbase() + MPC86xx_MCM_OFFSET,
MPC86xx_MCM_SIZE);
- vaddr = (unsigned long)mcm_vaddr + MCM_PORT_CONFIG_OFFSET;
- pcr = in_be32((volatile unsigned *)vaddr);
+ pcr = in_be32(mcm_vaddr + (MCM_PORT_CONFIG_OFFSET >> 2));
pcr |= 1 << (nr + 24);
- out_be32((volatile unsigned *)vaddr, pcr);
+ out_be32(mcm_vaddr + (MCM_PORT_CONFIG_OFFSET >> 2), pcr);
}
OpenPOWER on IntegriCloud