[PATCH] armv8: start.S: remove CONFIG_SYS_RESET_SCTRL code
Tom Rini
trini at konsulko.com
Fri Feb 4 01:40:36 CET 2022
On Mon, Jan 24, 2022 at 05:17:40PM +0000, Andre Przywara wrote:
> There is some code that tries to "reset" the SCTLR_ELx register early in
> the boot process. The idea seems to be to guarantee some sane settings
> that U-Boot actually relies on, for instance running in little-endian
> mode, with the MMU off initially.
> However the current code has multiple problems:
> - For a start, no platform or config defines the symbol that would
> enable that code.
> - The code itself really only works if the bits that it tries to clear
> are already cleared:
> - If we run in big-endian mode initially, any previous loads would have
> been wrong already. That applies to the (optional) relocation code,
> but more prominently to the mask that it uses to clear those bits:
> "ldr x1, =0xfdfffffa" looks innocent, but actually involves a memory
> access to the literal pool, using the current endianess.
> - If we run with the MMU enabled, we are probably doomed already. We
> *could* hope that we are running with an identity mapping, but would
> need to do some cache maintenance to avoid losing dirty cache lines.
> - The idea of doing a read-modify-write of SCTLR is somewhat
> questionable to begin with, because as the owner of the current
> exception level we should initialise all bits of this register with a
> certain fixed value.
> - The code is unnecessarily complicated, and the function name is
> misspelled.
>
> While those problems *could* admittedly be fixed, the point that is does
> not seem to be used at all at the moment tells me we should just remove
> this code, and be it to not give a bad example.
>
> If people care, I could introduce some proper SCTLR initialisation code.
> We are about to work this out for the boot-wrapper[1] as we speak, but
> apparently we got away without doing this in U-Boot ever since, so it
> might not be worth the potential trouble.
>
> [1] https://lore.kernel.org/linux-arm-kernel/20220114105653.3003399-7-mark.rutland@arm.com/
>
> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20220203/bd743681/attachment.sig>
More information about the U-Boot
mailing list