]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
ast2600: spl: Use readl for reading mmio
authorJoel Stanley <joel@jms.id.au>
Mon, 18 Nov 2024 02:12:56 +0000 (12:42 +1030)
committerTom Rini <trini@konsulko.com>
Mon, 25 Nov 2024 19:12:19 +0000 (13:12 -0600)
u-boot was crashing in qemu as the modeled hardware enforced overly
strict memory reads.

While this code will work on existing hardware, fix to avoid future issues.

Fixes: 12770d0df0e8 ("ast2600: spl: Add boot mode detection")
Link: https://gitlab.com/qemu-project/qemu/-/issues/2636
Signed-off-by: Joel Stanley <joel@jms.id.au>
arch/arm/mach-aspeed/ast2600/spl.c

index 05390c16f3aff42c388c7de453b5899beac61546..0c5a82ed0947bcbbd8376cf73c1f685186f654bb 100644 (file)
@@ -45,10 +45,10 @@ u32 spl_boot_device(void)
        }
 
        /* boot from UART has higher priority */
-       if (scu->hwstrap2 & SCU_HWSTRAP2_BOOT_UART)
+       if (readl(&scu->hwstrap2) & SCU_HWSTRAP2_BOOT_UART)
                return BOOT_DEVICE_UART;
 
-       if (scu->hwstrap1 & SCU_HWSTRAP1_BOOT_EMMC)
+       if (readl(&scu->hwstrap1) & SCU_HWSTRAP1_BOOT_EMMC)
                return BOOT_DEVICE_MMC1;
 
 out: