spl: change return values of spl_*_load_image()
Make spl_*_load_image() functions return a value instead of hanging if a problem is encountered. This enables main spl code to make the decision whether to hang or not, thus preparing it to support alternative boot devices. Some boot devices (namely nand and spi) do not hang on error. Instead, they return normally and SPL proceeds to boot the contents of the load address. This is considered a bug and is rectified by hanging on error for these devices as well. Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Cc: Igor Grinberg <grinberg@compulab.co.il> Cc: Tom Rini <trini@konsulko.com> Cc: Simon Glass <sjg@chromium.org> Cc: Ian Campbell <ijc@hellion.org.uk> Cc: Hans De Goede <hdegoede@redhat.com> Cc: Albert Aribaud <albert.u.boot@aribaud.net> Cc: Jagan Teki <jteki@openedev.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
committed by
Tom Rini
parent
83cdf6faa6
commit
36afd45136
@@ -45,31 +45,31 @@ int spl_start_uboot(void);
|
||||
void spl_display_print(void);
|
||||
|
||||
/* NAND SPL functions */
|
||||
void spl_nand_load_image(void);
|
||||
int spl_nand_load_image(void);
|
||||
|
||||
/* OneNAND SPL functions */
|
||||
void spl_onenand_load_image(void);
|
||||
int spl_onenand_load_image(void);
|
||||
|
||||
/* NOR SPL functions */
|
||||
void spl_nor_load_image(void);
|
||||
int spl_nor_load_image(void);
|
||||
|
||||
/* MMC SPL functions */
|
||||
void spl_mmc_load_image(void);
|
||||
int spl_mmc_load_image(void);
|
||||
|
||||
/* YMODEM SPL functions */
|
||||
void spl_ymodem_load_image(void);
|
||||
int spl_ymodem_load_image(void);
|
||||
|
||||
/* SPI SPL functions */
|
||||
void spl_spi_load_image(void);
|
||||
int spl_spi_load_image(void);
|
||||
|
||||
/* Ethernet SPL functions */
|
||||
void spl_net_load_image(const char *device);
|
||||
int spl_net_load_image(const char *device);
|
||||
|
||||
/* USB SPL functions */
|
||||
void spl_usb_load_image(void);
|
||||
int spl_usb_load_image(void);
|
||||
|
||||
/* SATA SPL functions */
|
||||
void spl_sata_load_image(void);
|
||||
int spl_sata_load_image(void);
|
||||
|
||||
/* SPL FAT image functions */
|
||||
int spl_load_image_fat(block_dev_desc_t *block_dev, int partition, const char *filename);
|
||||
|
||||
Reference in New Issue
Block a user