[PATCH] wdt: dw: Fix passing NULL pointer to reset functions

Stefan Roese sr at denx.de
Mon Sep 20 07:31:02 CEST 2021


On 20.09.21 01:07, Sean Anderson wrote:
> Is it possible to get this in 2020.10?

Let me check, if I can find my time machine somewhere. ;)

But yes, v2021.10 should be possible. I'm just back from vacation and
will look into the new patches very soon.

Thanks,
Stefan

> Meng's patch breaks boards which 
> use this watchdog.
> 
> --Sean
> 
> On 9/11/21 3:11 PM, Sean Anderson wrote:
>> reset_*_bulk expects a real pointer.
>>
>> Fixes: 4f7abafe1c ("driver: watchdog: reset watchdog in 
>> designware_wdt_stop() function")
>> Signed-off-by: Sean Anderson <seanga2 at gmail.com>
>> ---
>>
>>   drivers/watchdog/designware_wdt.c | 10 +++++-----
>>   1 file changed, 5 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/watchdog/designware_wdt.c 
>> b/drivers/watchdog/designware_wdt.c
>> index afed81e6c6..cfec29bd15 100644
>> --- a/drivers/watchdog/designware_wdt.c
>> +++ b/drivers/watchdog/designware_wdt.c
>> @@ -22,7 +22,7 @@
>>   struct designware_wdt_priv {
>>       void __iomem    *base;
>>       unsigned int    clk_khz;
>> -    struct reset_ctl_bulk *resets;
>> +    struct reset_ctl_bulk resets;
>>   };
>>   /*
>> @@ -99,11 +99,11 @@ static int designware_wdt_stop(struct udevice *dev)
>>           if (CONFIG_IS_ENABLED(DM_RESET)) {
>>           int ret;
>> -        ret = reset_assert_bulk(priv->resets);
>> +        ret = reset_assert_bulk(&priv->resets);
>>           if (ret)
>>               return ret;
>> -        ret = reset_deassert_bulk(priv->resets);
>> +        ret = reset_deassert_bulk(&priv->resets);
>>           if (ret)
>>               return ret;
>>       }
>> @@ -156,11 +156,11 @@ static int designware_wdt_probe(struct udevice 
>> *dev)
>>   #endif
>>       if (CONFIG_IS_ENABLED(DM_RESET)) {
>> -        ret = reset_get_bulk(dev, priv->resets);
>> +        ret = reset_get_bulk(dev, &priv->resets);
>>           if (ret)
>>               goto err;
>> -        ret = reset_deassert_bulk(priv->resets);
>> +        ret = reset_deassert_bulk(&priv->resets);
>>           if (ret)
>>               goto err;
>>       }
>>


Viele Grüße,
Stefan

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de


More information about the U-Boot mailing list