summaryrefslogtreecommitdiffstats
path: root/common/scripts/test_can_send_receive.sh
diff options
context:
space:
mode:
Diffstat (limited to 'common/scripts/test_can_send_receive.sh')
-rwxr-xr-xcommon/scripts/test_can_send_receive.sh79
1 files changed, 79 insertions, 0 deletions
diff --git a/common/scripts/test_can_send_receive.sh b/common/scripts/test_can_send_receive.sh
new file mode 100755
index 0000000..d5d155c
--- /dev/null
+++ b/common/scripts/test_can_send_receive.sh
@@ -0,0 +1,79 @@
+#!/bin/sh
+
+
+if [ ! -e /sys/class/net/can1 ];then
+ lava-test-case canconfig_can0 --result skip
+ lava-test-case canconfig_can1 --result skip
+ lava-test-case start_can0 --result skip
+ lava-test-case start_can1 --result skip
+ lava-test-case send_frames_through_can0 --result skip
+ lava-test-case receive_frames_through_can1 --result skip
+ lava-test-case stop_can0 --result skip
+ lava-test-case stop_can1 --result skip
+ exit 0
+fi
+
+#config the can interfaces
+canconfig can0 bitrate 50000
+if [ $? -eq 0 ];then
+ lava-test-case canconfig_can0 --result pass
+else
+ lava-test-case canconfig_can0 --result fail
+fi
+sleep 3
+canconfig can1 bitrate 50000
+if [ $? -eq 0 ];then
+ lava-test-case canconfig_can1 --result pass
+else
+ lava-test-case canconfig_can1 --result fail
+fi
+sleep 3
+#bring up the devices
+canconfig can0 start
+if [ $? -eq 0 ];then
+ lava-test-case start_can0 --result pass
+else
+ lava-test-case start_can0 --result fail
+fi
+sleep 3
+canconfig can1 start
+if [ $? -eq 0 ];then
+ lava-test-case start_can1 --result pass
+else
+ lava-test-case start_can1 --result fail
+fi
+sleep 3
+#send frames
+cansequence -p can0 &
+if [ $? -eq 0 ];then
+ lava-test-case send_frames_through_can0 --result pass
+else
+ lava-test-case send_frames_through_can0 --result fail
+fi
+
+#receive frames
+file_can=$(mktemp)
+candump can1 > $file_can &
+sleep 3
+if [ -s $file_can ];then
+ lava-test-case receive_frames_through_can1 --result pass
+else
+ lava-test-case receive_frames_through_can1 --result fail
+fi
+rm $file_can
+
+sleep 10
+canconfig can0 stop
+if [ $? -eq 0 ];then
+ lava-test-case stop_can0 --result pass
+else
+ lava-test-case stop_can0 --result fail
+fi
+sleep 3
+canconfig can1 stop
+if [ $? -eq 0 ];then
+ lava-test-case stop_can1 --result pass
+else
+ lava-test-case stop_can1 --result fail
+fi
+sleep 5