On Feb 7, 2008, at 10:15 AM, Bartlomiej Sieka wrote: > Kumar Gala wrote: >> Here is a rough patch to common/cmd_bootm.c that passed load_end >> down to >> the do_bootm_* commands. I haven't updated the lib_*/bootm.c at this >> point. >> I think this is useful to help the bootm commands know exactly what >> memory >> is used and what is freed. There are situations that I'd like to get >> working with the new code like being able to boot a kernel at 256M >> and >> have the ramdisk and device tree exist about this 256M base. >> - k >> diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c >> index 2ddb191..b36d09e 100644 >> --- a/common/cmd_bootm.c >> +++ b/common/cmd_bootm.c >> @@ -90,7 +90,7 @@ extern int do_reset (cmd_tbl_t *cmdtp, int flag, >> int argc, char *argv[]); >> typedef void boot_os_fn (cmd_tbl_t *cmdtp, int flag, >> int argc, char *argv[], >> image_header_t *hdr, /* of image to boot */ >> - int verify); /* getenv("verify")[0] != 'n' */ >> + int verify, ulong load_end); /* getenv("verify")[0] >> != 'n' */ >> extern boot_os_fn do_bootm_linux; >> static boot_os_fn do_bootm_netbsd; >> @@ -234,36 +234,36 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int >> argc, char *argv[]) >> #ifdef CONFIG_SILENT_CONSOLE >> fixup_silent_linux(); >> #endif >> - do_bootm_linux (cmdtp, flag, argc, argv, hdr, verify); >> + do_bootm_linux (cmdtp, flag, argc, argv, hdr, verify, >> load_end); >> break; > > Hi Kumar, > > In our development code for the new format we need even more data to > be > passed down to do_bootm_* flavors. We are doing this by passing a > pointer to a structure: > > - do_bootm_linux (cmdtp, flag, argc, argv, hdr, verify); > + do_bootm_linux (cmdtp, flag, argc, argv, &images, verify); > > > Where images is of type bootm_headers_t, defined like this: > > /* > * Legacy and FIT format headers used by do_bootm() and do_bootm_<os>() > * routines. > */ > typedef struct bootm_headers { > /* > * Legacy os image header, if it is a multi component image > * then get_ramdisk() and get_fdt() will attempt to get > * data from second and third component accordingly. > */ > image_header_t *legacy_hdr_os; > ulong legacy_hdr_valid; > > #if defined(CONFIG_FIT) > void *fit_hdr_os; /* os FIT image header */ > char *fit_uname_os; /* os subimage node unit name */ > > void *fit_hdr_rd; /* init ramdisk FIT img header > */ > char *fit_uname_rd; /* init ramdisk node unit name > */ > > #if defined(CONFIG_PPC) > void *fit_hdr_fdt; /* FDT blob FIT image header */ > char *fit_uname_fdt; /* FDT blob node unit name */ > #endif > #endif > } bootm_headers_t; > > > Perhaps it would be a good idea to add your load_end to bootm_headers? > In any case, let's get back to this once the above mentioned code is > posted to the ML.
sounds good, any eta on when this patch will show up? - k ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users