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 27run_test_config_0001() 28{ 29 echo "-----------------------------------------------------" 30 echo "Running kernel configuration test 1 -- rare" 31 echo "Emulates:" 32 echo "CONFIG_FW_LOADER=y" 33 echo "CONFIG_FW_LOADER_USER_HELPER=n" 34 echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n" 35 run_tests 0 1 36} 37 38run_test_config_0002() 39{ 40 echo "-----------------------------------------------------" 41 echo "Running kernel configuration test 2 -- distro" 42 echo "Emulates:" 43 echo "CONFIG_FW_LOADER=y" 44 echo "CONFIG_FW_LOADER_USER_HELPER=y" 45 echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n" 46 proc_set_ignore_sysfs_fallback 0 47 run_tests 0 0 48} 49 50run_test_config_0003() 51{ 52 echo "-----------------------------------------------------" 53 echo "Running kernel configuration test 3 -- android" 54 echo "Emulates:" 55 echo "CONFIG_FW_LOADER=y" 56 echo "CONFIG_FW_LOADER_USER_HELPER=y" 57 echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y" 58 run_tests 1 0 59} 60 61check_mods 62check_setup 63 64echo "Running namespace test: " 65$TEST_DIR/fw_namespace $DIR/trigger_request 66echo "OK" 67 68if [ -f $FW_FORCE_SYSFS_FALLBACK ]; then 69 run_test_config_0001 70 run_test_config_0002 71 run_test_config_0003 72else 73 echo "Running basic kernel configuration, working with your config" 74 run_tests 75fi 76