Hi, I have been trying to run ptp4l in transparent clock(TC) mode with the setup as follows - I have connected 'eth1' of zcu102(let's call this board-1) to intel card PC and 'eth2' of it to 'eth1' of another zcu102(let's call it board-2). I have run ptp4l in TC mode on board-1 with the command "ptp4l -P -2 -H -i eth1 -i eth2 -p /dev/ptp0 -m -f /usr/sbin/ptp4l_slave.conf". /usr/sbin/ptp4l_slave.conf has the following configuration:
[global] transportSpecific 1 priority1 250 priority2 251 ptp_dst_mac 01:80:C2:00:00:0E p2p_dst_mac 01:80:C2:00:00:0E logAnnounceInterval 1 logSyncInterval -3 follow_up_info 1 announceReceiptTimeout 3 syncReceiptTimeout 3 neighborPropDelayThresh 800 min_neighbor_prop_delay -20000000 tc_spanning_tree 1 free_running 1 freq_est_interval 3 summary_interval 1 clock_type P2P_TC network_transport L2 delay_mechanism P2P I have also tried to give '-t' option but it says "ptp4l: invalid option -- 't'". ptp4l is run in ordinary clock(OC) mode on board-2 with the command - "ptp4l -P -2 -H -i eth1 -p /dev/ptp0 -m -f /usr/sbin/ptp4l_slave.conf". /usr/sbin/ptp4l_slave.conf has the following configuration: [global] transportSpecific 1 priority1 252 priority2 253 ptp_dst_mac 01:80:C2:00:00:0E p2p_dst_mac 01:80:C2:00:00:0E logAnnounceInterval 1 logSyncInterval -3 follow_up_info 1 announceReceiptTimeout 3 syncReceiptTimeout 3 neighborPropDelayThresh 800 min_neighbor_prop_delay -20000000 network_transport L2 delay_mechanism P2P ptp4l is run in ordinary clock(OC) mode on intel card PC with the command - "sudo ./ptp4l -P -2 -H -i eth1 -p /dev/ptp0 -m -f /tftpboot/ptp4l_master.conf". /tftpboot/ptp4l_master.conf has the following configuration: transportSpecific 1 priority1 248 priority2 249 ptp_dst_mac 01:80:C2:00:00:0E p2p_dst_mac 01:80:C2:00:00:0E logAnnounceInterval 1 logSyncInterval -3 follow_up_info 1 announceReceiptTimeout 3 syncReceiptTimeout 3 neighborPropDelayThresh 800 min_neighbor_prop_delay -20000000 network_transport L2 delay_mechanism P2P I have made the following observations: On board-2, ptp4l doesn't synchronize with PC. Nor it recognizes PC as grand master. It prints the following messages: ptp4l[1296.475]: selected /dev/ptp0 as PTP clock ptp4l[1296.504]: driver rejected most general HWTSTAMP filter ptp4l[1296.504]: port 1: INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[1296.504]: port 0: INITIALIZING to LISTENING on INIT_COMPLETE ptp4l[1303.331]: port 1: LISTENING to MASTER on ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES ptp4l[1303.332]: selected local clock 000a35.fffe.00012e as best master ptp4l[1303.332]: assuming the grand master role I have also observed that when 'free_running' field is removed from configuration of board-1 and let the synchronization with PC start on board-1, board-2 starts synchronizing with PC. Within 1-2 seconds, if free_running is added back to the configuration, board-1 stops synchronization, but board-2 keeps synchronizing. In either case, announce messages are being received on board-2 which have grandmasterClockIdentity as the MAC address of PC. I believe in the ideal case, board-2 should start synchronization and board-1 shouldn't even when free_running is present in configuration. Please let me know what is it that I'm doing wrong. Thanks, Ravali. This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.
_______________________________________________ Linuxptp-users mailing list Linuxptp-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxptp-users