Hello,
I am porting barebox to the LS1021A on a ls1021A-iot. The boot loader boots from SPI and I am now trying to get the gianfar to work. I started port from LSDK-21.08 however the U-boot release on my eval board is U-Boot 2015.01+ls1+g3281947 (Aug 31 2015 - 15:06:00).
I am trying to find the source for -Boot 2015.01 commit 3281947 listed above. It is not found in git://source.codeaurora.org/external/qoriq/qoriq-components/u-boot
At present, the PHY links but nothing is transmitted.
I noticed that in the 2015 version the TX descriptor are read as little endian (#define SCFG_ETSECDMAMCR_LE_BD_FR 0xf8001a0f)
while it seems the 2021 version wants then as big Endian :
board/freescale/ls1021aiot/ls1021aiot.c: clrbits_be32(&scfg->etsecdmamcr, SCFG_ETSECDMAMCR_LE_BD_FR);
#define SCFG_ETSECDMAMCR_LE_BD_FR 0x00000c00
Once I set the bit to big endian then transmit starts to occur according to the driver.
TX status before status = 0x9c00
TX status after status = 0x1c00
Still I see nothing coming out the port. It does not receive either.
The ETSEC2 seems to be programmed correctly as well as the PHY. What else is in the path that could prevent transmission (SMMU, snoop bit). Could be the RCW below:
#disable IFC, enable QSPI and DSPI
0608000a 00000000 00000000 00000000
70000000 00007900 e0025a00 21046000
00000000 00000000 00000000 00038000
20024800 881b7340 00000000 00000000
In the