[U-Boot] [U-Boot,v2,04/23] spl: Set up the bloblist in SPL

Tom Rini trini at konsulko.com
Fri Nov 9 18:43:00 UTC 2018


On Tue, Oct 02, 2018 at 05:22:34AM -0600, Simon Glass wrote:
> The bloblist is normally set up in SPL ready for use by U-Boot. Add
> a simple implementation of this to the common SPL code.
> 
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
> 
> Changes in v2: None
> 
>  common/spl/spl.c | 18 ++++++++++++++++--
>  include/spl.h    | 27 +++++++++++++++++++++++++++
>  2 files changed, 43 insertions(+), 2 deletions(-)
> 
> diff --git a/common/spl/spl.c b/common/spl/spl.c
> index b917624e61d..2ca900ae9ed 100644
> --- a/common/spl/spl.c
> +++ b/common/spl/spl.c
> @@ -7,6 +7,7 @@
>   */
>  
>  #include <common.h>
> +#include <bloblist.h>
>  #include <binman_sym.h>
>  #include <dm.h>
>  #include <spl.h>
> @@ -345,6 +346,14 @@ static int spl_common_init(bool setup_malloc)
>  		return ret;
>  	}
>  #endif
> +	if (CONFIG_IS_ENABLED(BLOBLIST)) {
> +		ret = bloblist_init();
> +		if (ret) {
> +			debug("%s: Failed to set up bloblist: ret=%d\n",
> +			      __func__, ret);
> +			return ret;
> +		}
> +	}
>  	if (CONFIG_IS_ENABLED(OF_CONTROL) && !CONFIG_IS_ENABLED(OF_PLATDATA)) {
>  		ret = fdtdec_setup();
>  		if (ret) {
> @@ -483,6 +492,7 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
>  		BOOT_DEVICE_NONE,
>  	};
>  	struct spl_image_info spl_image;
> +	int ret;
>  
>  	debug(">>spl:board_init_r()\n");
>  
> @@ -529,6 +539,12 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
>  	}
>  
>  	spl_perform_fixups(&spl_image);
> +	if (CONFIG_IS_ENABLED(BLOBLIST)) {
> +		ret = bloblist_finish();
> +		if (ret)
> +			printf("Warning: Failed to finish bloblist (ret=%d)\n",
> +			       ret);
> +	}
>  
>  #ifdef CONFIG_CPU_V7M
>  	spl_image.entry_point |= 0x1;
> @@ -558,8 +574,6 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
>  	      gd->malloc_ptr / 1024);
>  #endif
>  #ifdef CONFIG_BOOTSTAGE_STASH
> -	int ret;
> -
>  	bootstage_mark_name(BOOTSTAGE_ID_END_SPL, "end_spl");
>  	ret = bootstage_stash((void *)CONFIG_BOOTSTAGE_STASH_ADDR,
>  			      CONFIG_BOOTSTAGE_STASH_SIZE);

I think we'll need a __maybe_unused on ret above for !BOOTSTAGE_STASH &&
!BLOBLIST.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20181109/ced53b55/attachment.sig>


More information about the U-Boot mailing list