Has anybody seen and fixed the “DDRCAL: Retry” error during uboot?
I’ve had a working A10 SoC build, happily booting, running, etc and sometimes after adding logic or even one new signal in SignalTap I receive the “DDRCAL: Retry” error on boot. Since the DDR memory is not initialized the board will eventually reset when it fails to load other items into memory and then it repeats. The changes that I made between builds were not inside the HPS QSYS but I made sure to rebuild it and then regenerate the preloader/uboot each time. I have not been able to determine the exact cause or solution to the error. Taking the most recent changes back out can get me back to a booting image.
Digging around in the uboot code the error occurs when “socfpga_ecc_hmc_base->ddrcalstat” doesn’t return a 1 to indicate that the DDR calibration was successful. That function is called “is_sdram_cal_success” and can be found around line 110 of the \uboot-socfpga\arch\arm\cpu\armv7\socfpga_arria10\sdram.c file.
Some more info:
Board: A10 SoC Eval
Quartus: 15.1
EDS: 15.1
Thank you!
-Steve