Re: [PATCH v5] brcmfmac: firmware: Fix firmware loading
From: Kalle Valo <hidden>
Date: 2021-08-21 15:46:47
Dmitry Osipenko [off-list ref] wrote:
From: Linus Walleij <redacted>
The patch that would first try the board-specific firmware
had a bug because the fallback would not be called: the
asynchronous interface is used meaning request_firmware_nowait()
returns 0 immediately.
Harden the firmware loading like this:
- If we cannot build an alt_path (like if no board_type is
specified) just request the first firmware without any
suffix, like in the past.
- If the lookup of a board specific firmware fails, we get
a NULL fw in the async callback, so just try again without
the alt_path from a dedicated brcm_fw_request_done_alt_path
callback.
- Drop the unnecessary prototype of brcm_fw_request_done.
- Added MODULE_FIRMWARE match for per-board SDIO bins, making
userspace tools to pull all the relevant firmware files.
Fixes: 5ff013914c62 ("brcmfmac: firmware: Allow per-board firmware binaries")
Cc: Stefan Hansson <redacted>
Signed-off-by: Linus Walleij <redacted>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Reviewed-by: Arend van Spriel <arend.vanspriel@broadcom.com>Patch applied to wireless-drivers-next.git, thanks. c2dac3d2d3f1 brcmfmac: firmware: Fix firmware loading -- https://patchwork.kernel.org/project/linux-wireless/patch/20210808180510.8753-1-digetx@gmail.com/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches