Using Kinetis SDKv2 on a K64 dev kit.
In function ethernetif_input, status is compared against kStatus_Success in the else case. The issue is that status can be kStatus_ENET_RxFrameEmpty, which is a valid case of data not ready, not an error. This was causing me occasional packet loss. Changing it to check against kStatus_ENET_RxFrameEmpty fixed it.
Also in ethernetif_input, the call to ENET_ReadFrame expects a contiguous buffer, which is not guaranteed. It also incorrectly modifies the length of the packetBuffer. Either ENET_ReadFrame needs to be aware of the pbuf structure or a temporary buffer needs to be created to fit the entire packet. Failure to do so causes unintended memory to be overwritten.
Solved! Go to Solution.
Hi :
We will release a new version for K64 in October, and this issue is fixed at this version.
Regards
Daniel
Hi :
We will release a new version for K64 in October, and this issue is fixed at this version.
Regards
Daniel
Hi,
Is the fixed release available?
Thx,
Larry
Hi Michael,
this issues are already discussed.
Please have a look at https://community.nxp.com/thread/395104.
Best regards
Manfred