SPEC-3064: handle removal of can_bcm 07/23407/2 8.99.4 icefish/8.99.4 icefish_8.99.4
authorCorentin LABBE <clabbe@baylibre.com>
Tue, 17 Dec 2019 12:54:46 +0000 (13:54 +0100)
committerCorentin LABBE <clabbe@baylibre.com>
Fri, 20 Dec 2019 09:03:19 +0000 (10:03 +0100)
The test removing can module fail on DRA7 due to can_bcm using it.
This patchs handle this case.

Bug-AGL: SPEC-3064

Change-Id: I272e0ea62786fb43c4ea68601f2fb12864a279b6
Signed-off-by: Corentin LABBE <clabbe@baylibre.com>
common/scripts/test_can_modules.sh

index 1a46034..bf8ee37 100755 (executable)
@@ -1,6 +1,7 @@
 #!/bin/sh
 
 RCAR_CAN=0
+CAN_BCM=1
 
 if [ ! -e /sys/class/net/can1 ];then
        lava-test-case show_can_modules --result skip
@@ -44,6 +45,13 @@ modprobe_module() {
 
 remove_module can_raw
 
+# handle "rmmod: ERROR: Module can is in use by: can_bcm"
+lsmod | grep -q can_bcm
+if [ $? -eq 0 ];then
+       CAN_BCM=1
+       remove_module can_bcm
+fi
+
 remove_module can
 
 remove_module c_can_platform
@@ -84,6 +92,10 @@ if [ $RCAR_CAN -eq 1 ];then
        modprobe_module rcar_can
 fi
 
+if [ $CAN_BCM -eq 1 ];then
+       modprobe_module can_bcm
+fi
+
 #Make sure always that the can interface is down before
 #starting the config step.
 ip link set can0 down