| #!/usr/bin/env bash |
| |
| . ./test.common |
| |
| [ "$(uname -s)" = "Linux" ] || test_skip "non-Linux system" |
| |
| hwts_iface="" |
| for iface_path in /sys/class/net/*; do |
| iface=$(basename "$iface_path") |
| if ethtool -T "$iface" 2> /dev/null | grep -q ' all\($\| \)'; then |
| hwts_iface="$iface" |
| break |
| fi |
| done |
| |
| [ -n "$hwts_iface" ] || test_skip "no HW timestamping interface found" |
| |
| test_start "hardware timestamping" |
| |
| minimal_config=1 |
| extra_chronyd_directives="hwtimestamp $hwts_iface" |
| |
| start_chronyd || test_fail |
| stop_chronyd || test_fail |
| check_chronyd_messages || test_fail |
| check_chronyd_message_count "Enabled HW timestamping on $hwts_iface" 1 1 || test_fail |
| |
| test_pass |