diff mbox series

watchdog: max6370: use __udelay() to avoid recursion

Message ID 20220927101919.6999-1-pali@kernel.org
State Accepted
Commit c5f5ee373267d8a73b44ffa0de0d0a1a08115d8f
Delegated to: Stefan Roese
Headers show
Series watchdog: max6370: use __udelay() to avoid recursion | expand

Commit Message

Pali Rohár Sept. 27, 2022, 10:19 a.m. UTC
The udelay() function in lib/time.c contains a WATCHDOG_RESET()
call. So use __udelay() in max6370_wdt.c to prevent recursion.

Fixes: 0a095fc53b15 ("watchdog: Add MAX6370 watchdog timer driver")
Signed-off-by: Pali Rohár <pali@kernel.org>
---
 drivers/watchdog/max6370_wdt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Stefan Roese Sept. 27, 2022, 10:22 a.m. UTC | #1
On 27.09.22 12:19, Pali Rohár wrote:
> The udelay() function in lib/time.c contains a WATCHDOG_RESET()
> call. So use __udelay() in max6370_wdt.c to prevent recursion.
> 
> Fixes: 0a095fc53b15 ("watchdog: Add MAX6370 watchdog timer driver")
> Signed-off-by: Pali Rohár <pali@kernel.org>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
>   drivers/watchdog/max6370_wdt.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/watchdog/max6370_wdt.c b/drivers/watchdog/max6370_wdt.c
> index 556c6a4b6d6b..44872e23c586 100644
> --- a/drivers/watchdog/max6370_wdt.c
> +++ b/drivers/watchdog/max6370_wdt.c
> @@ -73,7 +73,7 @@ static int max6370_wdt_reset(struct udevice *dev)
>   
>   	if (dm_gpio_is_valid(&wdt->gpio_wdi)) {
>   		dm_gpio_set_value(&wdt->gpio_wdi, 1);
> -		udelay(1);
> +		__udelay(1);
>   		dm_gpio_set_value(&wdt->gpio_wdi, 0);
>   	} else {
>   		val = readb(wdt->reg);

Viele Grüße,
Stefan Roese
Stefan Roese Sept. 27, 2022, 12:46 p.m. UTC | #2
On 27.09.22 12:19, Pali Rohár wrote:
> The udelay() function in lib/time.c contains a WATCHDOG_RESET()
> call. So use __udelay() in max6370_wdt.c to prevent recursion.
> 
> Fixes: 0a095fc53b15 ("watchdog: Add MAX6370 watchdog timer driver")
> Signed-off-by: Pali Rohár <pali@kernel.org>

Applied to u-boot-watchdog/master

Thanks,
Stefan

> ---
>   drivers/watchdog/max6370_wdt.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/watchdog/max6370_wdt.c b/drivers/watchdog/max6370_wdt.c
> index 556c6a4b6d6b..44872e23c586 100644
> --- a/drivers/watchdog/max6370_wdt.c
> +++ b/drivers/watchdog/max6370_wdt.c
> @@ -73,7 +73,7 @@ static int max6370_wdt_reset(struct udevice *dev)
>   
>   	if (dm_gpio_is_valid(&wdt->gpio_wdi)) {
>   		dm_gpio_set_value(&wdt->gpio_wdi, 1);
> -		udelay(1);
> +		__udelay(1);
>   		dm_gpio_set_value(&wdt->gpio_wdi, 0);
>   	} else {
>   		val = readb(wdt->reg);

Viele Grüße,
Stefan Roese
diff mbox series

Patch

diff --git a/drivers/watchdog/max6370_wdt.c b/drivers/watchdog/max6370_wdt.c
index 556c6a4b6d6b..44872e23c586 100644
--- a/drivers/watchdog/max6370_wdt.c
+++ b/drivers/watchdog/max6370_wdt.c
@@ -73,7 +73,7 @@  static int max6370_wdt_reset(struct udevice *dev)
 
 	if (dm_gpio_is_valid(&wdt->gpio_wdi)) {
 		dm_gpio_set_value(&wdt->gpio_wdi, 1);
-		udelay(1);
+		__udelay(1);
 		dm_gpio_set_value(&wdt->gpio_wdi, 0);
 	} else {
 		val = readb(wdt->reg);