All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] davinci: lowlevel_init for davinci boards
@ 2010-07-07 16:00 Stefano Babic
  2010-07-07 16:47 ` Paulraj, Sandeep
  0 siblings, 1 reply; 4+ messages in thread
From: Stefano Babic @ 2010-07-07 16:00 UTC (permalink / raw)
  To: u-boot

Hi,

I plan to use a davinci DM365 processor booting directly from a NOR
flash, without using the UBL provided by Texas. So I do not want to set
CONFIG_SKIP_LOWLEVEL_INIT in my config.

I am confused about the low level initialization for davinci SOC:
arch/arm/cpu/arm926ejs/davinci/lowlevel_init.S sounds to be general for
all DaVinci processors, but after a check I can see that it does not
match at least for the DM365 (most offset are wrong). I have search for
boards using this file, and it seems that only the sonata board could
use it, if it does not boot from nand (it has a DM644).

Is the actual lowlevel_init.S really specialized only for the DM644 ? Do
we need a specialized file for the other processors, too ? Or am I
missing something ?

Best regards,
Stefano Babic

-- 
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [U-Boot] davinci: lowlevel_init for davinci boards
  2010-07-07 16:00 [U-Boot] davinci: lowlevel_init for davinci boards Stefano Babic
@ 2010-07-07 16:47 ` Paulraj, Sandeep
  2010-07-08  9:54   ` Stefano Babic
  0 siblings, 1 reply; 4+ messages in thread
From: Paulraj, Sandeep @ 2010-07-07 16:47 UTC (permalink / raw)
  To: u-boot


> 
> Hi,
> 
> I plan to use a davinci DM365 processor booting directly from a NOR
> flash, without using the UBL provided by Texas. So I do not want to set
> CONFIG_SKIP_LOWLEVEL_INIT in my config.
> 
> I am confused about the low level initialization for davinci SOC:
> arch/arm/cpu/arm926ejs/davinci/lowlevel_init.S sounds to be general for
> all DaVinci processors, but after a check I can see that it does not
> match at least for the DM365 (most offset are wrong). I have search for
> boards using this file, and it seems that only the sonata board could
> use it, if it does not boot from nand (it has a DM644).
> 
> Is the actual lowlevel_init.S really specialized only for the DM644 ? Do
> we need a specialized file for the other processors, too ? Or am I
> missing something ?

Yes the lowlevel_init.S is meant only for DM6446.

Later TI decided to do all the low level init in the UBL for both NAND and NOR boot modes. Thus the lowlevel_init.S actually became redundant w.r.t to our most recent releases, but for legacy reasons it continues to be present in U-Boot.


Sandeep  

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [U-Boot] davinci: lowlevel_init for davinci boards
  2010-07-07 16:47 ` Paulraj, Sandeep
@ 2010-07-08  9:54   ` Stefano Babic
  2010-07-08 17:34     ` Paulraj, Sandeep
  0 siblings, 1 reply; 4+ messages in thread
From: Stefano Babic @ 2010-07-08  9:54 UTC (permalink / raw)
  To: u-boot

Paulraj, Sandeep wrote:
>> Hi,
>> 
Hi,

> 
> Yes the lowlevel_init.S is meant only for DM6446.
> 
> Later TI decided to do all the low level init in the UBL for both
> NAND and NOR boot modes. Thus the lowlevel_init.S actually became
> redundant w.r.t to our most recent releases, but for legacy reasons
> it continues to be present in U-Boot.

Ok, I see, thanks. I have at the moment no other solution as to port the
initialization of the processor (PLL,DDR2, etc.) into a specialized
lowlevel_init.S for the DM365.

I am quite unsure about the role of the RBL, too. I have assumed that
the setup to access the AEMIF interface is provided only by setting the
AECFG pins and the role of RBL is to copy the UBL into IRAM and start it.

However, the RBL could initialize the processor in some way I do not
know before loading the UBL and then I could get further problems due to
a missing or wrong initialization that I have not seen in UBL. Do you
know if the RBL is responsible to some further initialization before
loading the UBL ?

Best regards,
Stefano Babic

-- 
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [U-Boot] davinci: lowlevel_init for davinci boards
  2010-07-08  9:54   ` Stefano Babic
@ 2010-07-08 17:34     ` Paulraj, Sandeep
  0 siblings, 0 replies; 4+ messages in thread
From: Paulraj, Sandeep @ 2010-07-08 17:34 UTC (permalink / raw)
  To: u-boot



> I am quite unsure about the role of the RBL, too. I have assumed that
> the setup to access the AEMIF interface is provided only by setting the
> AECFG pins and the role of RBL is to copy the UBL into IRAM and start it.
> 
> However, the RBL could initialize the processor in some way I do not
> know before loading the UBL and then I could get further problems due to
> a missing or wrong initialization that I have not seen in UBL. Do you
> know if the RBL is responsible to some further initialization before
> loading the UBL ?

The RBL does some PINMUX init that is required for AEMIF


Regards,
Sandeep

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-07-08 17:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-07 16:00 [U-Boot] davinci: lowlevel_init for davinci boards Stefano Babic
2010-07-07 16:47 ` Paulraj, Sandeep
2010-07-08  9:54   ` Stefano Babic
2010-07-08 17:34     ` Paulraj, Sandeep

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.