Actually the RBL can load more than 30K, the limitation is from where
to load it... when the EVM starts only the ARM TCM (Tight Couple
Memory, which TI calls IRAM) is enabled, and provides 30k of RAM.
Since u-boot is bigger than that, you need a intermediate loader (UBL)
that does initializes the PLL2 and program the DDR settings to the
specific DDR memory attached to the DM355 and then proceed to load u-
boot to RAM.
Regards,
Diego Dompe
RidgeRun Engineering
On Oct 14, 2008, at 7:49 AM, Gorwood, Steve wrote:
I'm a bit less sure why the RBL can't load u-boot directly.. I think
I worked it out at some point, it's because the RBL can only load
something
that fits into one block, or something like that. The TI UBL is
just a little
bit of glue between RBL and u-boot, as I understand it.
The UBL has a hard limit of 30K for the size of the program that it
loads because
it loads it to the internal RAM. I think that u-boot is a lot
larger then that.
Regards,
Steven Gorwood
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
] On Behalf Of Jon Povey
Sent: Tuesday, October 14, 2008 8:15 AM
To: [EMAIL PROTECTED]; [email protected]
Subject: RE: DM355 bootloader
Phil wrote:
AFAIK 'UBL' is the U-Boot Loader - that is a very small program that
copies the U-Boot image from NAND into RAM and runs it. This may well
be an assembly language program (I have never had any reason to study
it) so good luck if you want to change it.
The UBL is a TI app, I think it stands for "User Boot Loader" (At
least on DM355).
I have seen source for it, somewhere..
UBL is needed because u-boot can't load itself from NAND flash, and
you can't do XIP.
Confusing side-note:
I'm a bit less sure why the RBL can't load u-boot directly.. I think
I worked it out at some point, it's because the RBL can only load
something that fits into one block, or something like that. The TI
UBL is just a little bit of glue between RBL and u-boot, as I
understand it.
U-Boot is the boot loader. It allows rudimentary access to the FLASH
and RAM on the board and typically a way of loading an operating
system kernel. Integrating an app updater into this may be a
challenge
especially as it knows nothing about JFFS/YAFFS filesystems. You may
be able to FLASH the entire filesystem but that gets interesting if
the filesystem image won't fit in RAM and you have to know about any
bad blocks in the NAND as well.
I am looking into how to do all this stuff on DM355 at the moment.
My current plan is to have two copies of the kernel, two entirely
separate filesystem partitions, and update one while the other is
running, then switch (probably by changing u-boot environment
variables).
--
Jon Povey, Design Engineer
[EMAIL PROTECTED] | +44(0)1280 825983
Racelogic is a limited company registered in England. Registered
number 2743719 .
Registered Office Unit 10, Swan Business Centre, Osier Way,
Buckingham, Bucks, MK18 1TB .
The information contained in this electronic mail transmission is
intended by Racelogic Ltd for the use of the named individual or
entity to which it is directed and may contain information that is
confidential or privileged. If you have received this electronic
mail transmission in error, please delete it from your system
without copying or forwarding it, and notify the sender of the error
by reply email so that the sender's address records can be
corrected. The views expressed by the sender of this communication
do not necessarily represent those of Racelogic Ltd. Please note
that Racelogic reserves the right to monitor e-mail communications
passing through its network
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source