AnsweredAssumed Answered

MPC5748G ENET RX interrupt has big delay

Question asked by ning li on Jul 10, 2018
Latest reply on Jul 15, 2018 by ning li

      Hi, I'm using MPC5748G running with FreeRTOS and FreeRTOS-TCP, using ENET0 driver in the SDK EAR0.8.1. When testing ping function from PC to our board, every thing is OK, and ping response within 1ms. But after a long time, about a few hours, ping response time become very long(view in windows cmd), usually several handreds ms and even can't get the response. In wireshark, I can see a miss match seqence number in ICMP reply(the board) to request(the PC), thus cause a big delay. At first, I doubt  it's the problem of TCP/IP stack, but after I make some logs in the ENET0 RX interrupt ISR, find that it did take a long time between the ICMP request is sent, and the borad received this frame. It is this long time, cause the miss match of ICMP reply to request. And sometimes, it seems the  ENET FIFO still stored some frames, will not cause the RX interrupt untill next frame comes, these frames can't be read in time, which will cause the seqence number miss match in ICMP and TCP.

     In this case, resetting the ENET0 driver can fix this problem. What will causing this problem?

     Thanks very much!

Outcomes