confusion about relocation (ARM)

Matthias Kaehlcke matthias at kaehlcke.net
Mon Jan 4 14:21:53 EST 2010


hi sascha,

El Mon, Jan 04, 2010 at 01:07:58PM +0100 Sascha Hauer ha dit:

> On Fri, Jan 01, 2010 at 10:48:26PM +0100, Matthias Kaehlcke wrote:
> > El Fri, Jan 01, 2010 at 09:36:29PM +0100 Eric Bénard ha dit:
> > 
> > > Le 01/01/2010 20:48, Matthias Kaehlcke a écrit :
> > >> a comment in start_barebox() says 'We are running from RAM now', so i
> > >> deduced SDRAM must work. but after having a look at start-arm.S i'm a
> > >> little bit confused. as far as i understand the barebox code is copied
> > >> to RAM in copy_loop(). what i don't see is where the program counter
> > >> is set to the address in RAM?
> > >>
> > > in arch/arm/cpu/start-arm.S @ line 245 :
> > >         ldr     pc, _start_armboot
> > 
> > i saw this line, but i don't understand how it comes that
> > the address at _start_armboot points to RAM and not to the flash.
> 
> When your barebox image is linked to RAM (that is 0x05700000 in your
> case) _start_armboot is in RAM, too.
> 
> > 
> > another question: how does ARCH_TEXT_BASE fit in here? i defined it as
> > 0x05700000, but in the barebox image _TEXT_BASE is 0x00000000
> 
> Have a look at barebox.S, it should look like:
> 
> barebox:     file format elf32-littlearm
> 
> 
> Disassembly of section .text:
> 
> 87f00000 <_start>:
> ...

thanks for your reply!

finally i figured out what was going wrong: after getting compiler errors
when using a config file created from scratch, i took a defconfig of
another ARM board as starting point. this board defines
CONFIG_TEXT_BASE as 0x00000000, in consequence ARCH_TEXT_BASE
(0x05700000) of the edb93xx board wasn't used.

after setting CONFIG_TEST_BASE to the correct value i got a barebox
prompt :)

-- 
Matthias Kaehlcke
Embedded Linux Developer
Barcelona

      Debugging is like alien abduction. Large blocks of time disappear,
                    for which you have no explanation
                                                                 .''`.
    using free software / Debian GNU/Linux | http://debian.org  : :'  :
                                                                `. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4                  `-



More information about the barebox mailing list