Commit 59754f85 introduces regression with U-Boot on Cortex-A9 platforms
Host environment
- Operating system: Ubuntu 2022.04
- OS/kernel version: 6.8.0-57-generic #59-Ubuntu
- Architecture: x86_64
- QEMU flavor: qemu-system-arm
- QEMU version: v10.0.0-365-g73d29ea241
- QEMU command line:
./qemu-system-arm -nographic -m 1G -audio none -net user,tftp=/tmp/vexpress_ca9x4 -net nic -M vexpress-a9 -kernel /tmp/vexpress_ca9x4/u-boot
Emulated/Virtualized environment
- Operating system: U-Boot
- OS/kernel version: v2025.04 (or top of tree)
- Architecture: arm
Description of problem
In U-Boot CI, we started to update from v8.2.0 to v9.2.3 and found that the vexpress_ca9x4 platform was now failing one of the CI tests. I have reconfirmed the problem on top of tree QEMU, and bisected the failure to commit 59754f85("target/arm: Do memory type alignment check when translation disabled "). I have also re-verified the test is fine on a physical platform with a Cortex-A9 that is as follows (per the RM):
Table 12-2. Cortex-A9 revision
Core MP004-BU-50000-r2p10-0rel0
NEON AT397-BU-50001- r2p0-00rel0
PL310 PL310-BU-00000-r3p2-50rel0
Steps to reproduce
- git clone https://source.denx.de/u-boot/u-boot.git; cd u-boot
- make O=/tmp/vexpress_ca9x4 CROSS_COMPILE=arm-linux-gnueabi- vexpress_ca9x4_config
- make O=/tmp/vexpress_ca9x4 CROSS_COMPILE=arm-linux-gnueabi- -sj$(nproc)
- qemu-system-arm -nographic -m 1G -audio none -net user,tftp=/tmp/vexpress_ca9x4 -net nic -M vexpress-a9 -kernel /tmp/vexpress_ca9x4/u-boot
- Stop autoboot with any key
- setenv autoload no
- dhcp
- tftpboot 60200000 lib/efi_loader/helloworld.efi