From 396f635b8ff3ccbc38d75d5eda98444c6466810a Mon Sep 17 00:00:00 2001 From: Kumar Gala Date: Fri, 15 Aug 2008 08:24:41 -0500 Subject: bootm: refactor image detection and os load steps Created a bootm_start() that handles the parsing and detection of all the images that will be used by the bootm command (OS, ramdisk, fdt). As part of this we now tract all the relevant image offsets in the bootm_headers_t struct. This will allow us to have all the needed state for future sub-commands and lets us reduce a bit of arch specific code on SPARC. Created a bootm_load_os() that deals with decompression and loading the OS image. Signed-off-by: Kumar Gala --- lib_sparc/bootm.c | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) (limited to 'lib_sparc') diff --git a/lib_sparc/bootm.c b/lib_sparc/bootm.c index aac05e4b2..f3abdcfdc 100644 --- a/lib_sparc/bootm.c +++ b/lib_sparc/bootm.c @@ -87,7 +87,6 @@ void do_bootm_linux(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[], bootm_headers_t * images) { char *bootargs; - ulong load; ulong initrd_start, initrd_end; ulong rd_len; unsigned int data, len, checksum; @@ -96,24 +95,8 @@ void do_bootm_linux(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[], struct lmb *lmb = &images->lmb; int ret; - if (images->legacy_hdr_valid) { - load = image_get_load(images->legacy_hdr_os); -#if defined(CONFIG_FIT) - } else if (images->fit_uname_os) { - ret = fit_image_get_load(images->fit_hdr_os, - images->fit_noffset_os, &load); - if (ret) { - puts("Can't get load address property!\n"); - goto error; - } -#endif - } else { - puts("Could not find kernel entry point!\n"); - goto error; - } - /* Get virtual address of kernel start */ - linux_hdr = (void *)load; + linux_hdr = (void *)images->os.load; /* */ kernel = (void (*)(struct linux_romvec *, void *))images->ep; -- cgit v1.2.3