diff options
| author | Wolfgang Denk <wd@pollux.denx.de> | 2006-07-21 11:30:18 +0200 | 
|---|---|---|
| committer | Wolfgang Denk <wd@pollux.denx.de> | 2006-07-21 11:30:18 +0200 | 
| commit | e644670b68d652cec98f649a776ea44d725a45ad (patch) | |
| tree | 3eb62b47421cd2f3dbe8ef0ec02be31ada3c487a /lib_i386/i386_linux.c | |
| parent | 53dd6ce4f0208bb4d15311f6365f79f6c5b68673 (diff) | |
Fix multi-part image support on i386 platform.
Patch by David Updegraff, 19 Aug 2005
Diffstat (limited to 'lib_i386/i386_linux.c')
| -rw-r--r-- | lib_i386/i386_linux.c | 6 | 
1 files changed, 6 insertions, 0 deletions
| diff --git a/lib_i386/i386_linux.c b/lib_i386/i386_linux.c index e5d8eea4b89..b4a6f5a3cdd 100644 --- a/lib_i386/i386_linux.c +++ b/lib_i386/i386_linux.c @@ -151,6 +151,12 @@ void do_bootm_linux(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[],  		initrd_end = 0;  	} +	/* if multi-part image, we need to advance base ptr */ +	if ((hdr->ih_type==IH_TYPE_MULTI) && (len_ptr[1])) { +		int i; +		for (i=0, addr+=sizeof(int); len_ptr[i++]; addr+=sizeof(int)); +	} +  	base_ptr = load_zimage((void*)addr + sizeof(image_header_t), ntohl(hdr->ih_size),  			       initrd_start, initrd_end-initrd_start, 0); | 
