Ignore custom firmware loading and cancellation tests on older
kernel releases, which do not support this feature.

Signed-off-by: Amit Pundir <amit.pun...@linaro.org>
---
 tools/testing/selftests/firmware/fw_fallback.sh | 38 +++++++++++++++++--------
 1 file changed, 26 insertions(+), 12 deletions(-)

diff --git a/tools/testing/selftests/firmware/fw_fallback.sh 
b/tools/testing/selftests/firmware/fw_fallback.sh
index a52a3bab532b..72858c921eed 100755
--- a/tools/testing/selftests/firmware/fw_fallback.sh
+++ b/tools/testing/selftests/firmware/fw_fallback.sh
@@ -86,6 +86,11 @@ load_fw_cancel()
 
 load_fw_custom()
 {
+       if [ ! -e "$DIR"/trigger_custom_fallback ]; then
+               echo "$0: custom fallback loading trigger not supported" >&2
+               return 1
+       fi
+
        local name="$1"
        local file="$2"
 
@@ -108,11 +113,17 @@ load_fw_custom()
 
        # Wait for request to finish.
        wait
+       return 0
 }
 
 
 load_fw_custom_cancel()
 {
+       if [ ! -e "$DIR"/trigger_custom_fallback ]; then
+               echo "$0: cancelling custom fallback trigger not supported" >&2
+               return 1
+       fi
+
        local name="$1"
        local file="$2"
 
@@ -133,6 +144,7 @@ load_fw_custom_cancel()
 
        # Wait for request to finish.
        wait
+       return 0
 }
 
 load_fw_fallback_with_child()
@@ -227,20 +239,22 @@ else
        echo "$0: cancelling fallback mechanism works"
 fi
 
-load_fw_custom "$NAME" "$FW"
-if ! diff -q "$FW" /dev/test_firmware >/dev/null ; then
-       echo "$0: firmware was not loaded" >&2
-       exit 1
-else
-       echo "$0: custom fallback loading mechanism works"
+if load_fw_custom "$NAME" "$FW" ; then
+       if ! diff -q "$FW" /dev/test_firmware >/dev/null ; then
+               echo "$0: firmware was not loaded" >&2
+               exit 1
+       else
+               echo "$0: custom fallback loading mechanism works"
+       fi
 fi
 
-load_fw_custom_cancel "nope-$NAME" "$FW"
-if diff -q "$FW" /dev/test_firmware >/dev/null ; then
-       echo "$0: firmware was expected to be cancelled" >&2
-       exit 1
-else
-       echo "$0: cancelling custom fallback mechanism works"
+if load_fw_custom_cancel "nope-$NAME" "$FW" ; then
+       if diff -q "$FW" /dev/test_firmware >/dev/null ; then
+               echo "$0: firmware was expected to be cancelled" >&2
+               exit 1
+       else
+               echo "$0: cancelling custom fallback mechanism works"
+       fi
 fi
 
 set +e
-- 
2.7.4

Reply via email to