Other Parts Discussed in Thread: DP83640
Tool/software:
HI,
Sometime ago I was trying to use 1STEP PTP mode with DP83630 and SAMA5D35 MPU and I have noticed that some packets are transmitted with UDP checksum wrong. After a long discussion in this forum, Evan suggested that the issue can be in IPG. Now we have updated hardware with DP83630 and SAMA5D27 which has different MAC than SAMA5D35 and we still have the same issues.
In order to save time in debugging, we have decided to disable UDP checksum (we have also noticed that there are some off-the-shelf PTP solutions, that does not allow two additional bytes in the end of SYNC packet and just discard it). After disabling the UDP checksum in PTP socket (inside PTP4L) and clearing bit 9 in PTP_TXCFG0 register in DP83630 I could get the desired result only if I disable checksum hardware offloading in Linux (in case and offloading is on, the checksum of SYNC packets is still there, while the checksum of other PTP packet is set to zero as expected). My question is, is it possible that DP83630, for some reason, modifies the original checksum of SYNC packet? The explanation for bit 15 of PTP_TXCFG0 register states that "UPD checksum and CRC fields will be regenerated".
Thanks!
Alexey.