2022-11-30 11:30:09

by Arend van Spriel

[permalink] [raw]
Subject: Re: [PATCH] wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware()

On 11/30/2022 3:00 AM, wangyufen wrote:
>
>
> 在 2022/11/30 1:41, Franky Lin 写道:
>> On Tue, Nov 29, 2022 at 1:47 AM Wang Yufen <[email protected]> wrote:
>>>
>>> Fix to return a negative error code -EINVAL instead of 0.
>>>
>>> Compile tested only.
>>>
>>> Fixes: d380ebc9b6fb ("brcmfmac: rename chip download functions")
>>> Signed-off-by: Wang Yufen <[email protected]>
>>> ---
>>>   drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 1 +
>>>   1 file changed, 1 insertion(+)
>>>
>>> diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
>>> b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
>>> index 465d95d..329ec8ac 100644
>>> --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
>>> +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
>>> @@ -3414,6 +3414,7 @@ static int brcmf_sdio_download_firmware(struct
>>> brcmf_sdio *bus,
>>>          /* Take arm out of reset */
>>>          if (!brcmf_chip_set_active(bus->ci, rstvec)) {
>>>                  brcmf_err("error getting out of ARM core reset\n");
>>> +               bcmerror = -EINVAL;
>>
>> ENODEV seems more appropriate here.
>
> However, if brcmf_chip_set_active()  fails in
> brcmf_pcie_exit_download_state(), "-EINVAL" is returned.
> Is it necessary to keep consistent?

If we can not get the ARM on the chip out of reset things will fail soon
enough further down the road. Anyway, the other function calls return
-EIO so let's do the same here.

Thanks,
Arend


Attachments:
smime.p7s (4.12 kB)
S/MIME Cryptographic Signature