[U-Boot] da850evm: u-boot does not start without UBL since commit f1d2b313c9eb6808d30c16a9eb5251240452a56c

Ben Gardiner bengardiner at nanometrics.ca
Wed Jun 1 23:01:11 CEST 2011


Hi Christian,

On Wed, Jun 1, 2011 at 4:26 PM, Christian Riesch
<christian.riesch at omicron.at> wrote:
> On Wednesday, June 1, 2011, Ben Gardiner <bengardiner at nanometrics.ca>
>> [...]
>> Last I heard about this [1] the AIS signer was unable to handle the
>> dynamic elf format resulting from the introduction of arm relocation.
>
> I am not completely sure about this, but I had a look at some memory
> dumps today with u-boot's md command: I got the impression that these
> tools (aisgen as well as hexais) just copy the content of u-boot.bin
> into the image that is programmed to flash. Eventually they add some
> additional information but the u-boot.bin seems to be unmodified.
> Anyway, hexais did not complain about the u-boot format.

Good. Glad to be wrong about that.

>> If that particular problem is no more, then I  imagine that UBL would
>> have been doing pinmux for serial port among other things.
>
> Indeed UBL does a lot of pinmuxing, but the board init routines of
> u-boot seem to do the same. I tried to add pinmux settings to the AIS
> for the serial port (UART2), but it did not change things.
>
> Anyway, with older u-boot version everything worked fine, even access
> to SPI memory and Ethernet from u-boot, no additional pinmuxing in the
> AIS was required.

Ok. I started browsing the UBL source -- wow it does alot of things.
Perhaps we should start at the top: One of the first things it does is
disable the DSP. Which for the L138 seems to be:

        /* assert DSP local reset */
    PSC0->MDCTL[15] &= ~0x100;

    /* Turn off DSP */
    DEVICE_LPSCTransition(0, 15, 1, PSC_SWRSTDISABLE);

But I guess you don't need to worry about that since you're using the AM1808...

The next thing it does is unlock the KICK registers:
  // Unlock kick registers
  SYSTEM->KICKR[0] = 0x83e70b13;  /* Kick0 register + data (unlock) */
  SYSTEM->KICKR[1] = 0x95a4f1e0;  /* Kick1 register + data (unlock) */

Hawkboard's nand_spl does this too, see
board/davinci/da8xxevm/hawkboard_nand_spl.c.

Please keep me posted.

Best Regards,
Ben Gardiner

---
Nanometrics Inc.
http://www.nanometrics.ca


More information about the U-Boot mailing list