
Dear Sergey Mironov,
In message AANLkTinFDxV85ENF9GLd3GjnD-ZUOEXsqCE1VdXd=5fo@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