From 10593b2e49327f7cd193fc2ba30fa3da322bda6a Mon Sep 17 00:00:00 2001 From: Victor Kamensky Date: Thu, 7 Nov 2013 08:42:40 +0100 Subject: ARM: 7881/1: __fixup_smp read of SCU config should do byteswap in BE case Commit "bc41b8724f24b9a27d1dcc6c974b8f686b38d554 ARM: 7846/1: Update SMP_ON_UP code to detect A9MPCore with 1 CPU devices" added read of SCU config register into __fixup_smp function. Such read should be followed by byteswap, if kernel runs in BE mode. Signed-off-by: Victor Kamensky Acked-by: Santosh Shilimkar Signed-off-by: Russell King --- arch/arm/kernel/head.S | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S index 7801866e626..cd788d5b668 100644 --- a/arch/arm/kernel/head.S +++ b/arch/arm/kernel/head.S @@ -508,6 +508,7 @@ __fixup_smp: teq r0, #0x0 @ '0' on actual UP A9 hardware beq __fixup_smp_on_up @ So its an A9 UP ldr r0, [r0, #4] @ read SCU Config +ARM_BE8(rev r0, r0) @ byteswap if big endian and r0, r0, #0x3 @ number of CPUs teq r0, #0x0 @ is 1? movne pc, lr -- cgit v1.2.3