1#!/bin/bash 2# SPDX-License-Identifier: GPL-2.0 3 4# This runs all known tests across all known possible configurations we could 5# emulate in one run. 6 7set -e 8 9TEST_DIR=$(dirname $0) 10source $TEST_DIR/fw_lib.sh 11 12export HAS_FW_LOADER_USER_HELPER="" 13export HAS_FW_LOADER_USER_HELPER_FALLBACK="" 14export HAS_FW_LOADER_COMPRESS="" 15 16run_tests() 17{ 18 proc_set_force_sysfs_fallback $1 19 proc_set_ignore_sysfs_fallback $2 20 $TEST_DIR/fw_filesystem.sh 21 22 proc_set_force_sysfs_fallback $1 23 proc_set_ignore_sysfs_fallback $2 24 $TEST_DIR/fw_fallback.sh 25 26 proc_set_force_sysfs_fallback $1 27 proc_set_ignore_sysfs_fallback $2 28 $TEST_DIR/fw_upload.sh 29} 30 31run_test_config_0001() 32{ 33 echo "-----------------------------------------------------" 34 echo "Running kernel configuration test 1 -- rare" 35 echo "Emulates:" 36 echo "CONFIG_FW_LOADER=y" 37 echo "CONFIG_FW_LOADER_USER_HELPER=n" 38 echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n" 39 run_tests 0 1 40} 41 42run_test_config_0002() 43{ 44 echo "-----------------------------------------------------" 45 echo "Running kernel configuration test 2 -- distro" 46 echo "Emulates:" 47 echo "CONFIG_FW_LOADER=y" 48 echo "CONFIG_FW_LOADER_USER_HELPER=y" 49 echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n" 50 proc_set_ignore_sysfs_fallback 0 51 run_tests 0 0 52} 53 54run_test_config_0003() 55{ 56 echo "-----------------------------------------------------" 57 echo "Running kernel configuration test 3 -- android" 58 echo "Emulates:" 59 echo "CONFIG_FW_LOADER=y" 60 echo "CONFIG_FW_LOADER_USER_HELPER=y" 61 echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y" 62 run_tests 1 0 63} 64 65check_mods 66check_setup 67 68echo "Running namespace test: " 69$TEST_DIR/fw_namespace $DIR/trigger_request 70echo "OK" 71 72if [ -f $FW_FORCE_SYSFS_FALLBACK ]; then 73 run_test_config_0001 74 run_test_config_0002 75 run_test_config_0003 76else 77 echo "Running basic kernel configuration, working with your config" 78 run_tests 79fi 80