提交 b1c98297 编写于 作者: A Ard Biesheuvel 提交者: Will Deacon

arm64: use PC-relative reference for secondary_holding_pen_release

Replace the confusing virtual/physical address arithmetic with a simple
PC-relative reference.
Tested-by: NMark Rutland <mark.rutland@arm.com>
Reviewed-by: NMark Rutland <mark.rutland@arm.com>
Signed-off-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: NWill Deacon <will.deacon@arm.com>
上级 a871d354
...@@ -564,10 +564,6 @@ ENTRY(__boot_cpu_mode) ...@@ -564,10 +564,6 @@ ENTRY(__boot_cpu_mode)
.popsection .popsection
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
.align 3
1: .quad .
.quad secondary_holding_pen_release
/* /*
* This provides a "holding pen" for platforms to hold all secondary * This provides a "holding pen" for platforms to hold all secondary
* cores are held until we're ready for them to initialise. * cores are held until we're ready for them to initialise.
...@@ -579,10 +575,7 @@ ENTRY(secondary_holding_pen) ...@@ -579,10 +575,7 @@ ENTRY(secondary_holding_pen)
mrs x0, mpidr_el1 mrs x0, mpidr_el1
ldr x1, =MPIDR_HWID_BITMASK ldr x1, =MPIDR_HWID_BITMASK
and x0, x0, x1 and x0, x0, x1
adr x1, 1b adr_l x3, secondary_holding_pen_release
ldp x2, x3, [x1]
sub x1, x1, x2
add x3, x3, x1
pen: ldr x4, [x3] pen: ldr x4, [x3]
cmp x4, x0 cmp x4, x0
b.eq secondary_startup b.eq secondary_startup
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册