STM32F769 Ethernet driver reported 60 bytes received by the frame is really 54 bytes
HAL_ETH_ReadData() reported bufflength 60 bytes (damrxdesc-> DESC0.FL shows 64 bytes. looking at the code, bufflength is derived from DESC0.FL - 4. ). However wireshark shows the incoming frame is TCP ACK with no data. So it should be 54 bytes, and I verified the incoming data and the first 54 bytes matches what shows in wireshark.
Same for ping message with small payload. Looks like the driver reports 60 bytes for incoming frames less than 60 bytes
Note the same driver reports correctly for frames with more than 60 bytes (not counting CRC).
Question: what causes the driver to mis-report the frame length? how to fix or work around the problem?
Hardware: STM32F769-DISCO eval board.
