I fased with trouble when copy file to imx6 device by scp in gigabit network. It continously prints in terminal "fec 2188000.ethernet eth0: rcv is not +last" and disappear from network. And it may hapene after some time suddenly.
Transmitting files from imx6 at 1Gbit works fine. In 100Mbit receive and transmit works stable.
imx6d, pop package, phy AR8035, kernel fsl 4.9.88
Solved! Go to Solution.
We are seeing a similar issue. Limited bandwidth at 1 Gbe and what looks like network data errors.
Where can the datasheet and programmers reference manual be found for the IMX6 device?
After we changed the buffer defines in the fec driver it works for us.
+@@ -178,11 +178,12 @@ MODULE_PARM_DESC(macaddr, "FEC Ethernet
+ #define FEC_RX_DISABLED_IMASK (FEC_DEFAULT_IMASK & (~FEC_ENET_RXF))
+ /* The FEC stores dest/src/type, data, and checksum for receive packets.
|+ #define PKT_MINBUF_SIZE||64|
+ * The 5270/5271/5280/5282/532x RX control register also contains maximum frame
+ * size bits.
This changes are included in 4.14.98.
Thank you for answer!
In fec_main.c I have this:
/* The FEC stores dest/src/type/vlan, data, and checksum for receive packets.
* 2048 byte skbufs are allocated. However, alignment requirements
* varies between FEC variants. Worst case is 64, so round down by 64.
#define PKT_MAXBUF_SIZE (round_down(2048 - 64, 64))
#define PKT_MINBUF_SIZE 64
The same in fec_main.c in 4.14.98 from fec_main.c\freescale\ethernet\net\drivers - linux-imx - i.MX Linux kernel
I tried to decrease MTU and limit bandwidth with -l option of scp but no luck.
BTW, on sabresd board the same kernel works fine. Are there any hw requirements to receive gigabit properly?
Our device supports PoE. Can it be problem?