Hi Marek,

On Fri, Apr 20, 2012 at 8:23 AM, Marek Vasut <ma...@denx.de> wrote:
> Dear Ilya Averyanov,
>
>> 2012/4/20 Marek Vasut <ma...@denx.de>
>>
>> > Dear Gabriel Huau,
>> >
>> > > On Thu, Apr 19, 2012 at 10:08:47PM +0200, Marek Vasut wrote:
>> > > > Dear Gabriel Huau,
>> > > >
>> > > > > ---
>> > > > >

>> > > > > + /* some delay between MPLL and UPLL */
>> > > > > + pll_delay(500000);
>> > > >
>> > > > You use udelay() below, do you need pll_delay() at all?
>> > >
>> > > Yes, because initialisation of PLL is done before timer_init(), so we
>> > > can't use udelay().
>> >
>> > Maybe fix the timer driver?
>>
>> How fix timer driver if arch_cpu_init(void) call befor timer_init in
>> \arch\arm\lib\board.c:227 init_fnc_t *init_sequence[] = {
>
> Where did you get such a weird path? \arch\arm... ?
>
> btw you can always check some bit, if the timer is enabled, behave one way,
> otherwise, behave other way.

There is plenty of room in gd->flags - Pick a bit in the high-order 16-bits

It will be clear at startup and when you initialise the timer, you can set
the bit. udelay() can do a simple test on the bit and call the appropriate
function

Regards,

Graeme
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to