From 2a2ee2ac35f26f6b4dae11a225c2803291dff10e Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Sat, 24 Sep 2016 18:20:13 -0600 Subject: spl: Pass spl_image as a parameter to load_image() methods Rather than having a global variable, pass the spl_image as a parameter. This avoids BSS use, and makes it clearer what the function is actually doing. Signed-off-by: Simon Glass Reviewed-by: Tom Rini --- common/spl/spl_net.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'common/spl/spl_net.c') diff --git a/common/spl/spl_net.c b/common/spl/spl_net.c index 0cbd995..f4b4bc4 100644 --- a/common/spl/spl_net.c +++ b/common/spl/spl_net.c @@ -15,7 +15,8 @@ DECLARE_GLOBAL_DATA_PTR; #if defined(CONFIG_SPL_ETH_SUPPORT) || defined(CONFIG_SPL_USBETH_SUPPORT) -static int spl_net_load_image(struct spl_boot_device *bootdev) +static int spl_net_load_image(struct spl_image_info *spl_image, + struct spl_boot_device *bootdev) { int rv; @@ -35,29 +36,31 @@ static int spl_net_load_image(struct spl_boot_device *bootdev) printf("Problem booting with BOOTP\n"); return rv; } - return spl_parse_image_header(&spl_image, + return spl_parse_image_header(spl_image, (struct image_header *)load_addr); } #endif #ifdef CONFIG_SPL_ETH_SUPPORT -int spl_net_load_image_cpgmac(struct spl_boot_device *bootdev) +int spl_net_load_image_cpgmac(struct spl_image_info *spl_image, + struct spl_boot_device *bootdev) { #ifdef CONFIG_SPL_ETH_DEVICE bootdev->boot_device_name = CONFIG_SPL_ETH_DEVICE; #endif - return spl_net_load_image(bootdev); + return spl_net_load_image(spl_image, bootdev); } SPL_LOAD_IMAGE_METHOD(0, BOOT_DEVICE_CPGMAC, spl_net_load_image_cpgmac); #endif #ifdef CONFIG_SPL_USBETH_SUPPORT -int spl_net_load_image_usb(struct spl_boot_device *bootdev) +int spl_net_load_image_usb(struct spl_image_info *spl_image, + struct spl_boot_device *bootdev) { bootdev->boot_device_name = "usb_ether"; - return spl_net_load_image(bootdev); + return spl_net_load_image(spl_image, bootdev); } SPL_LOAD_IMAGE_METHOD(0, BOOT_DEVICE_USBETH, spl_net_load_image_usb); #endif -- cgit v1.1