i.MX95 19x19 EVK — ptp4l 802.1AS/gPTP Both Boards Becoming Grandmaster in Point-to-Point Setup

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX95 19x19 EVK — ptp4l 802.1AS/gPTP Both Boards Becoming Grandmaster in Point-to-Point Setup

235 Views
kosisochukwu
Contributor I

Hello NXP Community,

I am working on a point-to-point PTP synchronization setup between two NXP i.MX95 19x19 Verdin EVK boards running a PREEMPT_RT kernel (6.12.34-rt11) built from the NXP Yocto walnascar BSP. IEEE 1588 synchronization using default.cfg works correctly between the two boards. However when I attempt to use 802.1AS (gPTP) both boards become grandmaster and synchronization fails.

Master Config

root@imx95-19x19-verdin:~# cat /etc/linuxptp/gPTP.cfg
#
# 802.1AS example configuration containing those attributes which
# differ from the defaults. See the file, default.cfg, for the
# complete list of available options.
#
[global]
gmCapable 1
priority1 124
priority2 124
logAnnounceInterval 0
logSyncInterval -3
syncReceiptTimeout 3
neighborPropDelayThresh 800
min_neighbor_prop_delay -20000000
assume_two_step 1
path_trace_enabled 1
follow_up_info 1
transportSpecific 0x1
ptp_dst_mac 01:80:C2:00:00:0E
network_transport L2
delay_mechanism P2P
tx_timestamp_timeout 100
root@imx95-19x19-verdin:~# phc2sys -s CLOCK_REALTIME -c /dev/ptp0 -O 37 -m > /var/log/phc2sys.log 2>&1 & ptp4l -i eth0 -p /dev/ptp0 -f /etc/linuxptp/gPTP.cfg -m > /var/log/ptp4l.log 2>&1 &
[1] 5851
[2] 5852
root@imx95-19x19-verdin:~# ptp4l -i eth0 -p /dev/ptp0 -f /etc/linuxptp/gPTP.cfg -m > /var/log/ptp4l.log 2>&1 & phc2sys -s /dev/ptp0 -c CLOCK_REALTIME -O 37 -m > /var/log/phc2sys.log 2>&1 &^C
root@imx95-19x19-verdin:~# tail /var/log/ptp4l.log
ptp4l[422808.421]: selected /dev/ptp0 as PTP clock
ptp4l[422808.464]: port 1 (eth0): INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[422808.465]: port 0 (/var/run/ptp4l): INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[422808.465]: port 0 (/var/run/ptp4lro): INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[422811.772]: port 1 (eth0): LISTENING to MASTER on ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES
ptp4l[422811.773]: selected local clock 160716.fffe.bf1d7a as best master
ptp4l[422811.773]: port 1 (eth0): assuming the grand master role

 

Slave Config

root@imx95-19x19-verdin:~# cat /etc/linuxptp/gPTP.cfg
#
# 802.1AS example configuration containing those attributes which
# differ from the defaults. See the file, default.cfg, for the
# complete list of available options.
#
[global]
gmCapable 0
priority1 248
priority2 248
logAnnounceInterval 0
logSyncInterval -3
syncReceiptTimeout 3
neighborPropDelayThresh 800
min_neighbor_prop_delay -20000000
assume_two_step 1
path_trace_enabled 1
follow_up_info 1
transportSpecific 0x1
ptp_dst_mac 01:80:C2:00:00:0E
network_transport L2
delay_mechanism P2P
tx_timestamp_timeout 100
root@imx95-19x19-verdin:~# ptp4l -i eth0 -p /dev/ptp0 -f /etc/linuxptp/gPTP.cfg -m > /var/log/ptp4l.log 2>&1 & phc2sys -s /dev/ptp0 -c CLOCK_REALTIME -O 37 -m > /var/log/phc2sys.log 2>&1 &
[1] 5946
[2] 5947
root@imx95-19x19-verdin:~# tail /var/log/ptp4l.log
ptp4l[422842.496]: selected /dev/ptp0 as PTP clock
ptp4l[422842.548]: port 1 (eth0): INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[422842.549]: port 0 (/var/run/ptp4l): INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[422842.549]: port 0 (/var/run/ptp4lro): INITIALIZING to LISTENING on INIT_COMPLETE
ptp4l[422846.297]: port 1 (eth0): LISTENING to MASTER on ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES
ptp4l[422846.297]: selected local clock da2eeb.fffe.1a6499 as best master
ptp4l[422846.297]: port 1 (eth0): assuming the grand master role

