ath11k treats firmware-2.bin as optional and falls back to API 1 when the file is not present. Request it with request_firmware_direct(), which does not fall back to the userspace firmware helper. Closes: https://github.com/openwrt/openwrt/issues/24743 Assisted-by: Claude:claude-opus-5 Signed-off-by: Julius Bairaktaris --- drivers/net/wireless/ath/ath11k/fw.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/wireless/ath/ath11k/fw.c b/drivers/net/wireless/ath/ath11k/fw.c index ef1b4c81843a..88ec2ffd9f00 100644 --- a/drivers/net/wireless/ath/ath11k/fw.c +++ b/drivers/net/wireless/ath/ath11k/fw.c @@ -16,10 +16,12 @@ static int ath11k_fw_request_firmware_api_n(struct ath11k_base *ab, struct ath11k_fw_ie *hdr; const u8 *data; __le32 *timestamp; + char path[100]; - ab->fw.fw = ath11k_core_firmware_request(ab, name); - if (IS_ERR(ab->fw.fw)) { - ret = PTR_ERR(ab->fw.fw); + ath11k_core_create_firmware_path(ab, name, path, sizeof(path)); + + ret = request_firmware_direct(&ab->fw.fw, path, ab->dev); + if (ret) { ath11k_dbg(ab, ATH11K_DBG_BOOT, "failed to load %s: %d\n", name, ret); ab->fw.fw = NULL; return ret; -- 2.53.0