[U-Boot] [ARM] gap between _start and CONFIG_SYS_TEXT_BASE

Wolfgang Denk wd at denx.de
Tue Dec 21 19:35:35 CET 2010


Dear Sergey Mironov,

In message <AANLkTinFDxV85ENF9GLd3GjnD-ZUOEXsqCE1VdXd=5fo at mail.gmail.com> you wrote:
>
> Well, the newest one I've tried was arm-none-linux-gnueabi-gcc (Gentoo
> 4.4.4-r1 p1.1, pie-0.4.5) 4.4.4. But I found it broken since it messed
> up relocation-related sections for some reason.  What compiler you
> think I should try?

I don't know and cannot comment on the gentoo compilers, but there is
plenty of other options: Poky, Linaro, ELDK, CodeSourcery,
OpenEmbedded, ...

> >> Text_base: 0x00100010
> >
> > Is there a special reason for chosing such an odd address?
> >
> > Why don't you use 0x00100000 ?
> 
> Our SoC's bootloader expects this strange address. It is hardcoded
> into chip and can't be changed :(

This statement makes zero sense to me.  Your "SoC's bootloader" cannot
know or deman where you are linking your image to. It may expect a
certain entry point address, that's all - but that is completely
independent of TEXT_BASE.

> I branched out from commit # 227b7251554 and tried to stay default as
> much as possible. So I am using cpu/arm1176's default  u-boot.lds and
> start.S

OK. I recommend to adjust start.S for your entry point requirements,
and leave CONFIG_SYS_TEXT_BASE at a sane value instead.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Always try to do things in chronological order; it's  less  confusing
that way.


More information about the U-Boot mailing list