Disable the can module unload/load test
[src/qa-testdefinitions.git] / common / scripts / test_can_modules.sh
1 #!/bin/sh
2
3 RCAR_CAN=0
4 CAN_BCM=0
5
6 if [ ! -e /sys/class/net/can1 ];then
7         lava-test-case show_can_modules --result skip
8         lava-test-case unload_can_raw_module --result skip
9         lava-test-case unload_can_module --result skip
10         lava-test-case unload_c_can_platform_module --result skip
11         lava-test-case unload_c_can_module --result skipp
12         lava-test-case unload_can_dev_module --result skip
13         lava-test-case canconfig_can0 --result skip
14         lava-test-case load_can_module --result skip
15         lava-test-case load_can_raw_module --result skip
16         lava-test-case load_c_can_module --result skip
17         lava-test-case load_can_dev_module --result skip
18         lava-test-case canconfig_can0 --result skip
19         exit 0
20 fi
21
22 # remove module "$1"
23 remove_module() {
24         lsmod | grep -q "^$1[[:space:]]"
25         if [ $? -ne 0 ];then
26                 lava-test-case unload_$1_module --result skip
27                 return 0
28         fi
29         rmmod $1
30         if [ $? -eq 0 ];then
31                 lava-test-case unload_$1_module --result pass
32         else
33                 lava-test-case unload_$1_module --result fail
34         fi
35 }
36
37 modprobe_module() {
38         modprobe $1
39         if [ $? -eq 0 ];then
40                 lava-test-case load_$1_module --result pass
41         else
42                 lava-test-case load_$1_module --result fail
43         fi
44 }
45
46 remove_module can_raw
47
48 # handle "rmmod: ERROR: Module can is in use by: can_bcm"
49 lsmod | grep -q can_bcm
50 if [ $? -eq 0 ];then
51         CAN_BCM=1
52         remove_module can_bcm
53 fi
54
55 remove_module can
56
57 remove_module c_can_platform
58
59 remove_module c_can
60
61 lsmod | grep -q rcar_can
62 if [ $? -eq 0 ];then
63         RCAR_CAN=1
64         remove_module rcar_can
65 fi
66
67 remove_module can_dev
68
69 ip -V 2>&1 | grep -q -i BusyBox
70 if [ $? -eq 0 ];then
71         lava-test-case canconfig_can0 --result skip
72 else
73         ip link set can0 type can bitrate 50000
74         if [ $? -eq 0 ];then
75                 lava-test-case canconfig_can0 --result fail
76         else
77                 lava-test-case canconfig_can0 --result pass
78         fi
79 fi
80
81 modprobe_module can
82
83 modprobe_module can_raw
84
85 modprobe_module c_can
86
87 modprobe_module c_can_platform
88
89 modprobe_module can_dev
90
91 if [ $RCAR_CAN -eq 1 ];then
92         modprobe_module rcar_can
93 fi
94
95 if [ $CAN_BCM -eq 1 ];then
96         modprobe_module can_bcm
97 fi
98
99 #Make sure always that the can interface is down before
100 #starting the config step.
101 ip link set can0 down
102
103 ip -V 2>&1 | grep -q -i BusyBox
104 if [ $? -eq 0 ];then
105         lava-test-case canconfig_can0 --result skip
106 else
107         ip link set can0 type can bitrate 50000
108         if [ $? -eq 0 ];then
109                 lava-test-case canconfig_can0 --result pass
110         else
111                 lava-test-case canconfig_can0 --result fail
112         fi
113 fi
114
115 sleep 3