[PATCH 01/08] ARM: shmobile: Fix base address readout in headsmp-scu.S
Bastian Hecht
hechtb at gmail.com
Mon Feb 18 09:57:20 EST 2013
Hi Magnus,
yes using the physical address works.
Thanks,
Bastian
2013/2/18 Magnus Damm <magnus.damm at gmail.com>:
> From: Magnus Damm <damm at opensource.se>
>
> Rework the early SCU setup code in headsmp-scu.S to read
> the base address in the same way as we use to fetch the
> address of the invalidation function.
>
> Reported-by: Bastian Hecht <hechtb at gmail.com>
> Signed-off-by: Magnus Damm <damm at opensource.se>
> ---
>
> Tested on r8a7779. Feel free to add incrementally or fold into:
> [PATCH 05/06] ARM: shmobile: Common shmobile_scu_base in headsmp-scu.S
>
> Bastian, does this solve your problem?
>
> arch/arm/mach-shmobile/headsmp-scu.S | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> --- 0001/arch/arm/mach-shmobile/headsmp-scu.S
> +++ work/arch/arm/mach-shmobile/headsmp-scu.S 2013-02-18 16:17:58.000000000 +0900
> @@ -39,7 +39,7 @@ ENTRY(shmobile_secondary_vector_scu)
> mrc p15, 0, r0, c0, c0, 5 @ read MIPDR
> and r0, r0, #3 @ mask out cpu ID
> lsl r0, r0, #3 @ we will shift by cpu_id * 8 bits
> - ldr r1, =shmobile_scu_base
> + ldr r1, 2f
> ldr r1, [r1] @ SCU base address
> ldr r2, [r1, #8] @ SCU Power Status Register
> mov r3, #3
> @@ -48,6 +48,7 @@ ENTRY(shmobile_secondary_vector_scu)
>
> ldr pc, 1f
> 1: .long shmobile_invalidate_start - PAGE_OFFSET + PLAT_PHYS_OFFSET
> +2: .long shmobile_scu_base - PAGE_OFFSET + PLAT_PHYS_OFFSET
> ENDPROC(shmobile_secondary_vector_scu)
>
> .text
More information about the linux-arm-kernel
mailing list