mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-03-13 21:36:57 +00:00
spl: imx6: Let spl_boot_device return USDHC1 or USDHC2
Currently, when the spl_boot_device checks the boot device, it will only return MMC1 when it's either sd or eMMC regardless of whether or not it's MMC1 or MMC2. This is a problem when booting from MMC2 if MMC isn't being manually configured like in the DM_SPL case with SPL_OF_CONTROL. This patch will check the register and return either MMC1 or MMC2. Signed-off-by: Adam Ford <aford173@gmail.com>
This commit is contained in:
parent
c548451fd9
commit
14d319b185
1 changed files with 5 additions and 3 deletions
|
@ -24,6 +24,7 @@ u32 spl_boot_device(void)
|
|||
{
|
||||
unsigned int bmode = readl(&src_base->sbmr2);
|
||||
u32 reg = imx6_src_get_boot_mode();
|
||||
u32 mmc_index = ((reg >> 11) & 0x03);
|
||||
|
||||
/*
|
||||
* Check for BMODE if serial downloader is enabled
|
||||
|
@ -84,11 +85,12 @@ u32 spl_boot_device(void)
|
|||
/* SD/eSD: 8.5.3, Table 8-15 */
|
||||
case IMX6_BMODE_SD:
|
||||
case IMX6_BMODE_ESD:
|
||||
return BOOT_DEVICE_MMC1;
|
||||
/* MMC/eMMC: 8.5.3 */
|
||||
case IMX6_BMODE_MMC:
|
||||
case IMX6_BMODE_EMMC:
|
||||
return BOOT_DEVICE_MMC1;
|
||||
if (mmc_index == 1)
|
||||
return BOOT_DEVICE_MMC2;
|
||||
else
|
||||
return BOOT_DEVICE_MMC1;
|
||||
/* NAND Flash: 8.5.2, Table 8-10 */
|
||||
case IMX6_BMODE_NAND_MIN ... IMX6_BMODE_NAND_MAX:
|
||||
return BOOT_DEVICE_NAND;
|
||||
|
|
Loading…
Add table
Reference in a new issue