Replace the open coded arithmetic with a simple adr_l/sub pair.

Signed-off-by: Ard Biesheuvel <ard.biesheu...@linaro.org>
---
 arch/arm/kernel/head.S | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S
index 939543e73874..e08a4623a980 100644
--- a/arch/arm/kernel/head.S
+++ b/arch/arm/kernel/head.S
@@ -106,10 +106,8 @@ ENTRY(stext)
 #endif
 
 #ifndef CONFIG_XIP_KERNEL
-       adr     r3, 2f
-       ldmia   r3, {r4, r8}
-       sub     r4, r3, r4                      @ (PHYS_OFFSET - PAGE_OFFSET)
-       add     r8, r8, r4                      @ PHYS_OFFSET
+       adr_l   r8, _text                       @ __pa(_text)
+       sub     r8, r8, #TEXT_OFFSET            @ PHYS_OFFSET
 #else
        ldr     r8, =PLAT_PHYS_OFFSET           @ always constant in this case
 #endif
@@ -161,10 +159,6 @@ ENTRY(stext)
 1:     b       __enable_mmu
 ENDPROC(stext)
        .ltorg
-#ifndef CONFIG_XIP_KERNEL
-2:     .long   .
-       .long   PAGE_OFFSET
-#endif
 
 /*
  * Setup the initial page tables.  We only setup the barest
-- 
2.11.0

Reply via email to