Commit 162d52df authored by Vladimir Oltean's avatar Vladimir Oltean Committed by Jakub Kicinski

selftests: net: tsn_lib: run phc2sys in automatic mode

We can make the phc2sys helper not only synchronize a PHC to
CLOCK_REALTIME, which is what it currently does, but also CLOCK_REALTIME
to a PHC, which is going to be needed in distributed TSN tests.

Instead of making the complexity of the arguments passed to
phc2sys_start() explode, we can let it figure out the sync direction
automatically, based on ptp4l's port states.

Towards that goal, pass just the path to the desired ptp4l instance's
UNIX domain socket, and remove the $if_name argument (from which it
derives the PHC). Also adapt the one caller from the ocelot psfp.sh
test. In the case of psfp.sh, phc2sys_start is able to properly figure
out that CLOCK_REALTIME is the source clock and swp1's PHC is the
destination, because of the way in which ptp4l_start for the
UDS_ADDRESS_SWP1 was called: with slave_only=false, so it will always
win the BMCA and always become the sync master between itself and $h1.
Signed-off-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Kurt Kanzenbach's avatarKurt Kanzenbach <kurt@linutronix.de>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent a7ce95ac
...@@ -181,7 +181,7 @@ setup_prepare() ...@@ -181,7 +181,7 @@ setup_prepare()
# Set up swp1 as a master PHC for h1, synchronized to the local # Set up swp1 as a master PHC for h1, synchronized to the local
# CLOCK_REALTIME. # CLOCK_REALTIME.
phc2sys_start ${swp1} ${UDS_ADDRESS_SWP1} phc2sys_start ${UDS_ADDRESS_SWP1}
# Assumption true for LS1028A: h1 and h2 use the same PHC. So by # Assumption true for LS1028A: h1 and h2 use the same PHC. So by
# synchronizing h1 to swp1 via PTP, h2 is also implicitly synchronized # synchronizing h1 to swp1 via PTP, h2 is also implicitly synchronized
......
...@@ -22,8 +22,7 @@ fi ...@@ -22,8 +22,7 @@ fi
phc2sys_start() phc2sys_start()
{ {
local if_name=$1 local uds_address=$1
local uds_address=$2
local extra_args="" local extra_args=""
if ! [ -z "${uds_address}" ]; then if ! [ -z "${uds_address}" ]; then
...@@ -33,9 +32,7 @@ phc2sys_start() ...@@ -33,9 +32,7 @@ phc2sys_start()
phc2sys_log="$(mktemp)" phc2sys_log="$(mktemp)"
chrt -f 10 phc2sys -m \ chrt -f 10 phc2sys -m \
-c ${if_name} \ -a -rr \
-s CLOCK_REALTIME \
-O ${UTC_TAI_OFFSET} \
--step_threshold 0.00002 \ --step_threshold 0.00002 \
--first_step_threshold 0.00002 \ --first_step_threshold 0.00002 \
${extra_args} \ ${extra_args} \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment