[U-Boot] [PATCH 1/1] ARMv8: make master CPU checking logic more clear

zijun_hu zijun_hu at zoho.com
Mon Sep 25 07:28:50 UTC 2017


From: zijun_hu <zijun_hu at htc.com>

macro branch_if_master checks master CPU via (Aff3 & (Aff2:Aff1:Aff0))
it is simple but a little obscure.

fix by checking Affx fields within MPIDR_EL1 directly.

Signed-off-by: zijun_hu <zijun_hu at htc.com>
---
 arch/arm/include/asm/macro.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/include/asm/macro.h b/arch/arm/include/asm/macro.h
index e1916f7..0c8652a 100644
--- a/arch/arm/include/asm/macro.h
+++ b/arch/arm/include/asm/macro.h
@@ -131,6 +131,7 @@ lr	.req	x30
 	/* NOTE: MPIDR handling will be erroneous on multi-cluster machines */
 	mrs	\xreg1, mpidr_el1
 	lsr	\xreg2, \xreg1, #32
+	lsl	\xreg2, \xreg2, #32
 	lsl	\xreg1, \xreg1, #40
 	lsr	\xreg1, \xreg1, #40
 	orr	\xreg1, \xreg1, \xreg2
-- 
1.9.1



More information about the U-Boot mailing list