| .. | .. |
|---|
| 9 | 9 | PROC_CONFIG="/proc/config.gz" |
|---|
| 10 | 10 | TEST_DIR=$(dirname $0) |
|---|
| 11 | 11 | |
|---|
| 12 | +# We need to load a different file to test request_firmware_into_buf |
|---|
| 13 | +# I believe the issue is firmware loaded cached vs. non-cached |
|---|
| 14 | +# with same filename is bungled. |
|---|
| 15 | +# To reproduce rename this to test-firmware.bin |
|---|
| 16 | +TEST_FIRMWARE_INTO_BUF_FILENAME=test-firmware-into-buf.bin |
|---|
| 17 | + |
|---|
| 12 | 18 | # Kselftest framework requirement - SKIP code is 4. |
|---|
| 13 | 19 | ksft_skip=4 |
|---|
| 14 | 20 | |
|---|
| .. | .. |
|---|
| 56 | 62 | { |
|---|
| 57 | 63 | HAS_FW_LOADER_USER_HELPER="$(kconfig_has CONFIG_FW_LOADER_USER_HELPER=y)" |
|---|
| 58 | 64 | HAS_FW_LOADER_USER_HELPER_FALLBACK="$(kconfig_has CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y)" |
|---|
| 65 | + HAS_FW_LOADER_COMPRESS="$(kconfig_has CONFIG_FW_LOADER_COMPRESS=y)" |
|---|
| 59 | 66 | PROC_FW_IGNORE_SYSFS_FALLBACK="0" |
|---|
| 60 | 67 | PROC_FW_FORCE_SYSFS_FALLBACK="0" |
|---|
| 61 | 68 | |
|---|
| .. | .. |
|---|
| 90 | 97 | fi |
|---|
| 91 | 98 | |
|---|
| 92 | 99 | OLD_FWPATH="$(cat /sys/module/firmware_class/parameters/path)" |
|---|
| 100 | + |
|---|
| 101 | + if [ "$HAS_FW_LOADER_COMPRESS" = "yes" ]; then |
|---|
| 102 | + if ! which xz 2> /dev/null > /dev/null; then |
|---|
| 103 | + HAS_FW_LOADER_COMPRESS="" |
|---|
| 104 | + fi |
|---|
| 105 | + fi |
|---|
| 93 | 106 | } |
|---|
| 94 | 107 | |
|---|
| 95 | 108 | verify_reqs() |
|---|
| .. | .. |
|---|
| 107 | 120 | FWPATH=$(mktemp -d) |
|---|
| 108 | 121 | FW="$FWPATH/test-firmware.bin" |
|---|
| 109 | 122 | echo "ABCD0123" >"$FW" |
|---|
| 123 | + FW_INTO_BUF="$FWPATH/$TEST_FIRMWARE_INTO_BUF_FILENAME" |
|---|
| 124 | + echo "EFGH4567" >"$FW_INTO_BUF" |
|---|
| 110 | 125 | NAME=$(basename "$FW") |
|---|
| 111 | 126 | if [ "$TEST_REQS_FW_SET_CUSTOM_PATH" = "yes" ]; then |
|---|
| 112 | 127 | echo -n "$FWPATH" >/sys/module/firmware_class/parameters/path |
|---|
| .. | .. |
|---|
| 174 | 189 | if [ -f $FW ]; then |
|---|
| 175 | 190 | rm -f "$FW" |
|---|
| 176 | 191 | fi |
|---|
| 192 | + if [ -f $FW_INTO_BUF ]; then |
|---|
| 193 | + rm -f "$FW_INTO_BUF" |
|---|
| 194 | + fi |
|---|
| 177 | 195 | if [ -d $FWPATH ]; then |
|---|
| 178 | 196 | rm -rf "$FWPATH" |
|---|
| 179 | 197 | fi |
|---|