mirror of
https://xff.cz/git/u-boot/
synced 2025-09-02 09:12:08 +02:00
spl: spl_mmc: provide one weak function spl_boot_partition
The spl_boot_partition function has been added in order to have the possibility to boot on a same binary from different mmc devices with different partitions. By default keep the current behavior, SPL use the partition defined by CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Signed-off-by: Christophe KERELLO <christophe.kerello@st.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Lukasz Majewski <lukma@denx.de>
This commit is contained in:
committed by
Tom Rini
parent
52280315a4
commit
35a66960cd
@@ -292,6 +292,14 @@ u32 __weak spl_boot_mode(const u32 boot_device)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
|
||||||
|
__weak
|
||||||
|
int spl_boot_partition(const u32 boot_device)
|
||||||
|
{
|
||||||
|
return CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int spl_mmc_load_image(struct spl_image_info *spl_image,
|
int spl_mmc_load_image(struct spl_image_info *spl_image,
|
||||||
struct spl_boot_device *bootdev)
|
struct spl_boot_device *bootdev)
|
||||||
{
|
{
|
||||||
@@ -347,8 +355,11 @@ int spl_mmc_load_image(struct spl_image_info *spl_image,
|
|||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
|
#ifdef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
|
||||||
err = mmc_load_image_raw_partition(spl_image, mmc,
|
err = spl_boot_partition(bootdev->boot_device);
|
||||||
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION);
|
if (!err)
|
||||||
|
return err;
|
||||||
|
|
||||||
|
err = mmc_load_image_raw_partition(spl_image, mmc, err);
|
||||||
if (!err)
|
if (!err)
|
||||||
return err;
|
return err;
|
||||||
#endif
|
#endif
|
||||||
|
@@ -82,6 +82,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image,
|
|||||||
void preloader_console_init(void);
|
void preloader_console_init(void);
|
||||||
u32 spl_boot_device(void);
|
u32 spl_boot_device(void);
|
||||||
u32 spl_boot_mode(const u32 boot_device);
|
u32 spl_boot_mode(const u32 boot_device);
|
||||||
|
int spl_boot_partition(const u32 boot_device);
|
||||||
void spl_set_bd(void);
|
void spl_set_bd(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user