diff options
-rw-r--r-- | xen/arch/arm/arm32/head.S | 2 | ||||
-rw-r--r-- | xen/include/asm-arm/processor.h | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index b8334e2d74..79e95b673c 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -98,7 +98,7 @@ past_zImage: beq boot_cpu tst r0, #(1<<30) /* Uniprocessor system? */ bne boot_cpu - bics r12, r0, #(0xff << 24) /* Mask out flags to get CPU ID */ + bics r12, r0, #(~MPIDR_HWID_MASK) /* Mask out flags to get CPU ID */ beq boot_cpu /* If we're CPU 0, boot now */ /* Non-boot CPUs wait here to be woken up one at a time. */ diff --git a/xen/include/asm-arm/processor.h b/xen/include/asm-arm/processor.h index 1a4f8d17da..808567e5df 100644 --- a/xen/include/asm-arm/processor.h +++ b/xen/include/asm-arm/processor.h @@ -12,6 +12,7 @@ #define MPIDR_SMP (1 << 31) #define MPIDR_AFF0_SHIFT (0) #define MPIDR_AFF0_MASK (0xff << MPIDR_AFF0_SHIFT) +#define MPIDR_HWID_MASK 0xffffff /* TTBCR Translation Table Base Control Register */ #define TTBCR_EAE 0x80000000 |