The function raspberrypi_fw_get_rate (e.g. used for the recalc_rate
hook) can fail to get the clock rate from the firmware. In this case
we cannot return a signed error value, which would be casted to
unsigned long. Fix this by returning 0 instead.
Signed-off-by: Stefan Wahren <[email protected]>
---
drivers/clk/bcm/clk-raspberrypi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/clk/bcm/clk-raspberrypi.c b/drivers/clk/bcm/clk-raspberrypi.c
index 73518009a0f2..39d63c983d62 100644
--- a/drivers/clk/bcm/clk-raspberrypi.c
+++ b/drivers/clk/bcm/clk-raspberrypi.c
@@ -203,7 +203,7 @@ static unsigned long raspberrypi_fw_get_rate(struct clk_hw *hw,
ret = raspberrypi_clock_property(rpi->firmware, data,
RPI_FIRMWARE_GET_CLOCK_RATE, &val);
if (ret)
- return ret;
+ return 0;
return val;
}
--
2.25.1
On 6/25/22 01:36, Stefan Wahren wrote:
> The function raspberrypi_fw_get_rate (e.g. used for the recalc_rate
> hook) can fail to get the clock rate from the firmware. In this case
> we cannot return a signed error value, which would be casted to
> unsigned long. Fix this by returning 0 instead.
>
> Signed-off-by: Stefan Wahren <[email protected]>
Fixes: 4e85e535e6cc ("clk: bcm283x: add driver interfacing with
Raspberry Pi's firmware")
Acked-by: Florian Fainelli <[email protected]>
--
Florian
Am 27.06.22 um 18:24 schrieb Florian Fainelli:
> On 6/25/22 01:36, Stefan Wahren wrote:
>> The function raspberrypi_fw_get_rate (e.g. used for the recalc_rate
>> hook) can fail to get the clock rate from the firmware. In this case
>> we cannot return a signed error value, which would be casted to
>> unsigned long. Fix this by returning 0 instead.
>>
>> Signed-off-by: Stefan Wahren <[email protected]>
>
> Fixes: 4e85e535e6cc ("clk: bcm283x: add driver interfacing with
> Raspberry Pi's firmware")
>
> Acked-by: Florian Fainelli <[email protected]>
gentle ping
Quoting Stefan Wahren (2022-06-25 01:36:43)
> The function raspberrypi_fw_get_rate (e.g. used for the recalc_rate
> hook) can fail to get the clock rate from the firmware. In this case
> we cannot return a signed error value, which would be casted to
> unsigned long. Fix this by returning 0 instead.
>
> Signed-off-by: Stefan Wahren <[email protected]>
> ---
Applied to clk-fixes