On 10/3/24 16:20, Jerome Forissier wrote:
> CPU_MIPS64 needs 8-byte alignment on the linker lists, otherwise an
> exception may occur. Fixes an issue found on malta64 with QEMU:
> 
>  Breakpoint 1, lists_driver_lookup_name (name=0xffffffffbe043578 
> "root_driver") at /home/uboot/u-boot/drivers/core/lists.c:31
>  31                      if (!strcmp(name, entry->name))
>  [...]
>  ld      a1,0(s0)
> 
>  (gdb) p/x &entry->name
>  0xffffffffbe04b0d4
>  (gdb) p/x $s0
>  0xffffffffbe04b0d4
> 
>  $ grep __u_boot_list /tmp/malta64/u-boot.objdump
>  4 __u_boot_list 000018e0  ffffffffbe04a4d4  ffffffffbe04a4d4  0004a584  2**2
> 
> Signed-off-by: Jerome Forissier <[email protected]>
> ---
>  arch/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/Kconfig b/arch/Kconfig
> index 8f1f4667012..8f4df849801 100644
> --- a/arch/Kconfig
> +++ b/arch/Kconfig
> @@ -45,7 +45,7 @@ config SYS_CACHELINE_SIZE
>  config LINKER_LIST_ALIGN
>       int
>       default 32 if SANDBOX
> -     default 8 if ARM64 || X86
> +     default 8 if ARM64 || X86 || CPU_MIPS64
>       default 4
>       help
>         Force the each linker list to be aligned to this boundary. This

Superseded by 
https://patchwork.ozlabs.org/project/uboot/patch/[email protected]/

-- 
Jerome

Reply via email to