Hi,
I am using LS1021aiot reference board. During the SD card booting, I have seen that it is reading the RCW file. Can you please help me to find the answers of the following questions?
Here is the u-boot log
U-Boot 2015.01+ls1+g3281947 (Sep 14 2015 - 11:08:45)
CPU: Freescale LayerScape LS1021E, Version: 1.0, (0x87081110)
Clock Configuration:
CPU0(ARMV7):1000 MHz,
Bus:300 MHz, DDR:800 MHz (1600 MT/s data rate),
Reset Configuration Word (RCW):
00000000: 0608000a 00000000 00000000 00000000
00000010: 20000000 08407900 60025a00 21046000
00000020: 00000000 00000000 00000000 00038000
00000030: 20024800 881b1340 00000000 00000000
Board: LS1021AIOT
CPLD: V2.3
I2C: ready
DRAM: 1 GiB
Using SERDES1 Protocol: 32 (0x20)
MMC: FSL_SDHC: 0
EEPROM: NXID v1
PCIe1: Root Complex no link, regs @ 0x3400000
PCIe2: Root Complex no link, regs @ 0x3500000
In: serial
Out: serial
Err: serial
SEC0: RNG instantiated
SATA link 0 timeout.
AHCI 0001.0300 1 slots 1 ports ? Gbps 0x1 impl SATA mode
flags: 64bit ncq pm clo only pmp fbss pio slum part ccc
scanning bus for devices...
Found 0 device(s).
SCSI: Net: eTSEC1 is in sgmii mode.
eTSEC2 is in sgmii mode.
Phy 4 not found
PHY reset timed out
eTSEC1, eTSEC2 [PRIME], eTSEC3
Hit any key to stop autoboot: 0
1. From where the RCW file is getting read. Whether the u-boot binary is having an RCW file inside?
2. How can I change the rcw configuration?
3. All the pin-muxing is happening inside the rcw file? (or Do we need to care about the pinmuxing at the kernel side)?
Have a great day,
1) Various device functions are initialized by sampling certain signals during power on reset. The values of all these signals are sampled into registers when PORESET_B is deasserted. On the LS1021A-IOT these signals are either driven from the CPLD or hardwired on the board.
The cfg_rcw_src[0:8] (multiplexed on {IFC_AD[8:15], IFC_CLE}) are such signals which select the RCW source. It could be NAND/NOR/SPI flash memory or SD?MMC
QorIQ LS1021A-IOT Gateway Reference Design Board Reference Manual or QorIQ LS1021A-IOT Gateway Reference Design Getting Started Guide provide more details for the RCW sources LS1021A.
2) While the RCW is in rewritable memory you can rewrite memory content and change the RCW.
3) It is not clear what do you mean as to care about the pinmuxing at the kernel side. In any case the RCW sets pin muxing.
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi,
Thank you very much for the reply.
I assume that if the RCW source is selected as SD card then RCW configuration will get combined with the u-boot.bin.
Is there any other way to provide the RCW file separately (as separate RCW and u-boot)? Do we need to rebuild the u-boot every-time by changing this file(0001-Add-basic-ls1021aiot-support.patch) inside the uboot directory? Nothing get changed if we are modifying the ls102xa_rcw_sd.cfg(u-boot-ls1/2014.07-r0/git/board/freescale/ls1021aiot) and compiling with "bitbake -c compile -f u-boot".
How can we attach a custom rcw file to the u-boot for the SD card booting. Is this possible without re-compiling the u-boot?
Is there any way to boot from QSPI NOR flash in Rev1.0 silicon(I have seen somewhere in the community mentioning NOR flash booting is not possible in Rev1.0 silicon) ?