Subject: Re: [PATCH net v2] octeon_ep: explicitly test for firmware ready value

From: Jiri Pirko <[email-masked]>
Date: Thu, 7 Dec 2023 11:55:32 +0100

Thu, Dec 07, 2023 at 09:45:15AM CET, [email-masked] wrote:
>On Thu, Dec 7, 2023 at 8:50 AM Shinas Rasheed <[email-masked]> wrote:
>>
>> The firmware ready value is 1, and get firmware ready status
>> function should explicitly test for that value. The firmware
>> ready value read will be 2 after driver load, and on unbind
>> till firmware rewrites the firmware ready back to 0, the value
>> seen by driver will be 2, which should be regarded as not ready.
>>
>> Fixes: 10c073e40469 ("octeon_ep: defer probe if firmware not ready")
>> Signed-off-by: Shinas Rasheed <[email-masked]>
>> ---
>> V2:
>>   - Fixed redundant logic
>>
>> V1: https://lore.kernel.org/all/[email-masked]/
>>
>>  drivers/net/ethernet/marvell/octeon_ep/octep_main.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ethernet/marvell/octeon_ep/octep_main.c b/drivers/net/ethernet/marvell/octeon_ep/octep_main.c
>> index 552970c7dec0..b8ae269f6f97 100644
>> --- a/drivers/net/ethernet/marvell/octeon_ep/octep_main.c
>> +++ b/drivers/net/ethernet/marvell/octeon_ep/octep_main.c
>> @@ -1258,7 +1258,8 @@ static bool get_fw_ready_status(struct pci_dev *pdev)
>>
>>                 pci_read_config_byte(pdev, (pos + 8), &status);
>>                 dev_info(&pdev->dev, "Firmware ready status = %u\n", status);
>> -               return status;
>> +#define FW_STATUS_READY 1ULL
>> +               return (status == FW_STATUS_READY);
>
>The parentheses are not necessary, but if you find it better readable
>this way, so be it.

Well, since return is not a function, parentheses should not be here.
Please drop them.

>
>Reviewed-by: Michal Schmidt <[email-masked]>
>
>>         }
>>         return false;
>>  }
>> --
>> 2.25.1
>>
>
>