aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2022-09-27 11:05:37 -0400
committerTom Rini <trini@konsulko.com>2022-09-27 11:05:37 -0400
commitd779fc399ce838160fb842543a53524b04564eda (patch)
tree97324575af6a4e81af4140d6281bd6f383c17e46
parentf117c54cc83e3c519883edb5a48062644d38c443 (diff)
parentc11cedc876631c1753427a68db4efaa00f700a79 (diff)
downloadu-boot-WIP/27Sep2022.zip
u-boot-WIP/27Sep2022.tar.gz
u-boot-WIP/27Sep2022.tar.bz2
Merge https://source.denx.de/u-boot/custodians/u-boot-watchdogWIP/27Sep2022
- autoboot: make sure watchdog device(s) are handled with keyed autoboot (Rasmus) - gpio_wdt: use __udelay() to avoid recursion (Rasmus) - watchdog: max6370: use __udelay() to avoid recursion (Pali)
-rw-r--r--common/autoboot.c3
-rw-r--r--drivers/watchdog/gpio_wdt.c2
-rw-r--r--drivers/watchdog/max6370_wdt.c2
3 files changed, 5 insertions, 2 deletions
diff --git a/common/autoboot.c b/common/autoboot.c
index 63f2587..cdafe76 100644
--- a/common/autoboot.c
+++ b/common/autoboot.c
@@ -115,6 +115,7 @@ static int passwd_abort_crypt(uint64_t etime)
presskey_len++;
}
}
+ udelay(10000);
} while (never_timeout || get_ticks() <= etime);
return abort;
@@ -206,6 +207,7 @@ static int passwd_abort_sha256(uint64_t etime)
if (slow_equals(sha, sha_env, SHA256_SUM_LEN))
abort = 1;
}
+ udelay(10000);
} while (!abort && get_ticks() <= etime);
free(presskey);
@@ -293,6 +295,7 @@ static int passwd_abort_key(uint64_t etime)
abort = 1;
}
}
+ udelay(10000);
} while (!abort && get_ticks() <= etime);
return abort;
diff --git a/drivers/watchdog/gpio_wdt.c b/drivers/watchdog/gpio_wdt.c
index fe06ec8..2920c2c 100644
--- a/drivers/watchdog/gpio_wdt.c
+++ b/drivers/watchdog/gpio_wdt.c
@@ -31,7 +31,7 @@ static int gpio_wdt_reset(struct udevice *dev)
case HW_ALGO_LEVEL:
/* Pulse */
dm_gpio_set_value(&priv->gpio, 1);
- udelay(1);
+ __udelay(1);
dm_gpio_set_value(&priv->gpio, 0);
break;
}
diff --git a/drivers/watchdog/max6370_wdt.c b/drivers/watchdog/max6370_wdt.c
index e59cbb2..584a4ed 100644
--- a/drivers/watchdog/max6370_wdt.c
+++ b/drivers/watchdog/max6370_wdt.c
@@ -72,7 +72,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);