I'm using an AM3517 Craneboard as a development platform for a future embedded design. I've successfully compiled X-loader and U-boot using the Craneboard git sources, which are based on TI PSP 03.00.01.06. From that compiled code, X-loader successfully runs U-boot, which in turn successfully boots a kernel.
I then decided to move up to the latest TI PSP (04.02.00.07) since it supports HW ECC of NAND, but it doesn't have support built in for the Craneboard so I added support back in. Changes for this were relatively minor; mainly done by cloning the AM3517EVM code and making small changes to account for differences between that board and the Craneboard - removing NOR support, adding the 3.3V Craneboard NAND chip ID to the NAND driver, etc. Seemed straightforward to do.
Well... "new" U-boot works fine, if I boot it from "old" X-loader. But "new" X-loader, for some reason, won't boot either "new" or "old" U-boot. X-loader reads U-boot into RAM, jumps to it... and the card immediately resets.
I've added memory test/checksum code to X-loader to try and figure out why, but can't find anything wrong. The modified X-loader is correctly setting up SDRAM, it's correctly reading U-boot from my SD card (right # of bytes, checksum out of SDRAM matches file checksum) and it's putting U-boot into the same memory location that "old" X-loader pokes it (0x80008000)... so I'm left scratching my head.
So I guess my questions are...
- Has anyone successfully run 04.02.00.07 on the AM3517EVM? (indicating that the problem I'm seeing is my fault)
- Has anyone ever encountered the "U-boot won't boot" situation that I have, and have any advice?
I can make a .diff of my X-loader changes available if anyone wants to have a look at it.
Thanks!
-GM