[PATCH 3/5] barebox-data: add barebox-data sections

Sascha Hauer s.hauer at pengutronix.de
Fri Aug 31 03:51:11 EDT 2012


On Thu, Aug 30, 2012 at 12:29:52PM +0200, Alexander Aring wrote:
> Add barebox-data section in arm branch to get complete
> barebox regions in sdram regions tree.
> 
> Signed-off-by: Alexander Aring <a.aring at phytec.de>
> ---
>  arch/arm/lib/barebox.lds.S                       |    6 +++++-
>  arch/blackfin/boards/ipe337/barebox.lds.S        |    6 +++++-
>  arch/mips/lib/barebox.lds.S                      |    5 ++++-
>  arch/nios2/cpu/barebox.lds.S                     |    5 +++--
>  arch/ppc/boards/freescale-p2020rdb/barebox.lds.S |    6 ++++--
>  arch/ppc/boards/pcm030/barebox.lds.S             |    5 +++--
>  arch/x86/lib/barebox.lds.S                       |    5 ++++-
>  common/memory.c                                  |    4 ++++
>  include/asm-generic/sections.h                   |    1 +
>  9 files changed, 33 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/arm/lib/barebox.lds.S b/arch/arm/lib/barebox.lds.S
> index e0bae70..ae0b760 100644
> --- a/arch/arm/lib/barebox.lds.S
> +++ b/arch/arm/lib/barebox.lds.S
> @@ -70,7 +70,9 @@ SECTIONS
>  		__stop_unwind_tab = .;
>  	}
>  #endif
> -	_etext = .;			/* End of text and rodata section */
> +	_etext = . - 1;			/* End of text and rodata section */

I am not sure this is a good idea. Looking at it this indeed seems to be
correct. Anyway, at least in the Linux kernel I can find things like:

	codesize = (unsigned long)_etext - (unsigned long)_text;

If we have _etext = . the above results in the correct codesize, but if
we change this to _etext = . - 1 we would have to do

	codesize = (unsigned long)_etext - (unsigned long)_text + 1;

instead.

Everyone else including the kernel and the standard linker scripts from
ld have _etext = .; so I vote for keeping it that way.


> @@ -83,6 +85,8 @@ SECTIONS
>  	__usymtab : { BAREBOX_SYMS }
>  	___usymtab_end = .;
>  
> +	_edata - . -1;

s/-/=/

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list