Skip to content

Commit

Permalink
brcmfmac: fix CLM load error for legacy chips when user helper is ena…
Browse files Browse the repository at this point in the history
…bled

For legacy chips without CLM blob files, kernel with user helper function
returns -EAGAIN when we request_firmware(), and then driver got failed
when bringing up legacy chips. We expect the CLM blob file for legacy chip
is not existence in firmware path, but the -ENOENT error is transferred to
-EAGAIN in firmware_class.c with user helper.
Because of that, we continue with CLM data currently present in firmware
if getting error from doing request_firmware().

Cc: [email protected] # v4.15.y
Reviewed-by: Arend van Spriel <[email protected]>
Signed-off-by: Wright Feng <[email protected]>
Signed-off-by: Kalle Valo <[email protected]>
  • Loading branch information
WenChieh-Feng authored and Kalle Valo committed Jan 16, 2018
1 parent 58eae14 commit cc124d5
Showing 1 changed file with 3 additions and 6 deletions.
9 changes: 3 additions & 6 deletions drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -182,12 +182,9 @@ static int brcmf_c_process_clm_blob(struct brcmf_if *ifp)

err = request_firmware(&clm, clm_name, dev);
if (err) {
if (err == -ENOENT) {
brcmf_dbg(INFO, "continue with CLM data currently present in firmware\n");
return 0;
}
brcmf_err("request CLM blob file failed (%d)\n", err);
return err;
brcmf_info("no clm_blob available(err=%d), device may have limited channels available\n",
err);
return 0;
}

chunk_buf = kzalloc(sizeof(*chunk_buf) + MAX_CHUNK_LEN - 1, GFP_KERNEL);
Expand Down

0 comments on commit cc124d5

Please sign in to comment.