]> git.sur5r.net Git - u-boot/commitdiff
ARM: at91: ma5d4: Boot from MMC2 when using SAM-BA
authorMarek Vasut <marex@denx.de>
Tue, 2 May 2017 18:27:47 +0000 (20:27 +0200)
committerTom Rini <trini@konsulko.com>
Thu, 29 Jun 2017 17:30:51 +0000 (13:30 -0400)
Continue loading U-Boot from MMC2 when the SPL was loaded using SAM-BA
loader. This allows the board to boot system from the removable media
instead of the eMMC, which is useful for commissioning purposes. When
booting from the eMMC, always boot from it as it is not possible to
boot from the SD interface directly.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Andreas Bießmann <andreas.devel@googlemail.com>
board/aries/ma5d4evk/ma5d4evk.c

index 0293b29d0ea628784e87ed5515d70c293f59a78a..6393948c496315bfd3adb520057a131add3a2ebd 100644 (file)
@@ -22,6 +22,7 @@
 #include <net.h>
 #include <netdev.h>
 #include <spi.h>
+#include <spl.h>
 #include <version.h>
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -345,6 +346,23 @@ void spl_board_init(void)
 #endif
 }
 
+void board_boot_order(u32 *spl_boot_list)
+{
+       spl_boot_list[0] = spl_boot_device();
+
+       switch (spl_boot_list[0]) {
+       case BOOT_DEVICE_MMC1:
+       case BOOT_DEVICE_MMC2:
+               spl_boot_list[0] = BOOT_DEVICE_MMC1;
+               break;
+       case BOOT_DEVICE_SPI:
+               break;
+       case BOOT_DEVICE_USB:
+               spl_boot_list[0] = BOOT_DEVICE_MMC2;
+               break;
+       }
+}
+
 static void ddr2_conf(struct atmel_mpddrc_config *ddr2)
 {
        ddr2->md = (ATMEL_MPDDRC_MD_DBW_32_BITS | ATMEL_MPDDRC_MD_DDR2_SDRAM);