]> git.baikalelectronics.ru Git - kernel.git/commitdiff
selftests: net: tsn_lib: run phc2sys in automatic mode
authorVladimir Oltean <vladimir.oltean@nxp.com>
Fri, 23 Sep 2022 21:00:15 +0000 (00:00 +0300)
committerJakub Kicinski <kuba@kernel.org>
Mon, 26 Sep 2022 20:22:01 +0000 (13:22 -0700)
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: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Kurt Kanzenbach <kurt@linutronix.de>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/drivers/net/ocelot/psfp.sh
tools/testing/selftests/net/forwarding/tsn_lib.sh

index 5a5cee92c665a935755eff3803cedbac3fdd1f96..bed748dde4b066daeb60eaba7d13907a1b682f1f 100755 (executable)
@@ -181,7 +181,7 @@ setup_prepare()
 
        # Set up swp1 as a master PHC for h1, synchronized to the local
        # 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
        # synchronizing h1 to swp1 via PTP, h2 is also implicitly synchronized
index 20c2b411ba36b9185da1839f147d05c882f20eeb..b91bcd8008a9930529e6235c3a5d45e04740cf6b 100644 (file)
@@ -22,8 +22,7 @@ fi
 
 phc2sys_start()
 {
-       local if_name=$1
-       local uds_address=$2
+       local uds_address=$1
        local extra_args=""
 
        if ! [ -z "${uds_address}" ]; then
@@ -33,9 +32,7 @@ phc2sys_start()
        phc2sys_log="$(mktemp)"
 
        chrt -f 10 phc2sys -m \
-               -c ${if_name} \
-               -s CLOCK_REALTIME \
-               -O ${UTC_TAI_OFFSET} \
+               -a -rr \
                --step_threshold 0.00002 \
                --first_step_threshold 0.00002 \
                ${extra_args} \