spl: fit: Pass FIT context via a structure pointer
Several loose arguments describe the FIT image. They are thus related, and it makes sense to pass them together, in a structure. Examples include the FIT blob pointer, offset to FDT nodes, and the offset to external data. Use a spl_fit_info structure to group these parameters. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
		
							parent
							
								
									917fa369f6
								
							
						
					
					
						commit
						3dc2079733
					
				|  | @ -77,7 +77,7 @@ static int find_node_from_desc(const void *fit, int node, const char *str) | ||||||
|  * |  * | ||||||
|  * Return:	0 on success, or a negative error number |  * Return:	0 on success, or a negative error number | ||||||
|  */ |  */ | ||||||
| static int spl_fit_get_image_name(const void *fit, int images, | static int spl_fit_get_image_name(const struct spl_fit_info *ctx, | ||||||
| 				  const char *type, int index, | 				  const char *type, int index, | ||||||
| 				  const char **outname) | 				  const char **outname) | ||||||
| { | { | ||||||
|  | @ -88,21 +88,21 @@ static int spl_fit_get_image_name(const void *fit, int images, | ||||||
| 	int len, i; | 	int len, i; | ||||||
| 	bool found = true; | 	bool found = true; | ||||||
| 
 | 
 | ||||||
| 	conf_node = fit_find_config_node(fit); | 	conf_node = fit_find_config_node(ctx->fit); | ||||||
| 	if (conf_node < 0) { | 	if (conf_node < 0) { | ||||||
| #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT | #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT | ||||||
| 		printf("No matching DT out of these options:\n"); | 		printf("No matching DT out of these options:\n"); | ||||||
| 		for (node = fdt_first_subnode(fit, conf_node); | 		for (node = fdt_first_subnode(ctx->fit, conf_node); | ||||||
| 		     node >= 0; | 		     node >= 0; | ||||||
| 		     node = fdt_next_subnode(fit, node)) { | 		     node = fdt_next_subnode(ctx->fit, node)) { | ||||||
| 			name = fdt_getprop(fit, node, "description", &len); | 			name = fdt_getprop(ctx->fit, node, "description", &len); | ||||||
| 			printf("   %s\n", name); | 			printf("   %s\n", name); | ||||||
| 		} | 		} | ||||||
| #endif | #endif | ||||||
| 		return conf_node; | 		return conf_node; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	name = fdt_getprop(fit, conf_node, type, &len); | 	name = fdt_getprop(ctx->fit, conf_node, type, &len); | ||||||
| 	if (!name) { | 	if (!name) { | ||||||
| 		debug("cannot find property '%s': %d\n", type, len); | 		debug("cannot find property '%s': %d\n", type, len); | ||||||
| 		return -EINVAL; | 		return -EINVAL; | ||||||
|  | @ -136,11 +136,11 @@ static int spl_fit_get_image_name(const void *fit, int images, | ||||||
| 			 * node name. | 			 * node name. | ||||||
| 			 */ | 			 */ | ||||||
| 			int node; | 			int node; | ||||||
| 			int images = fdt_path_offset(fit, FIT_IMAGES_PATH); | 			int images = fdt_path_offset(ctx->fit, FIT_IMAGES_PATH); | ||||||
| 
 | 
 | ||||||
| 			node = find_node_from_desc(fit, images, str); | 			node = find_node_from_desc(ctx->fit, images, str); | ||||||
| 			if (node > 0) | 			if (node > 0) | ||||||
| 				str = fdt_get_name(fit, node, NULL); | 				str = fdt_get_name(ctx->fit, node, NULL); | ||||||
| 
 | 
 | ||||||
| 			found = true; | 			found = true; | ||||||
| 		} | 		} | ||||||
|  | @ -167,20 +167,20 @@ static int spl_fit_get_image_name(const void *fit, int images, | ||||||
|  * Return:	the node offset of the respective image node or a negative |  * Return:	the node offset of the respective image node or a negative | ||||||
|  *		error number. |  *		error number. | ||||||
|  */ |  */ | ||||||
| static int spl_fit_get_image_node(const void *fit, int images, | static int spl_fit_get_image_node(const struct spl_fit_info *ctx, | ||||||
| 				  const char *type, int index) | 				  const char *type, int index) | ||||||
| { | { | ||||||
| 	const char *str; | 	const char *str; | ||||||
| 	int err; | 	int err; | ||||||
| 	int node; | 	int node; | ||||||
| 
 | 
 | ||||||
| 	err = spl_fit_get_image_name(fit, images, type, index, &str); | 	err = spl_fit_get_image_name(ctx, type, index, &str); | ||||||
| 	if (err) | 	if (err) | ||||||
| 		return err; | 		return err; | ||||||
| 
 | 
 | ||||||
| 	debug("%s: '%s'\n", type, str); | 	debug("%s: '%s'\n", type, str); | ||||||
| 
 | 
 | ||||||
| 	node = fdt_subnode_offset(fit, images, str); | 	node = fdt_subnode_offset(ctx->fit, ctx->images_node, str); | ||||||
| 	if (node < 0) { | 	if (node < 0) { | ||||||
| 		pr_err("cannot find image node '%s': %d\n", str, node); | 		pr_err("cannot find image node '%s': %d\n", str, node); | ||||||
| 		return -EINVAL; | 		return -EINVAL; | ||||||
|  | @ -231,10 +231,7 @@ static int get_aligned_image_size(struct spl_load_info *info, int data_size, | ||||||
|  * spl_load_fit_image(): load the image described in a certain FIT node |  * spl_load_fit_image(): load the image described in a certain FIT node | ||||||
|  * @info:	points to information about the device to load data from |  * @info:	points to information about the device to load data from | ||||||
|  * @sector:	the start sector of the FIT image on the device |  * @sector:	the start sector of the FIT image on the device | ||||||
|  * @fit:	points to the flattened device tree blob describing the FIT |  * @ctx:	points to the FIT context structure | ||||||
|  *		image |  | ||||||
|  * @base_offset: the beginning of the data area containing the actual |  | ||||||
|  *		image data, relative to the beginning of the FIT |  | ||||||
|  * @node:	offset of the DT node describing the image to load (relative |  * @node:	offset of the DT node describing the image to load (relative | ||||||
|  *		to @fit) |  *		to @fit) | ||||||
|  * @image_info:	will be filled with information about the loaded image |  * @image_info:	will be filled with information about the loaded image | ||||||
|  | @ -245,7 +242,7 @@ static int get_aligned_image_size(struct spl_load_info *info, int data_size, | ||||||
|  * Return:	0 on success or a negative error number. |  * Return:	0 on success or a negative error number. | ||||||
|  */ |  */ | ||||||
| static int spl_load_fit_image(struct spl_load_info *info, ulong sector, | static int spl_load_fit_image(struct spl_load_info *info, ulong sector, | ||||||
| 			      void *fit, ulong base_offset, int node, | 			      const struct spl_fit_info *ctx, int node, | ||||||
| 			      struct spl_image_info *image_info) | 			      struct spl_image_info *image_info) | ||||||
| { | { | ||||||
| 	int offset; | 	int offset; | ||||||
|  | @ -259,6 +256,7 @@ static int spl_load_fit_image(struct spl_load_info *info, ulong sector, | ||||||
| 	int align_len = ARCH_DMA_MINALIGN - 1; | 	int align_len = ARCH_DMA_MINALIGN - 1; | ||||||
| 	uint8_t image_comp = -1, type = -1; | 	uint8_t image_comp = -1, type = -1; | ||||||
| 	const void *data; | 	const void *data; | ||||||
|  | 	const void *fit = ctx->fit; | ||||||
| 	bool external_data = false; | 	bool external_data = false; | ||||||
| 
 | 
 | ||||||
| 	if (IS_ENABLED(CONFIG_SPL_FPGA) || | 	if (IS_ENABLED(CONFIG_SPL_FPGA) || | ||||||
|  | @ -280,7 +278,7 @@ static int spl_load_fit_image(struct spl_load_info *info, ulong sector, | ||||||
| 	if (!fit_image_get_data_position(fit, node, &offset)) { | 	if (!fit_image_get_data_position(fit, node, &offset)) { | ||||||
| 		external_data = true; | 		external_data = true; | ||||||
| 	} else if (!fit_image_get_data_offset(fit, node, &offset)) { | 	} else if (!fit_image_get_data_offset(fit, node, &offset)) { | ||||||
| 		offset += base_offset; | 		offset += ctx->ext_data_offset; | ||||||
| 		external_data = true; | 		external_data = true; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | @ -356,7 +354,7 @@ static int spl_load_fit_image(struct spl_load_info *info, ulong sector, | ||||||
| 
 | 
 | ||||||
| static int spl_fit_append_fdt(struct spl_image_info *spl_image, | static int spl_fit_append_fdt(struct spl_image_info *spl_image, | ||||||
| 			      struct spl_load_info *info, ulong sector, | 			      struct spl_load_info *info, ulong sector, | ||||||
| 			      void *fit, int images, ulong base_offset) | 			      const struct spl_fit_info *ctx) | ||||||
| { | { | ||||||
| 	struct spl_image_info image_info; | 	struct spl_image_info image_info; | ||||||
| 	int node, ret = 0, index = 0; | 	int node, ret = 0, index = 0; | ||||||
|  | @ -368,7 +366,7 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, | ||||||
| 	image_info.load_addr = spl_image->load_addr + spl_image->size; | 	image_info.load_addr = spl_image->load_addr + spl_image->size; | ||||||
| 
 | 
 | ||||||
| 	/* Figure out which device tree the board wants to use */ | 	/* Figure out which device tree the board wants to use */ | ||||||
| 	node = spl_fit_get_image_node(fit, images, FIT_FDT_PROP, index++); | 	node = spl_fit_get_image_node(ctx, FIT_FDT_PROP, index++); | ||||||
| 	if (node < 0) { | 	if (node < 0) { | ||||||
| 		debug("%s: cannot find FDT node\n", __func__); | 		debug("%s: cannot find FDT node\n", __func__); | ||||||
| 
 | 
 | ||||||
|  | @ -382,7 +380,7 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, | ||||||
| 		else | 		else | ||||||
| 			return node; | 			return node; | ||||||
| 	} else { | 	} else { | ||||||
| 		ret = spl_load_fit_image(info, sector, fit, base_offset, node, | 		ret = spl_load_fit_image(info, sector, ctx, node, | ||||||
| 					 &image_info); | 					 &image_info); | ||||||
| 		if (ret < 0) | 		if (ret < 0) | ||||||
| 			return ret; | 			return ret; | ||||||
|  | @ -395,8 +393,7 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, | ||||||
| 		void *tmpbuffer = NULL; | 		void *tmpbuffer = NULL; | ||||||
| 
 | 
 | ||||||
| 		for (; ; index++) { | 		for (; ; index++) { | ||||||
| 			node = spl_fit_get_image_node(fit, images, FIT_FDT_PROP, | 			node = spl_fit_get_image_node(ctx, FIT_FDT_PROP, index); | ||||||
| 						      index); |  | ||||||
| 			if (node == -E2BIG) { | 			if (node == -E2BIG) { | ||||||
| 				debug("%s: No additional FDT node\n", __func__); | 				debug("%s: No additional FDT node\n", __func__); | ||||||
| 				break; | 				break; | ||||||
|  | @ -419,7 +416,7 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, | ||||||
| 					      __func__); | 					      __func__); | ||||||
| 			} | 			} | ||||||
| 			image_info.load_addr = (ulong)tmpbuffer; | 			image_info.load_addr = (ulong)tmpbuffer; | ||||||
| 			ret = spl_load_fit_image(info, sector, fit, base_offset, | 			ret = spl_load_fit_image(info, sector, ctx, | ||||||
| 						 node, &image_info); | 						 node, &image_info); | ||||||
| 			if (ret < 0) | 			if (ret < 0) | ||||||
| 				break; | 				break; | ||||||
|  | @ -434,12 +431,12 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, | ||||||
| 							(void *)image_info.load_addr); | 							(void *)image_info.load_addr); | ||||||
| 			if (ret) { | 			if (ret) { | ||||||
| 				pr_err("failed to apply DT overlay %s\n", | 				pr_err("failed to apply DT overlay %s\n", | ||||||
| 				       fit_get_name(fit, node, NULL)); | 				       fit_get_name(ctx->fit, node, NULL)); | ||||||
| 				break; | 				break; | ||||||
| 			} | 			} | ||||||
| 
 | 
 | ||||||
| 			debug("%s: DT overlay %s applied\n", __func__, | 			debug("%s: DT overlay %s applied\n", __func__, | ||||||
| 			      fit_get_name(fit, node, NULL)); | 			      fit_get_name(ctx->fit, node, NULL)); | ||||||
| 		} | 		} | ||||||
| 		free(tmpbuffer); | 		free(tmpbuffer); | ||||||
| 		if (ret) | 		if (ret) | ||||||
|  | @ -454,7 +451,7 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image, | ||||||
| 	return ret; | 	return ret; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static int spl_fit_record_loadable(const void *fit, int images, int index, | static int spl_fit_record_loadable(const struct spl_fit_info *ctx, int index, | ||||||
| 				   void *blob, struct spl_image_info *image) | 				   void *blob, struct spl_image_info *image) | ||||||
| { | { | ||||||
| 	int ret = 0; | 	int ret = 0; | ||||||
|  | @ -462,17 +459,16 @@ static int spl_fit_record_loadable(const void *fit, int images, int index, | ||||||
| 	const char *name; | 	const char *name; | ||||||
| 	int node; | 	int node; | ||||||
| 
 | 
 | ||||||
| 	ret = spl_fit_get_image_name(fit, images, "loadables", | 	ret = spl_fit_get_image_name(ctx, "loadables", index, &name); | ||||||
| 				     index, &name); |  | ||||||
| 	if (ret < 0) | 	if (ret < 0) | ||||||
| 		return ret; | 		return ret; | ||||||
| 
 | 
 | ||||||
| 	node = spl_fit_get_image_node(fit, images, "loadables", index); | 	node = spl_fit_get_image_node(ctx, "loadables", index); | ||||||
| 
 | 
 | ||||||
| 	ret = fdt_record_loadable(blob, index, name, image->load_addr, | 	ret = fdt_record_loadable(blob, index, name, image->load_addr, | ||||||
| 				  image->size, image->entry_point, | 				  image->size, image->entry_point, | ||||||
| 				  fdt_getprop(fit, node, "type", NULL), | 				  fdt_getprop(ctx->fit, node, "type", NULL), | ||||||
| 				  fdt_getprop(fit, node, "os", NULL)); | 				  fdt_getprop(ctx->fit, node, "os", NULL)); | ||||||
| #endif | #endif | ||||||
| 	return ret; | 	return ret; | ||||||
| } | } | ||||||
|  | @ -592,8 +588,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	struct spl_image_info image_info; | 	struct spl_image_info image_info; | ||||||
| 	struct spl_fit_info ctx; | 	struct spl_fit_info ctx; | ||||||
| 	int node = -1; | 	int node = -1; | ||||||
| 	int images, ret; | 	int ret; | ||||||
| 	int base_offset; |  | ||||||
| 	int index = 0; | 	int index = 0; | ||||||
| 	int firmware_node; | 	int firmware_node; | ||||||
| 
 | 
 | ||||||
|  | @ -609,16 +604,11 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	if (ret < 0) | 	if (ret < 0) | ||||||
| 		return ret; | 		return ret; | ||||||
| 
 | 
 | ||||||
| 	images = ctx.images_node; |  | ||||||
| 	fit = (void *)ctx.fit; |  | ||||||
| 	base_offset = ctx.ext_data_offset; |  | ||||||
| 
 |  | ||||||
| #ifdef CONFIG_SPL_FPGA | #ifdef CONFIG_SPL_FPGA | ||||||
| 	node = spl_fit_get_image_node(fit, images, "fpga", 0); | 	node = spl_fit_get_image_node(&ctx, "fpga", 0); | ||||||
| 	if (node >= 0) { | 	if (node >= 0) { | ||||||
| 		/* Load the image and set up the spl_image structure */ | 		/* Load the image and set up the spl_image structure */ | ||||||
| 		ret = spl_load_fit_image(info, sector, fit, base_offset, node, | 		ret = spl_load_fit_image(info, sector, &ctx, node, spl_image); | ||||||
| 					 spl_image); |  | ||||||
| 		if (ret) { | 		if (ret) { | ||||||
| 			printf("%s: Cannot load the FPGA: %i\n", __func__, ret); | 			printf("%s: Cannot load the FPGA: %i\n", __func__, ret); | ||||||
| 			return ret; | 			return ret; | ||||||
|  | @ -647,15 +637,14 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	 *   - fall back to using the first 'loadables' entry | 	 *   - fall back to using the first 'loadables' entry | ||||||
| 	 */ | 	 */ | ||||||
| 	if (node < 0) | 	if (node < 0) | ||||||
| 		node = spl_fit_get_image_node(fit, images, FIT_FIRMWARE_PROP, | 		node = spl_fit_get_image_node(&ctx, FIT_FIRMWARE_PROP, 0); | ||||||
| 					      0); |  | ||||||
| #ifdef CONFIG_SPL_OS_BOOT | #ifdef CONFIG_SPL_OS_BOOT | ||||||
| 	if (node < 0) | 	if (node < 0) | ||||||
| 		node = spl_fit_get_image_node(fit, images, FIT_KERNEL_PROP, 0); | 		node = spl_fit_get_image_node(&ctx, FIT_KERNEL_PROP, 0); | ||||||
| #endif | #endif | ||||||
| 	if (node < 0) { | 	if (node < 0) { | ||||||
| 		debug("could not find firmware image, trying loadables...\n"); | 		debug("could not find firmware image, trying loadables...\n"); | ||||||
| 		node = spl_fit_get_image_node(fit, images, "loadables", 0); | 		node = spl_fit_get_image_node(&ctx, "loadables", 0); | ||||||
| 		/*
 | 		/*
 | ||||||
| 		 * If we pick the U-Boot image from "loadables", start at | 		 * If we pick the U-Boot image from "loadables", start at | ||||||
| 		 * the second image when later loading additional images. | 		 * the second image when later loading additional images. | ||||||
|  | @ -669,8 +658,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	/* Load the image and set up the spl_image structure */ | 	/* Load the image and set up the spl_image structure */ | ||||||
| 	ret = spl_load_fit_image(info, sector, fit, base_offset, node, | 	ret = spl_load_fit_image(info, sector, &ctx, node, spl_image); | ||||||
| 				 spl_image); |  | ||||||
| 	if (ret) | 	if (ret) | ||||||
| 		return ret; | 		return ret; | ||||||
| 
 | 
 | ||||||
|  | @ -678,7 +666,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	 * For backward compatibility, we treat the first node that is | 	 * For backward compatibility, we treat the first node that is | ||||||
| 	 * as a U-Boot image, if no OS-type has been declared. | 	 * as a U-Boot image, if no OS-type has been declared. | ||||||
| 	 */ | 	 */ | ||||||
| 	if (!spl_fit_image_get_os(fit, node, &spl_image->os)) | 	if (!spl_fit_image_get_os(ctx.fit, node, &spl_image->os)) | ||||||
| 		debug("Image OS is %s\n", genimg_get_os_name(spl_image->os)); | 		debug("Image OS is %s\n", genimg_get_os_name(spl_image->os)); | ||||||
| #if !defined(CONFIG_SPL_OS_BOOT) | #if !defined(CONFIG_SPL_OS_BOOT) | ||||||
| 	else | 	else | ||||||
|  | @ -690,8 +678,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	 * We allow this to fail, as the U-Boot image might embed its FDT. | 	 * We allow this to fail, as the U-Boot image might embed its FDT. | ||||||
| 	 */ | 	 */ | ||||||
| 	if (spl_image->os == IH_OS_U_BOOT) { | 	if (spl_image->os == IH_OS_U_BOOT) { | ||||||
| 		ret = spl_fit_append_fdt(spl_image, info, sector, fit, | 		ret = spl_fit_append_fdt(spl_image, info, sector, &ctx); | ||||||
| 					 images, base_offset); |  | ||||||
| 		if (!IS_ENABLED(CONFIG_OF_EMBED) && ret < 0) | 		if (!IS_ENABLED(CONFIG_OF_EMBED) && ret < 0) | ||||||
| 			return ret; | 			return ret; | ||||||
| 	} | 	} | ||||||
|  | @ -701,7 +688,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	for (; ; index++) { | 	for (; ; index++) { | ||||||
| 		uint8_t os_type = IH_OS_INVALID; | 		uint8_t os_type = IH_OS_INVALID; | ||||||
| 
 | 
 | ||||||
| 		node = spl_fit_get_image_node(fit, images, "loadables", index); | 		node = spl_fit_get_image_node(&ctx, "loadables", index); | ||||||
| 		if (node < 0) | 		if (node < 0) | ||||||
| 			break; | 			break; | ||||||
| 
 | 
 | ||||||
|  | @ -713,20 +700,18 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 		if (firmware_node == node) | 		if (firmware_node == node) | ||||||
| 			continue; | 			continue; | ||||||
| 
 | 
 | ||||||
| 		ret = spl_load_fit_image(info, sector, fit, base_offset, node, | 		ret = spl_load_fit_image(info, sector, &ctx, node, &image_info); | ||||||
| 					 &image_info); |  | ||||||
| 		if (ret < 0) { | 		if (ret < 0) { | ||||||
| 			printf("%s: can't load image loadables index %d (ret = %d)\n", | 			printf("%s: can't load image loadables index %d (ret = %d)\n", | ||||||
| 			       __func__, index, ret); | 			       __func__, index, ret); | ||||||
| 			return ret; | 			return ret; | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if (!spl_fit_image_get_os(fit, node, &os_type)) | 		if (!spl_fit_image_get_os(ctx.fit, node, &os_type)) | ||||||
| 			debug("Loadable is %s\n", genimg_get_os_name(os_type)); | 			debug("Loadable is %s\n", genimg_get_os_name(os_type)); | ||||||
| 
 | 
 | ||||||
| 		if (os_type == IH_OS_U_BOOT) { | 		if (os_type == IH_OS_U_BOOT) { | ||||||
| 			spl_fit_append_fdt(&image_info, info, sector, | 			spl_fit_append_fdt(&image_info, info, sector, &ctx); | ||||||
| 					   fit, images, base_offset); |  | ||||||
| 			spl_image->fdt_addr = image_info.fdt_addr; | 			spl_image->fdt_addr = image_info.fdt_addr; | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
|  | @ -740,7 +725,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 
 | 
 | ||||||
| 		/* Record our loadables into the FDT */ | 		/* Record our loadables into the FDT */ | ||||||
| 		if (spl_image->fdt_addr) | 		if (spl_image->fdt_addr) | ||||||
| 			spl_fit_record_loadable(fit, images, index, | 			spl_fit_record_loadable(&ctx, index, | ||||||
| 						spl_image->fdt_addr, | 						spl_image->fdt_addr, | ||||||
| 						&image_info); | 						&image_info); | ||||||
| 	} | 	} | ||||||
|  | @ -756,7 +741,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image, | ||||||
| 	spl_image->flags |= SPL_FIT_FOUND; | 	spl_image->flags |= SPL_FIT_FOUND; | ||||||
| 
 | 
 | ||||||
| #ifdef CONFIG_IMX_HAB | #ifdef CONFIG_IMX_HAB | ||||||
| 	board_spl_fit_post_load(fit); | 	board_spl_fit_post_load(ctx.fit); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| 	return 0; | 	return 0; | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue