spl: Convert spl_nand_load_image() to use linker list

Add a linker list declaration for this method and remove the explicit
switch() code.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Simon Glass 2016-09-24 18:20:02 -06:00 committed by Tom Rini
parent 7d7dd821b0
commit d5c2b11ce4
3 changed files with 3 additions and 8 deletions

View File

@ -384,10 +384,6 @@ static int spl_load_image(u32 boot_device)
return loader->load_image(&bootdev);
switch (boot_device) {
#ifdef CONFIG_SPL_NAND_SUPPORT
case BOOT_DEVICE_NAND:
return spl_nand_load_image(&bootdev);
#endif
#ifdef CONFIG_SPL_ONENAND_SUPPORT
case BOOT_DEVICE_ONENAND:
return spl_onenand_load_image(&bootdev);

View File

@ -67,7 +67,7 @@ static int spl_nand_load_element(int offset, struct image_header *header)
}
}
int spl_nand_load_image(void)
static int spl_nand_load_image(struct spl_boot_device *bootdev)
{
int err;
struct image_header *header;
@ -145,3 +145,5 @@ int spl_nand_load_image(void)
return err;
}
#endif
/* Use priorty 1 so that Ubi can override this */
SPL_LOAD_IMAGE_METHOD(1, BOOT_DEVICE_NAND, spl_nand_load_image);

View File

@ -181,9 +181,6 @@ struct spl_image_loader {
.load_image = __method, \
}
/* NAND SPL functions */
int spl_nand_load_image(struct spl_boot_device *bootdev);
/* OneNAND SPL functions */
int spl_onenand_load_image(struct spl_boot_device *bootdev);