45 lines
844 B
Bash
45 lines
844 B
Bash
![]() |
#!/bin/bash
|
||
|
# SPDX-License-Identifier: GPL-2.0
|
||
|
|
||
|
# Library of helpers for test scripts.
|
||
|
set -e
|
||
|
|
||
|
DIR=/sys/devices/virtual/misc/test_firmware
|
||
|
|
||
|
PROC_CONFIG="/proc/config.gz"
|
||
|
TEST_DIR=$(dirname $0)
|
||
|
|
||
|
print_reqs_exit()
|
||
|
{
|
||
|
echo "You must have the following enabled in your kernel:" >&2
|
||
|
cat $TEST_DIR/config >&2
|
||
|
exit 1
|
||
|
}
|
||
|
|
||
|
test_modprobe()
|
||
|
{
|
||
|
if [ ! -d $DIR ]; then
|
||
|
print_reqs_exit
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
check_mods()
|
||
|
{
|
||
|
trap "test_modprobe" EXIT
|
||
|
if [ ! -d $DIR ]; then
|
||
|
modprobe test_firmware
|
||
|
fi
|
||
|
if [ ! -f $PROC_CONFIG ]; then
|
||
|
if modprobe configs 2>/dev/null; then
|
||
|
echo "Loaded configs module"
|
||
|
if [ ! -f $PROC_CONFIG ]; then
|
||
|
echo "You must have the following enabled in your kernel:" >&2
|
||
|
cat $TEST_DIR/config >&2
|
||
|
echo "Resorting to old heuristics" >&2
|
||
|
fi
|
||
|
else
|
||
|
echo "Failed to load configs module, using old heuristics" >&2
|
||
|
fi
|
||
|
fi
|
||
|
}
|