[U-Boot] arm: timer_init() and bss (relocation)

John Rigby john.rigby at linaro.org
Sat Jan 22 07:38:49 CET 2011


On Fri, Jan 21, 2011 at 11:07 PM, Alexander Holler <holler at ahsoftware.de> wrote:
> Hello,
>
> because I still have problems where I think the problem is the
> relocation, I've had a look at some timer code.
>
> E.g. in arch/arm/cpu/arm926ejs/kirkwood/timer.c  on top there is
>
> struct kwtmr_registers *kwtmr_regs = (struct kwtmr_registers
> *)KW_TIMER_BASE;
>
> which is used in timer_init().
>
> In arch/arm/cpu/armv7/omap-common/timer.c we have
>
> static struct gptimer *timer_base = (struct gptimer *)CONFIG_SYS_TIMERBASE;
>
> which is used in timer_init() too.
>
> (I assume similiar code is used in more files, I've just had a look at
> those two.)
>
> timer_init() is called in board_init_f() through init_sequence, that
> means before relocation.
>
> Did I miss something, or I'm right that this is a problem because those
> two variables are stored in bss but are accessed before relocation?
>
These are both initialized data so they do not go in bss.
> Regards,
>
> Alexander
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>


More information about the U-Boot mailing list