spl: mmc: Fix spl_mmc_get_uboot_raw_sector() implementation

The call to spl_mmc_get_uboot_raw_sector() completely ignores and
overwrites the raw_sect value passed from the caller of spl_mmc_load().

Fix this by passing raw_sect to the function and returning the same
value in the default case.

Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
This commit is contained in:
Faiz Abbas 2020-02-26 13:44:35 +05:30 committed by Peng Fan
parent a851213920
commit cf00825596
2 changed files with 6 additions and 8 deletions

View File

@ -197,7 +197,8 @@ unsigned long spl_spi_get_uboot_offs(struct spi_flash *flash)
#endif
#ifdef CONFIG_SPL_MMC_SUPPORT
unsigned long spl_mmc_get_uboot_raw_sector(struct mmc *mmc)
unsigned long spl_mmc_get_uboot_raw_sector(struct mmc *mmc,
unsigned long raw_sect)
{
int end;

View File

@ -317,13 +317,10 @@ int spl_boot_partition(const u32 boot_device)
}
#endif
unsigned long __weak spl_mmc_get_uboot_raw_sector(struct mmc *mmc)
unsigned long __weak spl_mmc_get_uboot_raw_sector(struct mmc *mmc,
unsigned long raw_sect)
{
#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR
return CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR;
#else
return 0;
#endif
return raw_sect;
}
int spl_mmc_load(struct spl_image_info *spl_image,
@ -392,7 +389,7 @@ int spl_mmc_load(struct spl_image_info *spl_image,
return err;
}
raw_sect = spl_mmc_get_uboot_raw_sector(mmc);
raw_sect = spl_mmc_get_uboot_raw_sector(mmc, raw_sect);
#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
err = mmc_load_image_raw_partition(spl_image, mmc, raw_part,