On Fri, Jan 21, 2022 at 04:36:04PM +0000, Andre Przywara wrote:
> Commit 270f8710f92f ("crc32: Add crc32 implementation using
> __builtin_aarch64_crc32b") enabled the usage of ARMv8 CRC instructions
> by default, for all arm64 builds. And indeed all Arm Ltd. v8 Cortex-A
> cores support the instructions, and they are mandatory starting with
> architecture revision v8.1, so realistically every known hardware
> implementation should support them.
>
> The Arm Fastmodel however defaults to the bare minimum ARMv8 feature set
> by default, which means v8.0 without the CRC instructions, so U-Boot
> hangs very early at the moment, without any output (the boot-wrapper or
> TF-A printing the last visible lines).
>
> Support for those instructions can be enabled on the model command line
> by either:
> -C cluster0.cpu0.enable_crc32=1 (for each core)
> or by using a higher architecture revision by default:
> -C cluster0.has_arm_v8-1=1 (for each cluster)
> Of course any arch revision higher than v8.1 would work as well.
>
> But for the sake of a smooth out-of-the-box experience, let's just
> disable the usage of those instructions in the defconfig, to avoid
> random hangs without any clues.
>
> Reported-by: Ross Burton <[email protected]>
> Signed-off-by: Andre Przywara <[email protected]>
> Acked-by: Marek Vasut <[email protected]>Applied to u-boot/master, thanks! -- Tom
signature.asc
Description: PGP signature

