[PATCH 10/16] mips: unconditionally enable u_boot_list section in u-boot-spl.lds

Daniel Schwierzeck daniel.schwierzeck at gmail.com
Wed Jan 8 17:11:16 CET 2020



Am 08.01.20 um 04:01 schrieb Weijie Gao:
> u_boot_list is not only used by DM, but also by some SPL image load methods
> such as spl_nor.c.
> 
> This patch removes CONFIG_SPL_DM surrounding the u_boot_list section to
> make sure SPL image load methods can be correctly built into u-boot without
> DM enabled.
> 
> Signed-off-by: Weijie Gao <weijie.gao at mediatek.com>
> ---
>  arch/mips/cpu/u-boot-spl.lds | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/arch/mips/cpu/u-boot-spl.lds b/arch/mips/cpu/u-boot-spl.lds
> index d08d6222c4..cd143ab168 100644
> --- a/arch/mips/cpu/u-boot-spl.lds
> +++ b/arch/mips/cpu/u-boot-spl.lds
> @@ -27,12 +27,10 @@ SECTIONS
>  		*(SORT_BY_ALIGNMENT(.sdata*))
>  	} > .spl_mem
>  
> -#ifdef CONFIG_SPL_DM
>  	. = ALIGN(4);
>  	.u_boot_list : {
>  		KEEP(*(SORT(.u_boot_list*)));
>  	} > .spl_mem
> -#endif

unconditionally including this is a bad idea on SoC's with a very
constrained SRAM space (e.g. CI20 board) or in SPL/TPL scenarios.

One solution would be to replace #ifdef CONFIG_SPL_DM with something
like #ifdef CONFIG_MIPS_SPL_LIST and in Kconfig something like this:

config MIPS_SPL_LIST
   bool "..."
   default y if (SPL_DM | SPL_NOR_SUPPORT)
   default n


Alternatively with an inverted semantic:

#ifndef CONFIG_MIPS_SPL_LIST_EXLCUDE
...
#endif


config MIPS_SPL_LIST_EXLCUDE
    bool ""
    default n

config ARCH_JZ47XX
    ...
    select MIPS_SPL_LIST_EXLCUDE


>  
>  	. = ALIGN(4);
>  	__image_copy_end = .;
> 

-- 
- Daniel


More information about the U-Boot mailing list