[U-Boot] [PATCH V2 1/5] ARM: fix u-boot.lds for -ffunction-sections/-fdata-sections

Allen Martin
2012-10-20T05:46:45Z

On Thu, Oct 18, 2012 at 04:25:55PM -0700, Stephen Warren wrote:
> From: Stephen Warren <swarren@nvidia.com>
>
> When -ffunction-sections or -fdata-section are used, symbols are placed
> into sections such as .data.eserial1_device and .bss.serial_current.
> Update the linker script to explicitly include these. Without this
> change (at least with my gcc-4.5.3 built using crosstool-ng), I see that
> the sections do end up being included, but __bss_end__ gets set to the
> same value as __bss_start.
>

Acked-by: Allen Martin <amartin@nvidia.com>

> Signed-off-by: Stephen Warren <swarren@nvidia.com>
> ---
> v2: Removed changes from some entries where it wasn't needed.
> ---
> arch/arm/cpu/u-boot.lds | 8 ++++----
> 1 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/cpu/u-boot.lds b/arch/arm/cpu/u-boot.lds
> index e49ca0c..9153c3d 100644
> --- a/arch/arm/cpu/u-boot.lds
> +++ b/arch/arm/cpu/u-boot.lds
> @@ -34,8 +34,8 @@ SECTIONS
> .text :
> {
> __image_copy_start = .;
> - CPUDIR/start.o (.text)
> - *(.text)
> + CPUDIR/start.o (.text*)
> + *(.text*)
> }
>
> . = ALIGN(4);
> @@ -43,7 +43,7 @@ SECTIONS
>
> . = ALIGN(4);
> .data : {
> - *(.data)
> + *(.data*)
> }
>
> . = ALIGN(4);
> @@ -81,7 +81,7 @@ SECTIONS
>
> .bss __rel_dyn_start (OVERLAY) : {
> __bss_start = .;
> - *(.bss)
> + *(.bss*)
> . = ALIGN(4);
> __bss_end__ = .;
> }
> --
> 1.7.0.4
>

--
nvpublic