spl: if MMCSD_MODE_RAW fails, try MMCSD_MODE_FS, if available
authorGuillaume GARDET <guillaume.gardet@free.fr>
Tue, 18 Nov 2014 09:44:46 +0000 (10:44 +0100)
committerTom Rini <trini@ti.com>
Mon, 8 Dec 2014 14:35:42 +0000 (09:35 -0500)
In SPL MMC, boot modes are exclusive. So, if MMCSD_MODE_RAW fails, the board hangs. This patch allows to
try MMCSD_MODE_FS then, if available.

It has been tested on a pandaboard (rev. A3).

Signed-off-by: Guillaume GARDET <guillaume.gardet@free.fr>
Cc: Tom Rini <trini@ti.com>
common/spl/spl_mmc.c

index d199f0be9bed2737248b98bcaef9341684023c48..7bae16beba064472c5f4ebd48d17d4e63b3b78fc 100644 (file)
@@ -123,7 +123,8 @@ void spl_mmc_load_image(void)
                        CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR);
 #endif
 #if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT)
-       } else if (boot_mode == MMCSD_MODE_FS) {
+       }
+       if (err || boot_mode == MMCSD_MODE_FS) {
                debug("boot mode - FS\n");
 #ifdef CONFIG_SPL_FAT_SUPPORT
 #ifdef CONFIG_SPL_OS_BOOT