Hi,

I have a setup with TI processor using the cpsw driver from Linux mainline, kernel version 5.4. I'm using IEEE 802.3 network transport and sending PTP frames on Ethernet. When sending SYNC, FOLLOW_UP and DELAY_REQ that has a length of 58 bytes they get padded up to 64 bytes. When receiving FOLLOW_UP and DELAY_REQ in linuxptp they are dropped with message "bad message" because the stack treats the padding as a TLV entry (suffix_post_recv in msg.c returns 4) and the pdulen and messageLength mismatch.

IEEE 802.3 minimum PDU size is 64 bytes. PTP messages SYNC, FOLLOW_UP and DELAY_REQ is smaller than that, 58 bytes. Are there any spec telling how to send PTP messages smaller than 64 bytes on Ethernet?

On the other side in my setup I have a PC with e1000e driver. On that side when sending SYNC, FOLLOW_UP and DELAY_REQ over Ethernet the PDUs are padded to 60 bytes. Also tested a NXP processor (i.Mx8mp) and that one also padded to 60 bytes. A slightly different approach that is working with linuxptp. Is my issue with the TI processor a driver issue with the cpsw driver in Linux?

Thanks,
/Peter



_______________________________________________
Linuxptp-users mailing list
Linuxptp-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-users

Reply via email to