
Hello Christian,
On Wed, Jun 1, 2011 at 12:58 PM, Christian Riesch christian.riesch@omicron.at wrote:
I have tried to run recent versions of u-boot on the da850evm (AM1808 eXperimenter's Kit) board. Using Texas Instrument's User Boot Loader (UBL) to start u-boot (the default configuration for the EVM) everything works fine. However, if I try to get rid of this UBL (I don't need to voltage scaling features that it provides, so it's useless for me, just additional code that needs maintenance), I run into trouble.
Instead of using UBL, I use AIS [1] to configure PLLs and mDDR timings. My AIS script is generated by the HexAIS tool [2], the settings in the input file of HexAIS are
[General] busWidth=8 BootMode=SPIMASTER crcCheckType=NO_CRC [PLLANDCLOCKCONFIG] PLL0CFG0 = 0x00180001 PLL0CFG1 = 0x00000205 PERIPHCLKCFG = 0x0000000a [EMIF3DDR] PLL1CFG0 = 0x15010001 PLL1CFG1 = 0x00000002 DDRPHYC1R = 0x000000C4 SDCR = 0x0A034622 SDTIMR = 0x184929C8 SDTIMR2 = 0xB80FC700 SDRCR = 0x00000406 CLK2XSRC = 0x00000000 [INPUTFILE] FILENAME=u-boot.bin LOADADDRESS=0xC1080000 ENTRYPOINTADDRESS=0xC1080000
While this configuration works fine for older versions of u-boot (like v2009.11), it fails with recent u-boot versions (no sign of life on the serial port). I have bisected down to the commits from
commit f1d2b313c9eb6808d30c16a9eb5251240452a56c ARM: add relocation support
to
commit ab86f72c354f9b2572340f72b74ca0a258c451bd ARM: implement relocation for ARM926
Since these commits u-boot does not boot without the help of UBL. So I guess these commits require some additional initialization that is done by UBL, but not by my AIS.
I have tried to figure out what I am missing, but without success so far.
Any ideas what I could try to get it running?
Last I heard about this [1] the AIS signer was unable to handle the dynamic elf format resulting from the introduction of arm relocation.
If that particular problem is no more, then I imagine that UBL would have been doing pinmux for serial port among other things. If you are able to debug with JTAG then you might be able to inspect where the execution goes wrong; otherwise maybe removing as much peripheral access from u-boot as is possible and adding it back incrementally could reveal what UBL setup is missing.
Best Regards, Ben Gardiner
[1] http://article.gmane.org/gmane.comp.boot-loaders.u-boot/95097
--- Nanometrics Inc. http://www.nanometrics.ca