summaryrefslogtreecommitdiff
path: root/board/nokia
diff options
context:
space:
mode:
authorPali Rohár <pali@kernel.org>2021-03-09 23:19:15 +0300
committerLokesh Vutla <lokeshvutla@ti.com>2021-06-09 19:53:44 +0300
commite61a4ff13f36a9952b4ecdfaa209963d411d2884 (patch)
tree888e4aa7fb3e65b6d49b47fa35ad0f8809ac8446 /board/nokia
parentce7ad5739054a9b3a766e49e574905590753c329 (diff)
downloadu-boot-e61a4ff13f36a9952b4ecdfaa209963d411d2884.tar.xz
Nokia RX-51: Enable CONFIG_WDT to remove deprecation warning
Also convert CONFIG_HW_WATCHDOG to CONFIG_WATCHDOG. Signed-off-by: Pali Roh?r <pali@kernel.org> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> Link: https://lore.kernel.org/r/20210309201915.16586-1-pali@kernel.org
Diffstat (limited to 'board/nokia')
-rw-r--r--board/nokia/rx51/rx51.c37
1 files changed, 33 insertions, 4 deletions
diff --git a/board/nokia/rx51/rx51.c b/board/nokia/rx51/rx51.c
index 7bd5fbd715..fd3cec8358 100644
--- a/board/nokia/rx51/rx51.c
+++ b/board/nokia/rx51/rx51.c
@@ -26,6 +26,7 @@
#include <env.h>
#include <init.h>
#include <watchdog.h>
+#include <wdt.h>
#include <malloc.h>
#include <twl4030.h>
#include <i2c.h>
@@ -487,20 +488,20 @@ static unsigned long int twl_wd_time; /* last time of watchdog reset */
static unsigned long int twl_i2c_lock;
/*
- * Routine: hw_watchdog_reset
+ * Routine: rx51_watchdog_reset
* Description: Reset timeout of twl4030 watchdog.
*/
-void hw_watchdog_reset(void)
+static int rx51_watchdog_reset(struct udevice *dev)
{
u8 timeout = 0;
/* do not reset watchdog too often - max every 4s */
if (get_timer(twl_wd_time) < 4 * CONFIG_SYS_HZ)
- return;
+ return 0;
/* localy lock twl4030 i2c bus */
if (test_and_set_bit(0, &twl_i2c_lock))
- return;
+ return 0;
/* read actual watchdog timeout */
twl4030_i2c_read_u8(TWL4030_CHIP_PM_RECEIVER,
@@ -517,8 +518,32 @@ void hw_watchdog_reset(void)
/* localy unlock twl4030 i2c bus */
test_and_clear_bit(0, &twl_i2c_lock);
+
+ return 0;
+}
+
+static int rx51_watchdog_start(struct udevice *dev, u64 timeout_ms, ulong flags)
+{
+ return 0;
}
+static int rx51_watchdog_probe(struct udevice *dev)
+{
+ return 0;
+}
+
+static const struct wdt_ops rx51_watchdog_ops = {
+ .start = rx51_watchdog_start,
+ .reset = rx51_watchdog_reset,
+};
+
+U_BOOT_DRIVER(rx51_watchdog) = {
+ .name = "rx51_watchdog",
+ .id = UCLASS_WDT,
+ .ops = &rx51_watchdog_ops,
+ .probe = rx51_watchdog_probe,
+};
+
/*
* TWL4030 keypad handler for cfb_console
*/
@@ -722,3 +747,7 @@ U_BOOT_DRVINFOS(rx51_i2c) = {
{ "i2c_omap", &rx51_i2c[1] },
{ "i2c_omap", &rx51_i2c[2] },
};
+
+U_BOOT_DRVINFOS(rx51_watchdog) = {
+ { "rx51_watchdog" },
+};