I’ve also tried to flash the precompiled binaries provided on this site (linux-socfpga-nand-16.1-a10.tar.gz)
Every time u-boot fails early, before I even get the UART output.
Using the JTAG debugger on a custom-built u-boot I found that an ECC error happens while loading the periph.rbf file from NAND:
U-boot then bails out from the FPGA configuration with the following error:
NAND read from offset 774000 failed -5
FPGA: Failed to read data from NAND -5.
Note that the RBF starts at offset 0x720000 so this is not the first page in the file. In particular u-boot manages to parse the mkimage header just fine.
I’ve reflashed and reverified the rbf on the NAND multiple times (using both quartus_hps and flash_programmer.py) without success. I’ve also tried moving the rbf at an other position on NAND with the same result (at the same offset of 0x54000 from the beginning of the file, interestingly).
Finally I’ve attempted to modify the code of u-boot to ignore the ECC error and when I do this the u-boot sequence seems to continue correctly:
U-Boot 2014.10 (Feb 07 2017 - 15:17:18)
CPU : Altera SOCFPGA Arria 10 Platform
BOARD : Altera SOCFPGA Arria 10 Dev Kit
DRAM: WARNING: Caches not enabled
128 MiB
FPGA: Early Release Succeeded.
DDRCAL: Success
INFO : Skip relocation as SDRAM is non secure memory
Reserving 2048 Bytes for IRQ stack at: ffe306e8
DRAM : 1 GiB
WARNING: Caches not enabled
NAND: 256 MiB
Using default environment
In: serial
Out: serial
Err: serial
Model: SOCFPGA Arria10 Dev Kit
Net: dwmac.ff800000
Error: dwmac.ff800000 address not set.
Hit any key to stop autoboot: 0
SOCFPGA_ARRIA10 #
I haven’t attempted to boot Linux yet but at least u-boot seems happy.
Any insight about what’s going on here would be greatly appreciated.