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

Allen Martin amartin at nvidia.com
Sat Oct 20 07:46:45 CEST 2012


On Thu, Oct 18, 2012 at 04:25:55PM -0700, Stephen Warren wrote:
> From: Stephen Warren <swarren at 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 at nvidia.com>

> Signed-off-by: Stephen Warren <swarren at 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


More information about the U-Boot mailing list