04.08.2021 18:34, Linus Walleij пишет: > + fwctx->tested_board_variant = false; This shouldn't be really needed, isn't it? > ret = request_firmware_nowait(THIS_MODULE, true, alt_path, > fwctx->dev, GFP_KERNEL, fwctx, > - brcmf_fw_request_done); > + brcmf_fw_request_done_first); > kfree(alt_path); > - } > - /* Else try canonical path */ > - if (ret) { > + } else { > + fwctx->tested_board_variant = true; > ret = request_firmware_nowait(THIS_MODULE, true, first->path, > fwctx->dev, GFP_KERNEL, fwctx, > - brcmf_fw_request_done); > + brcmf_fw_request_done_first); > } > if (ret < 0) > - brcmf_fw_request_done(NULL, fwctx); > + brcmf_fw_request_done_first(NULL, fwctx); This "else" can be replaced with: if (!alt_path || ret < 0) brcmf_fw_request_done(NULL, fwctx);