[PATCH 09/32] spl: Avoid an #ifdef when printing gd->malloc_ptr

Tom Rini trini at konsulko.com
Wed Aug 30 23:39:16 CEST 2023


On Wed, Aug 30, 2023 at 12:04:40PM -0600, Simon Glass wrote:
> Use an accessor in the header file to avoid this.
> 
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
> 
>  common/spl/spl.c                  | 9 +++++----
>  include/asm-generic/global_data.h | 7 +++++++
>  2 files changed, 12 insertions(+), 4 deletions(-)
> 
> diff --git a/common/spl/spl.c b/common/spl/spl.c
> index f0a90c280da..f5cef81000c 100644
> --- a/common/spl/spl.c
> +++ b/common/spl/spl.c
> @@ -876,10 +876,11 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
>  	} else {
>  		debug("Unsupported OS image.. Jumping nevertheless..\n");
>  	}
> -#if CONFIG_VAL(SYS_MALLOC_F_LEN) && !defined(CONFIG_SPL_SYS_MALLOC_SIZE)
> -	debug("SPL malloc() used 0x%lx bytes (%ld KB)\n", gd->malloc_ptr,
> -	      gd->malloc_ptr / 1024);
> -#endif
> +	if (IS_ENABLED(CONFIG_SYS_MALLOC_F) &&
> +	    !IS_ENABLED(CONFIG_SPL_SYS_MALLOC_SIZE))
> +		debug("SPL malloc() used 0x%lx bytes (%ld KB)\n",
> +		      gd_malloc_ptr(), gd_malloc_ptr() / 1024);
> +
>  	bootstage_mark_name(get_bootstage_id(false), "end phase");
>  #ifdef CONFIG_BOOTSTAGE_STASH
>  	ret = bootstage_stash((void *)CONFIG_BOOTSTAGE_STASH_ADDR,
> diff --git a/include/asm-generic/global_data.h b/include/asm-generic/global_data.h
> index 8fc205ded1a..edf9ff6823f 100644
> --- a/include/asm-generic/global_data.h
> +++ b/include/asm-generic/global_data.h
> @@ -573,6 +573,13 @@ static_assert(sizeof(struct global_data) == GD_SIZE);
>  #define gd_malloc_start()	0
>  #define gd_set_malloc_start(val)
>  #endif
> +
> +#if CONFIG_VAL(SYS_MALLOC_F_LEN)
> +#define gd_malloc_ptr()		gd->malloc_ptr
> +#else
> +#define gd_malloc_ptr()		0L
> +#endif
> +
>  /**
>   * enum gd_flags - global data flags
>   *

This is another case where readability is not improved. I also have a
bad feeling that changing that exact area had some unintended
consequences from the compiler, that totally should not have happened.
But maybe that was something in a similar code section instead.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20230830/1f4bae3c/attachment.sig>


More information about the U-Boot mailing list