We are working on NXP confidential Soc similar to imX7: Dual-Cortex A7/Cortex-M4. Our board has only 128 MiB of DDR.
We are using the FEC (Ethernet BroadR-Reach) on Cortex-A7 under Linux.
We are using linux4.9.y from mainstream with support for this chip.
Your current version is linux 4.9.165.
The FEC driver (drivers/net/ethernet/freescale/fec_main.c,fec.h,fec_ptp.c) is taken from this version mainstream with only very simple modifications in dtb tables to support our chip (+3 lines).
“.driver_data = FEC_QUIRK_ENET_MAC | FEC_QUIRK_HAS_BUFDESC_EX | FEC_QUIRK_HAS_GBIT,”
We encounter memory issue with this driver. It uses 2 MiB at startup (acceptable) but the consuming of DDR (MemAvailable in /proc/meminfo) increases continusly only when ethernet interface is loaded (RTP audio streaming ...) . It depends on the use case selected but we can reach out of memory on DDR, so reset.
What are the consumers of RAM in this driver ?
How to monitore the RAM consumers (IP stack ..) of FEC driver ?
Is it possible to reduce or limit memory usage ?
Thank you in advance for advices