diff options
| author | Marian Balakowicz <m8@semihalf.com> | 2008-03-12 10:35:46 +0100 | 
|---|---|---|
| committer | Marian Balakowicz <m8@semihalf.com> | 2008-03-12 10:35:46 +0100 | 
| commit | f773bea8e11f4a11c388dcee956b2444203e6b65 (patch) | |
| tree | 7e6e86cd0e17efafe194696eaa87a38d80cf8ae1 /common/cmd_bootm.c | |
| parent | 2682ce8a4225f23d72bb7fed069e928dd39d34ae (diff) | |
| download | olio-uboot-2014.01-f773bea8e11f4a11c388dcee956b2444203e6b65.tar.xz olio-uboot-2014.01-f773bea8e11f4a11c388dcee956b2444203e6b65.zip | |
[new uImage] Add proper ramdisk/FDT handling when FIT configuration is used
Save FIT configuration provied in the first bootm argument and use it
when to get ramdisk/FDT subimages when second and third (ramdisk/FDT)
arguments are not specified.
Signed-off-by: Marian Balakowicz <m8@semihalf.com>
Diffstat (limited to 'common/cmd_bootm.c')
| -rw-r--r-- | common/cmd_bootm.c | 14 | 
1 files changed, 10 insertions, 4 deletions
| diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c index e95c5dd03..2f232e795 100644 --- a/common/cmd_bootm.c +++ b/common/cmd_bootm.c @@ -469,7 +469,7 @@ static void *boot_get_kernel (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]  	const char	*fit_uname_kernel = NULL;  	const void	*data;  	size_t		len; -	int		conf_noffset; +	int		cfg_noffset;  	int		os_noffset;  #endif @@ -548,13 +548,19 @@ static void *boot_get_kernel (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]  			 * fit_conf_get_node() will try to find default config node  			 */  			show_boot_progress (101); -			conf_noffset = fit_conf_get_node (fit_hdr, fit_uname_config); -			if (conf_noffset < 0) { +			cfg_noffset = fit_conf_get_node (fit_hdr, fit_uname_config); +			if (cfg_noffset < 0) {  				show_boot_progress (-101);  				return NULL;  			} +			/* save configuration uname provided in the first +			 * bootm argument +			 */ +			images->fit_uname_cfg = fdt_get_name (fit_hdr, cfg_noffset, NULL); +			printf ("   Using '%s' configuration\n", images->fit_uname_cfg); +			show_boot_progress (103); -			os_noffset = fit_conf_get_kernel_node (fit_hdr, conf_noffset); +			os_noffset = fit_conf_get_kernel_node (fit_hdr, cfg_noffset);  			fit_uname_kernel = fit_get_name (fit_hdr, os_noffset, NULL);  		} else {  			/* get kernel component image node offset */ |