]> git.dujemihanovic.xyz Git - u-boot.git/commit
aspeed/spl: Remove OVERLAY from linker script
authorJoel Stanley <joel@jms.id.au>
Wed, 29 Jun 2022 07:05:24 +0000 (16:35 +0930)
committerTom Rini <trini@konsulko.com>
Wed, 6 Jul 2022 18:32:00 +0000 (14:32 -0400)
commit3045d61c1c8e8a628aac02e841010f7cfcce85c1
tree78547df95d77689edb63cb78f46b5bf5323cd182
parent154cffa16a7b6647e180ed6cef55342b39580aff
aspeed/spl: Remove OVERLAY from linker script

The generic arm linker script contains this section:

   .bss __rel_dyn_start (OVERLAY) : {
       ...
   }

The (OVERLAY) syntax in the description causes the .bss section to be
included in the NOR area of the image:

 $ objdump -t -j .bss spl/u-boot-spl
  SYMBOL TABLE:
  0000c61c l    d  .bss 00000000 .bss
  0000c640 l     O .bss 00000040 __value.0
  0000c68c g     O .bss 00000000 __bss_end
  0000c61c g     O .bss 00000000 __bss_start
  0000c680 g     O .bss 0000000c stdio_devices

This is what the custom linker script tries to avoid, as the NOR area is
read-only.

Remove the OVERLAY syntax to fix the BSS location:

 $ objdump -t -j .bss spl/u-boot-spl
  SYMBOL TABLE:
  83000000 l    d  .bss 00000000 .bss
  83000000 l     O .bss 00000040 __value.0
  0000c61c g     O .bss 00000000 __image_copy_end
  8300004c g     O .bss 00000000 __bss_end
  83000000 g     O .bss 00000000 __bss_start
  83000040 g     O .bss 0000000c stdio_devices

This restores the state of the linker script before the patch that fixed
the linker lists issue.

Fixes: f6810b749f2e ("aspeed/ast2600: Fix SPL linker script")
Signed-off-by: Joel Stanley <joel@jms.id.au>
arch/arm/mach-aspeed/ast2600/u-boot-spl.lds