aboutsummaryrefslogtreecommitdiff
path: root/configs
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2022-01-21 16:36:04 +0000
committerTom Rini <trini@konsulko.com>2022-01-24 10:35:09 -0500
commit51d8367d8a8d6edb0c5af9828c20bb7aba5670da (patch)
tree9805f92ba22f9ed9fcf848d0b9b3c056f6ad71c8 /configs
parentae35c59389b9b67e1e553bc9ed3e6fd93cfdb86f (diff)
downloadu-boot-51d8367d8a8d6edb0c5af9828c20bb7aba5670da.zip
u-boot-51d8367d8a8d6edb0c5af9828c20bb7aba5670da.tar.gz
u-boot-51d8367d8a8d6edb0c5af9828c20bb7aba5670da.tar.bz2
vexpress64: semi_defconfig: disable CRC32 support
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 <ross.burton@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Marek Vasut <marex@denx.de>
Diffstat (limited to 'configs')
-rw-r--r--configs/vexpress_aemv8a_semi_defconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/configs/vexpress_aemv8a_semi_defconfig b/configs/vexpress_aemv8a_semi_defconfig
index f9abf29..8e6a87c 100644
--- a/configs/vexpress_aemv8a_semi_defconfig
+++ b/configs/vexpress_aemv8a_semi_defconfig
@@ -11,6 +11,7 @@ CONFIG_ENV_SECT_SIZE=0x40000
CONFIG_IDENT_STRING=" vexpress_aemv8a"
CONFIG_DISTRO_DEFAULTS=y
CONFIG_SYS_LOAD_ADDR=0x90000000
+# CONFIG_ARM64_CRC32 is not set
CONFIG_ANDROID_BOOT_IMAGE=y
CONFIG_BOOTDELAY=1
CONFIG_USE_BOOTARGS=y