For legacy chips without CLM blob files, kernel with user helper function returns -EAGAIN when we request_firmware() for blob file. In this case, brcmf_bus_started gets error and failed to bring up legacy chips. Because of that, we should continue with CLM data currently present in firmware if getting -EAGAIN when doing request_firmware(). Signed-off-by: Wright Feng <wright.feng@xxxxxxxxxxx> --- v2: remove retry from patch v1 --- drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c index 6a59d06..0baab4c 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c @@ -182,7 +182,7 @@ static int brcmf_c_process_clm_blob(struct brcmf_if *ifp) err = request_firmware(&clm, clm_name, dev); if (err) { - if (err == -ENOENT) { + if (err == -ENOENT || err == -EAGAIN) { brcmf_dbg(INFO, "continue with CLM data currently present in firmware\n"); return 0; } -- 1.9.1