#!/bin/bash # SPDX-License-Identifier: GPL-2.0 # This runs all known tests across all known possible configurations we could # emulate in one run. set -e TEST_DIR=$(dirname $0) source $TEST_DIR/fw_lib.sh export HAS_FW_LOADER_USER_HELPER="" export HAS_FW_LOADER_USER_HELPER_FALLBACK="" run_tests() { proc_set_force_sysfs_fallback $1 proc_set_ignore_sysfs_fallback $2 $TEST_DIR/fw_filesystem.sh proc_set_force_sysfs_fallback $1 proc_set_ignore_sysfs_fallback $2 $TEST_DIR/fw_fallback.sh } run_test_config_0001() { echo "-----------------------------------------------------" echo "Running kernel configuration test 1 -- rare" echo "Emulates:" echo "CONFIG_FW_LOADER=y" echo "CONFIG_FW_LOADER_USER_HELPER=n" echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n" run_tests 0 1 } run_test_config_0002() { echo "-----------------------------------------------------" echo "Running kernel configuration test 2 -- distro" echo "Emulates:" echo "CONFIG_FW_LOADER=y" echo "CONFIG_FW_LOADER_USER_HELPER=y" echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n" proc_set_ignore_sysfs_fallback 0 run_tests 0 0 } run_test_config_0003() { echo "-----------------------------------------------------" echo "Running kernel configuration test 3 -- android" echo "Emulates:" echo "CONFIG_FW_LOADER=y" echo "CONFIG_FW_LOADER_USER_HELPER=y" echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y" run_tests 1 0 } check_mods check_setup if [ -f $FW_FORCE_SYSFS_FALLBACK ]; then run_test_config_0001 run_test_config_0002 run_test_config_0003 else echo "Running basic kernel configuration, working with your config" run_tests fi