Allow the user to specify a physical interface through the $CANIF environment variable. Add a $BITRATE environment variable set with a default value of 500000.
If $CANIF is omitted or if it starts with vcan (e.g. vcan1), the test will use the virtual can interface type. Otherwise, it will assume that the provided interface is a physical can interface. For example: CANIF=can1 BITRATE=1000000 ./test_raw_filter.sh will run set the can1 interface with a bitrate of one million and run the tests on it. Signed-off-by: Vincent Mailhol <[email protected]> --- This depends on "selftests: can: Import tst-filter from can-tests" from Felix. Link: https://lore.kernel.org/linux-can/87d289f333cba7bbcc9d69173ea1c320e4b5c3b8.1747833283.git.fmau...@redhat.com/ --- tools/testing/selftests/net/can/test_raw_filter.sh | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/net/can/test_raw_filter.sh b/tools/testing/selftests/net/can/test_raw_filter.sh index 2216134b431b..276d6c06ac95 100755 --- a/tools/testing/selftests/net/can/test_raw_filter.sh +++ b/tools/testing/selftests/net/can/test_raw_filter.sh @@ -9,17 +9,25 @@ net_dir=$(dirname $0)/.. source $net_dir/lib.sh export CANIF=${CANIF:-"vcan0"} +BITRATE=${BITRATE:-500000} setup() { - ip link add name $CANIF type vcan || exit $ksft_skip + if [[ $CANIF == vcan* ]]; then + ip link add name $CANIF type vcan || exit $ksft_skip + else + ip link set dev $CANIF type can bitrate $BITRATE || exit $ksft_skip + fi ip link set dev $CANIF up pwd } cleanup() { - ip link delete $CANIF + ip link set dev $CANIF down + if [[ $CANIF == vcan* ]]; then + ip link delete $CANIF + fi } test_raw_filter() -- 2.49.0