0 Kudos
Reply
0 Replies
%3CLINGO-SUB%20id%3D%22lingo-sub-2346099%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3Ei.MX95%2019x19%20EVK%20%E2%80%94%20ptp4l%20802.1AS%2FgPTP%20Both%20Boards%20Becoming%20Grandmaster%20in%20Point-to-Point%20Setup%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2346099%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%3CSTRONG%3EHello%20NXP%20Community%2C%3C%2FSTRONG%3E%3C%2FP%3E%3CP%3EI%20am%20working%20on%20a%20point-to-point%20PTP%20synchronization%20setup%20between%20two%20NXP%20i.MX95%2019x19%20Verdin%20EVK%20boards%20running%20a%20PREEMPT_RT%20kernel%20(6.12.34-rt11)%20built%20from%20the%20NXP%20Yocto%20walnascar%20BSP.%20IEEE%201588%20synchronization%20using%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3Edefault.cfg%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3Eworks%20correctly%20between%20the%20two%20boards.%20However%20when%20I%20attempt%20to%20use%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3E%3CSTRONG%3E802.1AS%20(gPTP)%3C%2FSTRONG%3E%3CSPAN%3E%26nbsp%3B%3C%2FSPAN%3Eboth%20boards%20become%20grandmaster%20and%20synchronization%20fails.%3C%2FP%3E%3CP%3EMaster%20Config%3C%2FP%3E%3CP%3Eroot%40imx95-19x19-verdin%3A~%23%20cat%20%2Fetc%2Flinuxptp%2FgPTP.cfg%3CBR%20%2F%3E%23%3CBR%20%2F%3E%23%20802.1AS%20example%20configuration%20containing%20those%20attributes%20which%3CBR%20%2F%3E%23%20differ%20from%20the%20defaults.%20See%20the%20file%2C%20default.cfg%2C%20for%20the%3CBR%20%2F%3E%23%20complete%20list%20of%20available%20options.%3CBR%20%2F%3E%23%3CBR%20%2F%3E%5Bglobal%5D%3CBR%20%2F%3EgmCapable%201%3CBR%20%2F%3Epriority1%20124%3CBR%20%2F%3Epriority2%20124%3CBR%20%2F%3ElogAnnounceInterval%200%3CBR%20%2F%3ElogSyncInterval%20-3%3CBR%20%2F%3EsyncReceiptTimeout%203%3CBR%20%2F%3EneighborPropDelayThresh%20800%3CBR%20%2F%3Emin_neighbor_prop_delay%20-20000000%3CBR%20%2F%3Eassume_two_step%201%3CBR%20%2F%3Epath_trace_enabled%201%3CBR%20%2F%3Efollow_up_info%201%3CBR%20%2F%3EtransportSpecific%200x1%3CBR%20%2F%3Eptp_dst_mac%2001%3A80%3AC2%3A00%3A00%3A0E%3CBR%20%2F%3Enetwork_transport%20L2%3CBR%20%2F%3Edelay_mechanism%20P2P%3CBR%20%2F%3Etx_timestamp_timeout%20100%3CBR%20%2F%3Eroot%40imx95-19x19-verdin%3A~%23%20phc2sys%20-s%20CLOCK_REALTIME%20-c%20%2Fdev%2Fptp0%20-O%2037%20-m%20%26gt%3B%20%2Fvar%2Flog%2Fphc2sys.log%202%26gt%3B%26amp%3B1%20%26amp%3B%20ptp4l%20-i%20eth0%20-p%20%2Fdev%2Fptp0%20-f%20%2Fetc%2Flinuxptp%2FgPTP.cfg%20-m%20%26gt%3B%20%2Fvar%2Flog%2Fptp4l.log%202%26gt%3B%26amp%3B1%20%26amp%3B%3CBR%20%2F%3E%5B1%5D%205851%3CBR%20%2F%3E%5B2%5D%205852%3CBR%20%2F%3Eroot%40imx95-19x19-verdin%3A~%23%20ptp4l%20-i%20eth0%20-p%20%2Fdev%2Fptp0%20-f%20%2Fetc%2Flinuxptp%2FgPTP.cfg%20-m%20%26gt%3B%20%2Fvar%2Flog%2Fptp4l.log%202%26gt%3B%26amp%3B1%20%26amp%3B%20phc2sys%20-s%20%2Fdev%2Fptp0%20-c%20CLOCK_REALTIME%20-O%2037%20-m%20%26gt%3B%20%2Fvar%2Flog%2Fphc2sys.log%202%26gt%3B%26amp%3B1%20%26amp%3B%5EC%3CBR%20%2F%3Eroot%40imx95-19x19-verdin%3A~%23%20tail%20%2Fvar%2Flog%2Fptp4l.log%3CBR%20%2F%3Eptp4l%5B422808.421%5D%3A%20selected%20%2Fdev%2Fptp0%20as%20PTP%20clock%3CBR%20%2F%3Eptp4l%5B422808.464%5D%3A%20port%201%20(eth0)%3A%20INITIALIZING%20to%20LISTENING%20on%20INIT_COMPLETE%3CBR%20%2F%3Eptp4l%5B422808.465%5D%3A%20port%200%20(%2Fvar%2Frun%2Fptp4l)%3A%20INITIALIZING%20to%20LISTENING%20on%20INIT_COMPLETE%3CBR%20%2F%3Eptp4l%5B422808.465%5D%3A%20port%200%20(%2Fvar%2Frun%2Fptp4lro)%3A%20INITIALIZING%20to%20LISTENING%20on%20INIT_COMPLETE%3CBR%20%2F%3Eptp4l%5B422811.772%5D%3A%20port%201%20(eth0)%3A%20LISTENING%20to%20MASTER%20on%20ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES%3CBR%20%2F%3Eptp4l%5B422811.773%5D%3A%20selected%20local%20clock%20160716.fffe.bf1d7a%20as%20best%20master%3CBR%20%2F%3Eptp4l%5B422811.773%5D%3A%20port%201%20(eth0)%3A%20assuming%20the%20grand%20master%20role%3C%2FP%3E%3CBR%20%2F%3E%3CP%3ESlave%20Config%3C%2FP%3E%3CP%3Eroot%40imx95-19x19-verdin%3A~%23%20cat%20%2Fetc%2Flinuxptp%2FgPTP.cfg%3CBR%20%2F%3E%23%3CBR%20%2F%3E%23%20802.1AS%20example%20configuration%20containing%20those%20attributes%20which%3CBR%20%2F%3E%23%20differ%20from%20the%20defaults.%20See%20the%20file%2C%20default.cfg%2C%20for%20the%3CBR%20%2F%3E%23%20complete%20list%20of%20available%20options.%3CBR%20%2F%3E%23%3CBR%20%2F%3E%5Bglobal%5D%3CBR%20%2F%3EgmCapable%200%3CBR%20%2F%3Epriority1%20248%3CBR%20%2F%3Epriority2%20248%3CBR%20%2F%3ElogAnnounceInterval%200%3CBR%20%2F%3ElogSyncInterval%20-3%3CBR%20%2F%3EsyncReceiptTimeout%203%3CBR%20%2F%3EneighborPropDelayThresh%20800%3CBR%20%2F%3Emin_neighbor_prop_delay%20-20000000%3CBR%20%2F%3Eassume_two_step%201%3CBR%20%2F%3Epath_trace_enabled%201%3CBR%20%2F%3Efollow_up_info%201%3CBR%20%2F%3EtransportSpecific%200x1%3CBR%20%2F%3Eptp_dst_mac%2001%3A80%3AC2%3A00%3A00%3A0E%3CBR%20%2F%3Enetwork_transport%20L2%3CBR%20%2F%3Edelay_mechanism%20P2P%3CBR%20%2F%3Etx_timestamp_timeout%20100%3CBR%20%2F%3Eroot%40imx95-19x19-verdin%3A~%23%20ptp4l%20-i%20eth0%20-p%20%2Fdev%2Fptp0%20-f%20%2Fetc%2Flinuxptp%2FgPTP.cfg%20-m%20%26gt%3B%20%2Fvar%2Flog%2Fptp4l.log%202%26gt%3B%26amp%3B1%20%26amp%3B%20phc2sys%20-s%20%2Fdev%2Fptp0%20-c%20CLOCK_REALTIME%20-O%2037%20-m%20%26gt%3B%20%2Fvar%2Flog%2Fphc2sys.log%202%26gt%3B%26amp%3B1%20%26amp%3B%3CBR%20%2F%3E%5B1%5D%205946%3CBR%20%2F%3E%5B2%5D%205947%3CBR%20%2F%3Eroot%40imx95-19x19-verdin%3A~%23%20tail%20%2Fvar%2Flog%2Fptp4l.log%3CBR%20%2F%3Eptp4l%5B422842.496%5D%3A%20selected%20%2Fdev%2Fptp0%20as%20PTP%20clock%3CBR%20%2F%3Eptp4l%5B422842.548%5D%3A%20port%201%20(eth0)%3A%20INITIALIZING%20to%20LISTENING%20on%20INIT_COMPLETE%3CBR%20%2F%3Eptp4l%5B422842.549%5D%3A%20port%200%20(%2Fvar%2Frun%2Fptp4l)%3A%20INITIALIZING%20to%20LISTENING%20on%20INIT_COMPLETE%3CBR%20%2F%3Eptp4l%5B422842.549%5D%3A%20port%200%20(%2Fvar%2Frun%2Fptp4lro)%3A%20INITIALIZING%20to%20LISTENING%20on%20INIT_COMPLETE%3CBR%20%2F%3Eptp4l%5B422846.297%5D%3A%20port%201%20(eth0)%3A%20LISTENING%20to%20MASTER%20on%20ANNOUNCE_RECEIPT_TIMEOUT_EXPIRES%3CBR%20%2F%3Eptp4l%5B422846.297%5D%3A%20selected%20local%20clock%20da2eeb.fffe.1a6499%20as%20best%20master%3CBR%20%2F%3Eptp4l%5B422846.297%5D%3A%20port%201%20(eth0)%3A%20assuming%20the%20grand%20master%20role%3C%2FP%3E%3C%2FLINGO-BODY%3E