diff options
author | Mark Rutland <mark.rutland@arm.com> | 2017-01-17 16:10:56 +0000 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2017-01-17 17:41:02 +0000 |
commit | 9bb003600ed9aabfe33b7330fa7e93acf959e8df (patch) | |
tree | 3e2c603059538735974b8faa9574054c3d1776a5 /arch/arm64/kernel | |
parent | 9a802431c527f0ef860399f066a9793794cac17b (diff) | |
download | linux-9bb003600ed9aabfe33b7330fa7e93acf959e8df.tar.gz linux-9bb003600ed9aabfe33b7330fa7e93acf959e8df.tar.bz2 linux-9bb003600ed9aabfe33b7330fa7e93acf959e8df.zip |
arm64: head.S: avoid open-coded adr_l
Some places in the kernel open-code sequences using ADRP for a symbol
another instruction using a :lo12: relocation for that same symbol.
These sequences are easy to get wrong, and more painful to read than is
necessary. For these reasons, it is preferable to use the
{adr,ldr,str}_l macros for these cases.
This patch makes use of adr_l these in head.S, removing an open-coded
sequence using adrp.
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel')
-rw-r--r-- | arch/arm64/kernel/head.S | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/arm64/kernel/head.S b/arch/arm64/kernel/head.S index 9b0857a89a2a..d3b8f92de5c5 100644 --- a/arch/arm64/kernel/head.S +++ b/arch/arm64/kernel/head.S @@ -613,8 +613,7 @@ CPU_LE( movk x0, #0x30d0, lsl #16 ) // Clear EE and E0E on LE systems install_el2_stub: /* Hypervisor stub */ - adrp x0, __hyp_stub_vectors - add x0, x0, #:lo12:__hyp_stub_vectors + adr_l x0, __hyp_stub_vectors msr vbar_el2, x0 /* spsr */ |