Hi,
I am working on TI 35xx ARM based board with Broadcom PHY 54210S. I am
trying to bring up two step mode working on this platform. After getting
timestamp information from the PHY registers, the Broadcom time stamping
driver passes timestamp info to error socket queue using kernel's
skb_tstamp_tx() for the PTP stack to read from. The kernel(skbuff.c) will
pass this information to the upper layers and calls __skb_complete_tx_timestamp
once it is done. As per my understanding, once a transmit packet with
timestamp is put into the socket error queue, it should be read by the
upper level layers and the socket should get freed. But this is not
happening in our case.
All the transmit packets are getting queued up in the error socket queue
and after some time (I found that for every 232 transmit packets(each
packet/frame is of size 86bytes)) the error socket queue is getting
exhausted and returning -ENOMEM(out of memory error)). The packets are not
getting read by the PTP stack because the follow-up packets doesn't have
the timestamp information in it. Moreover, I do not see DelayReq and Delay
Resp messages being sent or received(I am running a program like ptp4l on
the slave side).
And once error socket queue gets full, I do not see even sync and followup
packets and I only see signalling packets on wireshark. Could someone
please throw some ideas on this.
Thanks
kg
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Linuxptp-users mailing list
Linuxptp-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxptp-users