u-boot-at91 icon indicating copy to clipboard operation
u-boot-at91 copied to clipboard

SAM9X60 D5M SIP - Stuck at "DRAM: 64 Mib"

Open qbonenfant opened this issue 1 year ago • 0 comments

Hi, I am currently trying to test a custom board based on Microchip SAM9X60D5M SIP. The board design is very close to the (now discontinued) SAM9X60 Evaluation Kit, but with twice the RAM and a 4Gb NAND flash.

The board manufacturer provided a pre-compiled AT91 bootloader, which seems to work fine. As a side note, I did not manage to successfully recompile a functionnal AT91 bootloader myself (always had some issues with the NAND flash and PMECC).

Sadly, I can not reuse the EK demo files, since they use different CPU / RAM...

Following the recommandation from linux4sam website, I tried to recompile u-boot from this repo using the sam9x60ek_nandflash config and sam9x60ek device tree as a base. I just need one of the integrated ethernet port to work for this first test, so I didn't try to modify the device tree (yet). I tried to poke around, and alter the config a bit, but in the end I always get the same result:

u-boot_stuck

Seeing I will not go anywhere using default configs, I got into understanding u-boot configuration, tried and learn a few things from previous commits and the overall structure of this (quite impressive to be honest) tool.

So far I learned:

  • The sam9x60 D5M SIP "should" be supported, or is at least referenced in the arch/arm/mach-at91/arm926ejs/Sam9x60_device.c in function get_cpu_name(). I am not sure what kind of impact this has since it only seems to set ATMEL_CPU_NAME, which is only used to display info about the cpu (print_cpuinfo() in file arch/arm/mach-at91/arm926ejs/cpu.c)
  • Despite trying my best to enable the debug_uart flag (following the procedure described in include/debug_uart.h), I can not manage to get it to work, and am not sure what I am doing wrong.
  • I really need to learn more about device trees for this project.

I do not know where to go from here, and would appreciate some help

Additionnal information:

  • I use a USB cable connected to the USB debug (DTXD / DRXD pins) for serial communication using default parameters (115200 bauds, slow but works fine)
  • I use SAM-BA 3.5 to flash my bootloaders to the NAND (using a qml script derived from Microchip demo)
  • I use the same offsets as the demos, which seems to match the ones described in the device tree "partition" i use.
  • Onboard LED turns RED.

qbonenfant avatar Jan 03 '24 09:01 qbonenfant