I have a custom board design based on the AM3359 that I'm having difficulty bringing up. To simplify bringing up uboot & the kernel, much of the design is based on the Beaglebone Black schematic (same connections to SD card, same DDR3 memory part number connected in same manner). I'm using CCS 9.1 and a Spectrum Digital XDS200 for troubleshooting.
I've been following the advice from http://processors.wiki.ti.com/index.php/AM335x_board_bringup_tips#DDR_configuration and could use some help on what to try next.
From CCS, if I open a memory browser window and try to access the memory at 0x0800 0000, I don't get anything. The MMU is off.
I've run the am335x-boot.dss boot analysis script and verified that the boot order is MMC1->MMC0->UART0->USB0. I've brought the clock out (sysboot[5] = 1) and verified that it's 24MHz as expected.
I have an SD card that successfully boots the Beaglebone Black that I'm trying to use on the custom board. If I power the board without the SD card, I get the stream of Cs on UART0 that are expected.
If I try to power the board with the SD card in the SD card slot (attached to MMC0), I don't get any console output on UART0 – was hoping to make it at least to uboot. The program counter is in the dead loop at 0x0002 0088 corresponding to a pre-fetch abort exception.
If I were having an issue with power sequencing, I don’t believe I would have made it as far as executing ROM code – is this correct? Should I be able to read/write from the DDR3 from the memory browser prior to coding any board-specific DDR3 timing? Could I please get some help as to what to try next?
Thanks!