]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
sunxi: fel: drop redundant "control register" save/restore
authorAndre Przywara <andre.przywara@arm.com>
Wed, 13 Jul 2022 15:27:58 +0000 (16:27 +0100)
committerAndre Przywara <andre.przywara@arm.com>
Sat, 21 Jan 2023 01:32:23 +0000 (01:32 +0000)
For some reasons shrouded in mystery, the code saving the FEL state was
saving the SCTLR register twice, with the second copy trying to justify
itself by using its ancient "control register" alias name.

Drop the redundant second copy, both from the fel_stash data structure,
and also the code saving and restoring it.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Samuel Holland <samuel@sholland.org>
Tested-by: Samuel Holland <samuel@sholland.org>
arch/arm/cpu/armv7/sunxi/fel_utils.S
arch/arm/mach-sunxi/board.c

index b2310751d9d2e47b1a4579260f2cd3830a1dfe22..78bb1657fc165de3c40e1124475f989791c1413a 100644 (file)
@@ -20,8 +20,6 @@ ENTRY(save_boot_params)
        str     lr, [r0, #12]
        mrc     p15, 0, lr, c12, c0, 0  @ Read VBAR
        str     lr, [r0, #16]
-       mrc     p15, 0, lr, c1, c0, 0   @ Read CP15 Control Register
-       str     lr, [r0, #20]
        b       save_boot_params_ret
 ENDPROC(save_boot_params)
 
@@ -29,8 +27,6 @@ ENTRY(return_to_fel)
        mov     sp, r0
        mov     lr, r1
        ldr     r0, =fel_stash
-       ldr     r1, [r0, #20]
-       mcr     p15, 0, r1, c1, c0, 0   @ Write CP15 Control Register
        ldr     r1, [r0, #16]
        mcr     p15, 0, r1, c12, c0, 0  @ Write VBAR
        ldr     r1, [r0, #12]
index 0c4b6dd1ca3544b854d12d46d084a355d12997f8..03f51557fcb037be8265ee67ad0546058b3894b1 100644 (file)
@@ -35,7 +35,6 @@ struct fel_stash {
        uint32_t cpsr;
        uint32_t sctlr;
        uint32_t vbar;
-       uint32_t cr;
 };
 
 struct fel_stash fel_stash __section(".data");