Commit 340d35c0 authored by Joanne Hugé's avatar Joanne Hugé

Update PTP and run-client scripts

Fix run-client qdisc creation
Add profile option in synchronize-ptp
Add profile option in synchronize-ptp
parent 665e4d0e
......@@ -75,13 +75,15 @@ Minimum | Maximum | Average | Standard deviation | Lost packets
Two A20 boards are connected end to end with an ethernet cable to a shuttle. All devices are synchronized with PTP. The shuttle sends packets containing timestamps to the boards, and the boards emit a signal at the given timestamp. A logic analyzer measures the variation difference between the signals of the two boards.
**Common test metadata:** Device: A20, Linux kernel version: 5.6, Task priority: 98, Boot Parameters: isolcpus,rcu_nocbs,irqaffinity, ETF qdisc delta: None, Device and processor load: None, Speed (Mb/s): 1000, ETF offset: 500us, Packet route: E2E, qdisc: pfifo_fast, XDP: no
Metadata | Minimum | Maximum | Average | Standard deviation | Lost packets
---------------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------
**i, duration, delay** | **edge jitter - period jitter** | **edge jitter - period jitter** | **edge jitter - period jitter** | **edge jitter - period jitter** |
1000us, 9h59, 600us (35999280, 71998560) | 0.0000us - 958.0000us | 129.0000us - 1063.0000us | 7.5260us - 999.5439us | 9.5594us - 1.7508us | 0
500us, 13h59, 400us (100798095, 201596190) | 0.0000us - 360.0000us | 265.0000us - 582.0000us | 10.5889us - 499.5328us | 9.7824us - 1.3678us | 0
**Common test metadata:** Device: A20, Linux kernel version: 5.6, Task priority: 98, Boot Parameters: isolcpus,rcu_nocbs,irqaffinity, ETF qdisc delta: None, Device and processor load: None, Speed (Mb/s): 1000, ETF offset: 500us, Packet route: E2E, qdisc: pfifo_fast
Metadata | Minimum | Maximum | Average | Standard deviation | Lost packets
-------------------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------
**i, duration, delay, XDP** | **edge jitter - period jitter** | **edge jitter - period jitter** | **edge jitter - period jitter** | **edge jitter - period jitter** |
1000us, 9h59, 600us, no (35999280, 71998560) | 0.0000us - 958.0000us | 129.0000us - 1063.0000us | 7.5260us - 999.5439us | 9.5594us - 1.7508us | 0
500us, 13h59, 400us, no (100798095, 201596190) | 0.0000us - 360.0000us | 265.0000us - 582.0000us | 10.5889us - 499.5328us | 9.7824us - 1.3678us | 0
500us, 14h59, 350us, yes (107997764, 215995528) | 0.0000us - 443.0000us | 101.0000us - 558.0000us | 9.4011us - 499.5338us | 8.1783us - 1.0773us | 0
300us, 1h13, 250us, yes (14799547, 29599094) | 0.0000us - 251.0000us | 84.0000us - 352.0000us | 8.3746us - 299.5280us | 6.8528us - 2.0352us | 0
![alt text](measures/graphs/shuttle_a20_signal_jitteredge jitter.png "shuttle_a20_signal_jitter Graph")
......
{"cyclictest_wake-up_latency": {"ids": [3, 5], "next_id": 6}, "packet_jitter": {"ids": [0, 1, 2, 3, 4, 5, 6], "next_id": 7}, "ping_interval": {"ids": [0], "next_id": 1}, "shuttle_a20_signal_jitter": {"ids": [4, 7], "next_id": 8}}
\ No newline at end of file
{"cyclictest_wake-up_latency": {"ids": [3, 5], "next_id": 6}, "packet_jitter": {"ids": [0, 1, 2, 3, 4, 5, 6], "next_id": 7}, "ping_interval": {"ids": [0], "next_id": 1}, "shuttle_a20_signal_jitter": {"ids": [4, 7, 8, 9], "next_id": 10}}
\ No newline at end of file
......@@ -154,10 +154,10 @@ fi
if [ -n "${use_etf}" ]; then
client_options+=" -e $etf_offset -q 8"
qdisc_options+="-e $delta"
qdisc_options+=" -e $delta"
else
client_options+=" -q 1"
qdisc_options+="-p"
qdisc_options+=" -p"
fi
client_options+=" -i $interval"
......
#!/bin/bash
linuxptp_dir=/home/oli/linuxptp
linuxptp_dir=$HOME/linuxptp
telecom_profile="G.8265.1.cfg"
gPTP_profile="gPTP.cfg"
......@@ -64,9 +64,9 @@ if [ $profile_name == "none" ]; then
elif [ $profile_name == "telecom" ]; then
opts+=" -f $linuxptp_dir/configs/$telecom_profile "
elif [ $profile_name == "gPTP" ]; then
opts=" -f $linuxptp_dir/configs/$gPTP_profile "
opts+=" -f $linuxptp_dir/configs/$gPTP_profile "
else
opts=" -f $profile_name "
opts+=" -f $profile_name "
fi
log=ptp4l_${interface}_log
......
......@@ -7,6 +7,7 @@ usage() {
Usage: $0 [-h] [-s] BOARD1_HOSTNAME BOARD2_HOSTNAME
-h Show help
-s Use software timestampings
-p Use a linuxptp profile (see in linuxptp/configs)
BOARD_HOSTNAME Uses /etc/hosts to find the IP address associated to the hostname
ENDUSAGE
1>&2;
......@@ -14,7 +15,9 @@ ENDUSAGE
exit 1;
}
while getopts "hs" opt; do
ptp_opts=""
while getopts "hsp:" opt; do
case "${opt}" in
h )
usage
......@@ -22,6 +25,9 @@ while getopts "hs" opt; do
s )
software_ts=1
;;
p )
ptp_opts+=" -p ${OPTARG}"
;;
* )
usage
;;
......@@ -44,16 +50,16 @@ echo "Starting ptp4l on master";
killall ptp4l;
if [ -n "$software_ts" ]; then
$script_dir/run-ptp4l -i enp1s0;
$script_dir/run-ptp4l -i enp2s0;
$script_dir/run-ptp4l $ptp_opts -i enp1s0;
$script_dir/run-ptp4l $ptp_opts -i enp2s0;
else
$script_dir/run-ptp4l -i enp1s0 -H;
$script_dir/run-ptp4l -i enp2s0 -H;
$script_dir/run-ptp4l $ptp_opts -i enp1s0 -H;
$script_dir/run-ptp4l $ptp_opts -i enp2s0 -H;
fi
echo "Starting ptp4l on slaves";
$script_dir/sudossh $board1 "killall ptp4l";
$script_dir/sudossh $board2 "killall ptp4l";
$script_dir/sudossh $board1 "run-ptp4l -s";
$script_dir/sudossh $board2 "run-ptp4l -s";
$script_dir/sudossh $board1 "run-ptp4l $ptp_opts -s";
$script_dir/sudossh $board2 "run-ptp4l $ptp_opts -s";
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