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>
return loader->load_image(&bootdev);
switch (boot_device) {
-#ifdef CONFIG_SPL_YMODEM_SUPPORT
- case BOOT_DEVICE_UART:
- return spl_ymodem_load_image(&bootdev);
-#endif
#if defined(CONFIG_SPL_SPI_SUPPORT) || defined(CONFIG_SPL_SPI_FLASH_SUPPORT)
case BOOT_DEVICE_SPI:
return spl_spi_load_image(&bootdev);
return size;
}
-int spl_ymodem_load_image(struct spl_boot_device *bootdev)
+static int spl_ymodem_load_image(struct spl_boot_device *bootdev)
{
int size = 0;
int err;
printf("Loaded %d bytes\n", size);
return 0;
}
+SPL_LOAD_IMAGE_METHOD(0, BOOT_DEVICE_UART, spl_ymodem_load_image);
.load_image = __method, \
}
-/* YMODEM SPL functions */
-int spl_ymodem_load_image(struct spl_boot_device *bootdev);
-
/* SPI SPL functions */
int spl_spi_load_image(struct spl_boot_device *bootdev);