* [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog
@ 2017-02-19 22:24 Lukasz Majewski
2017-02-19 22:24 ` Lukasz Majewski
` (7 more replies)
0 siblings, 8 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
Following patch series comprise various fixes for OMAP Watchdog:
- Disable watchdog during init (as done in recent Linux kernel)
- Enable OMAP watchdog in init_func_watchdog_init
- Extract OMAP WDT (omap_wdt) header file to be resued not only on
am335x SoC
- Remove implicit WDT disable code from hwinit-common.c file
- Setup the watchdog timeout via CONFIG_HW_WATCHDOG_TIMEOUT_MS
Tested at am57xx (dra7) SoC
Lukasz Majewski (7):
ti: wdt: common: Make the wdt IP defines common for the TI platform
ti: wdt: omap5: Define WDT_BASE for omap5+ SoC
ti: wdt: omap: Disable watchdog timer before performing initialization
ti: wdt: hwinit-common: Remove legacy watchdog disable code
ti: wdt: omap5: Remove not needed struct watchdog definition
ti: wdt: omap: Use COMMON_HW_WATCHDOG_TIMEOUT_MS to specify watchdog
timeout
ti: wdt: Enable OMAP watchdog in u-boot's board_f.c
arch/arm/include/asm/arch-am33xx/cpu.h | 48 +------------------------
arch/arm/include/asm/arch-omap5/cpu.h | 17 ++-------
arch/arm/include/asm/ti-common/omap_wdt.h | 60 +++++++++++++++++++++++++++++++
arch/arm/mach-omap2/hwinit-common.c | 27 --------------
common/board_f.c | 2 +-
drivers/watchdog/omap_wdt.c | 45 +++++++++++++----------
6 files changed, 92 insertions(+), 107 deletions(-)
create mode 100644 arch/arm/include/asm/ti-common/omap_wdt.h
--
2.1.4
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-19 22:24 ` [U-Boot] [PATCH 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform Lukasz Majewski
` (6 subsequent siblings)
7 siblings, 0 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
Following patch series comprise various fixes for OMAP Watchdog:
- Disable watchdog during init (as done in recent Linux kernel)
- Enable OMAP watchdog in init_func_watchdog_init
- Extract OMAP WDT (omap_wdt) header file to be resued not only on
am335x SoC
- Remove implicit WDT disable code from hwinit-common.c file
- Setup the watchdog timeout via CONFIG_HW_WATCHDOG_TIMEOUT_MS
Tested at am57xx (dra7) SoC
Lukasz Majewski (7):
ti: wdt: common: Make the wdt IP defines common for the TI platform
ti: wdt: omap5: Define WDT_BASE for omap5+ SoC
ti: wdt: omap: Disable watchdog timer before performing initialization
ti: wdt: hwinit-common: Remove legacy watchdog disable code
ti: wdt: omap5: Remove not needed struct watchdog definition
ti: wdt: omap: Use COMMON_HW_WATCHDOG_TIMEOUT_MS to specify watchdog
timeout
ti: wdt: Enable OMAP watchdog in u-boot's board_f.c
arch/arm/include/asm/arch-am33xx/cpu.h | 48 +------------------------
arch/arm/include/asm/arch-omap5/cpu.h | 17 ++-------
arch/arm/include/asm/ti-common/omap_wdt.h | 60 +++++++++++++++++++++++++++++++
arch/arm/mach-omap2/hwinit-common.c | 27 --------------
common/board_f.c | 2 +-
drivers/watchdog/omap_wdt.c | 45 +++++++++++++----------
6 files changed, 92 insertions(+), 107 deletions(-)
create mode 100644 arch/arm/include/asm/ti-common/omap_wdt.h
--
2.1.4
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
2017-02-19 22:24 ` Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC Lukasz Majewski
` (5 subsequent siblings)
7 siblings, 2 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
arch/arm/include/asm/arch-am33xx/cpu.h | 48 +------------------------
arch/arm/include/asm/arch-omap5/cpu.h | 2 ++
arch/arm/include/asm/ti-common/omap_wdt.h | 60 +++++++++++++++++++++++++++++++
3 files changed, 63 insertions(+), 47 deletions(-)
create mode 100644 arch/arm/include/asm/ti-common/omap_wdt.h
diff --git a/arch/arm/include/asm/arch-am33xx/cpu.h b/arch/arm/include/asm/arch-am33xx/cpu.h
index dbed776..54f449f 100644
--- a/arch/arm/include/asm/arch-am33xx/cpu.h
+++ b/arch/arm/include/asm/arch-am33xx/cpu.h
@@ -66,29 +66,9 @@
#define PRM_RSTCTRL_RESET 0x01
#define PRM_RSTST_WARM_RESET_MASK 0x232
-/*
- * Watchdog:
- * Using the prescaler, the OMAP watchdog could go for many
- * months before firing. These limits work without scaling,
- * with the 60 second default assumed by most tools and docs.
- */
-#define TIMER_MARGIN_MAX (24 * 60 * 60) /* 1 day */
-#define TIMER_MARGIN_DEFAULT 60 /* 60 secs */
-#define TIMER_MARGIN_MIN 1
-
-#define PTV 0 /* prescale */
-#define GET_WLDR_VAL(secs) (0xffffffff - ((secs) * (32768/(1<<PTV))) + 1)
-#define WDT_WWPS_PEND_WCLR BIT(0)
-#define WDT_WWPS_PEND_WLDR BIT(2)
-#define WDT_WWPS_PEND_WTGR BIT(3)
-#define WDT_WWPS_PEND_WSPR BIT(4)
-
-#define WDT_WCLR_PRE BIT(5)
-#define WDT_WCLR_PTV_OFF 2
-
#ifndef __KERNEL_STRICT_NAMES
#ifndef __ASSEMBLY__
-
+#include <asm/ti-common/omap_wdt.h>
#ifndef CONFIG_AM43XX
/* Encapsulating core pll registers */
@@ -422,32 +402,6 @@ struct cm_rtc {
unsigned int clkstctrl; /* offset 0x4 */
};
-/* Watchdog timer registers */
-struct wd_timer {
- unsigned int resv1[4];
- unsigned int wdtwdsc; /* offset 0x010 */
- unsigned int wdtwdst; /* offset 0x014 */
- unsigned int wdtwisr; /* offset 0x018 */
- unsigned int wdtwier; /* offset 0x01C */
- unsigned int wdtwwer; /* offset 0x020 */
- unsigned int wdtwclr; /* offset 0x024 */
- unsigned int wdtwcrr; /* offset 0x028 */
- unsigned int wdtwldr; /* offset 0x02C */
- unsigned int wdtwtgr; /* offset 0x030 */
- unsigned int wdtwwps; /* offset 0x034 */
- unsigned int resv2[3];
- unsigned int wdtwdly; /* offset 0x044 */
- unsigned int wdtwspr; /* offset 0x048 */
- unsigned int resv3[1];
- unsigned int wdtwqeoi; /* offset 0x050 */
- unsigned int wdtwqstar; /* offset 0x054 */
- unsigned int wdtwqsta; /* offset 0x058 */
- unsigned int wdtwqens; /* offset 0x05C */
- unsigned int wdtwqenc; /* offset 0x060 */
- unsigned int resv4[39];
- unsigned int wdt_unfr; /* offset 0x100 */
-};
-
/* Timer 32 bit registers */
struct gptimer {
unsigned int tidr; /* offset 0x00 */
diff --git a/arch/arm/include/asm/arch-omap5/cpu.h b/arch/arm/include/asm/arch-omap5/cpu.h
index 683d905..d7c46605 100644
--- a/arch/arm/include/asm/arch-omap5/cpu.h
+++ b/arch/arm/include/asm/arch-omap5/cpu.h
@@ -18,6 +18,8 @@
#ifndef __KERNEL_STRICT_NAMES
#ifndef __ASSEMBLY__
+#include <asm/ti-common/omap_wdt.h>
+
struct gptimer {
u32 tidr; /* 0x00 r */
u8 res1[0xc];
diff --git a/arch/arm/include/asm/ti-common/omap_wdt.h b/arch/arm/include/asm/ti-common/omap_wdt.h
new file mode 100644
index 0000000..b9f4c07
--- /dev/null
+++ b/arch/arm/include/asm/ti-common/omap_wdt.h
@@ -0,0 +1,60 @@
+/*
+ * omap_wdt.h
+ *
+ * OMAP Watchdog header file
+ *
+ * Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#ifndef __OMAP_WDT_H__
+#define __OMAP_WDT_H__
+
+/*
+ * Watchdog:
+ * Using the prescaler, the OMAP watchdog could go for many
+ * months before firing. These limits work without scaling,
+ * with the 60 second default assumed by most tools and docs.
+ */
+#define TIMER_MARGIN_MAX (24 * 60 * 60) /* 1 day */
+#define TIMER_MARGIN_DEFAULT 60 /* 60 secs */
+#define TIMER_MARGIN_MIN 1
+
+#define PTV 0 /* prescale */
+#define GET_WLDR_VAL(secs) (0xffffffff - ((secs) * (32768/(1<<PTV))) + 1)
+#define WDT_WWPS_PEND_WCLR BIT(0)
+#define WDT_WWPS_PEND_WLDR BIT(2)
+#define WDT_WWPS_PEND_WTGR BIT(3)
+#define WDT_WWPS_PEND_WSPR BIT(4)
+
+#define WDT_WCLR_PRE BIT(5)
+#define WDT_WCLR_PTV_OFF 2
+
+/* Watchdog timer registers */
+struct wd_timer {
+ unsigned int resv1[4];
+ unsigned int wdtwdsc; /* offset 0x010 */
+ unsigned int wdtwdst; /* offset 0x014 */
+ unsigned int wdtwisr; /* offset 0x018 */
+ unsigned int wdtwier; /* offset 0x01C */
+ unsigned int wdtwwer; /* offset 0x020 */
+ unsigned int wdtwclr; /* offset 0x024 */
+ unsigned int wdtwcrr; /* offset 0x028 */
+ unsigned int wdtwldr; /* offset 0x02C */
+ unsigned int wdtwtgr; /* offset 0x030 */
+ unsigned int wdtwwps; /* offset 0x034 */
+ unsigned int resv2[3];
+ unsigned int wdtwdly; /* offset 0x044 */
+ unsigned int wdtwspr; /* offset 0x048 */
+ unsigned int resv3[1];
+ unsigned int wdtwqeoi; /* offset 0x050 */
+ unsigned int wdtwqstar; /* offset 0x054 */
+ unsigned int wdtwqsta; /* offset 0x058 */
+ unsigned int wdtwqens; /* offset 0x05C */
+ unsigned int wdtwqenc; /* offset 0x060 */
+ unsigned int resv4[39];
+ unsigned int wdt_unfr; /* offset 0x100 */
+};
+
+#endif /* __OMAP_WDT_H__ */
--
2.1.4
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
2017-02-19 22:24 ` Lukasz Majewski
2017-02-19 22:24 ` [U-Boot] [PATCH 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization Lukasz Majewski
` (4 subsequent siblings)
7 siblings, 2 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
arch/arm/include/asm/arch-omap5/cpu.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/include/asm/arch-omap5/cpu.h b/arch/arm/include/asm/arch-omap5/cpu.h
index d7c46605..26e7417 100644
--- a/arch/arm/include/asm/arch-omap5/cpu.h
+++ b/arch/arm/include/asm/arch-omap5/cpu.h
@@ -46,6 +46,7 @@ struct gptimer {
/* enable sys_clk NO-prescale /1 */
#define GPT_EN ((0x0 << 2) | (0x1 << 1) | (0x1 << 0))
+#define WDT_BASE (OMAP54XX_L4_WKUP_BASE + 0x14000)
/* Watchdog */
#ifndef __KERNEL_STRICT_NAMES
#ifndef __ASSEMBLY__
--
2.1.4
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
` (2 preceding siblings ...)
2017-02-19 22:24 ` [U-Boot] [PATCH 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code Lukasz Majewski
` (3 subsequent siblings)
7 siblings, 2 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
The OMAP WDT IP block requires to be stopped before any write to its
registers is performed.
This problem has been thoroughly described in Linux kernel:
"watchdog: omap: assert the counter being stopped before reprogramming:
SHA1: 530c11d432727c697629ad5f9d00ee8e2864d453
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
drivers/watchdog/omap_wdt.c | 37 ++++++++++++++++++++++---------------
1 file changed, 22 insertions(+), 15 deletions(-)
diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c
index 7ea4b60..7b1f429 100644
--- a/drivers/watchdog/omap_wdt.c
+++ b/drivers/watchdog/omap_wdt.c
@@ -81,10 +81,32 @@ static int omap_wdt_set_timeout(unsigned int timeout)
return 0;
}
+void hw_watchdog_disable(void)
+{
+ struct wd_timer *wdt = (struct wd_timer *)WDT_BASE;
+
+ /*
+ * Disable watchdog
+ */
+ writel(0xAAAA, &wdt->wdtwspr);
+ while (readl(&wdt->wdtwwps) != 0x0)
+ ;
+ writel(0x5555, &wdt->wdtwspr);
+ while (readl(&wdt->wdtwwps) != 0x0)
+ ;
+}
+
void hw_watchdog_init(void)
{
struct wd_timer *wdt = (struct wd_timer *)WDT_BASE;
+ /*
+ * Make sure the watchdog is disabled. This is unfortunately required
+ * because writing to various registers with the watchdog running has no
+ * effect.
+ */
+ hw_watchdog_disable();
+
/* initialize prescaler */
while (readl(&wdt->wdtwwps) & WDT_WWPS_PEND_WCLR)
;
@@ -104,18 +126,3 @@ void hw_watchdog_init(void)
while ((readl(&wdt->wdtwwps)) & WDT_WWPS_PEND_WSPR)
;
}
-
-void hw_watchdog_disable(void)
-{
- struct wd_timer *wdt = (struct wd_timer *)WDT_BASE;
-
- /*
- * Disable watchdog
- */
- writel(0xAAAA, &wdt->wdtwspr);
- while (readl(&wdt->wdtwwps) != 0x0)
- ;
- writel(0x5555, &wdt->wdtwspr);
- while (readl(&wdt->wdtwwps) != 0x0)
- ;
-}
--
2.1.4
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
` (3 preceding siblings ...)
2017-02-19 22:24 ` [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
2017-02-20 6:42 ` Lokesh Vutla
2017-02-19 22:24 ` [U-Boot] [PATCH 5/7] ti: wdt: omap5: Remove not needed struct watchdog definition Lukasz Majewski
` (2 subsequent siblings)
7 siblings, 2 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
This patch removes some legacy code inherited from omap4. It is redundant
to the code already available in ./drivers/watchdog/omap_wdt.c
The code dates back to 2010:
"ARMV7: Add basic support for TI OMAP4"
SHA1: d34efc767d26d353e0257042080eec7012e5440f
In contemporary u-boot omap watchdog:
- Can be enabled in SPL:
TI watchdog is initialized in spl_board_init() (call to hw_watchdog_init)
- Is explicitly disabled before making any changes of its registers
- Is re-enabled in init_func_watchdog_init() in ./common/board_f.c with
other architectures.
This patch removes silent watchdog disable on TI platform, which caused
lack of wdt protection in u-boot even when it was explicitly enabled (in
SPL) with CONFIG_HW_WATCHDOG.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
arch/arm/mach-omap2/hwinit-common.c | 27 ---------------------------
1 file changed, 27 deletions(-)
diff --git a/arch/arm/mach-omap2/hwinit-common.c b/arch/arm/mach-omap2/hwinit-common.c
index f317293..d6549d3 100644
--- a/arch/arm/mach-omap2/hwinit-common.c
+++ b/arch/arm/mach-omap2/hwinit-common.c
@@ -150,7 +150,6 @@ void early_system_init(void)
if (warm_reset())
force_emif_self_refresh();
#endif
- watchdog_init();
set_mux_conf_regs();
#ifdef CONFIG_SPL_BUILD
srcomp_enable();
@@ -181,32 +180,6 @@ int arch_cpu_init_dm(void)
}
/*
- * Routine: wait_for_command_complete
- * Description: Wait for posting to finish on watchdog
- */
-void wait_for_command_complete(struct watchdog *wd_base)
-{
- int pending = 1;
- do {
- pending = readl(&wd_base->wwps);
- } while (pending);
-}
-
-/*
- * Routine: watchdog_init
- * Description: Shut down watch dogs
- */
-void watchdog_init(void)
-{
- struct watchdog *wd2_base = (struct watchdog *)WDT2_BASE;
-
- writel(WD_UNLOCK1, &wd2_base->wspr);
- wait_for_command_complete(wd2_base);
- writel(WD_UNLOCK2, &wd2_base->wspr);
-}
-
-
-/*
* This function finds the SDRAM size available in the system
* based on DMM section configurations
* This is needed because the size of memory installed may be
--
2.1.4
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 5/7] ti: wdt: omap5: Remove not needed struct watchdog definition
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
` (4 preceding siblings ...)
2017-02-19 22:24 ` [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 6/7] ti: wdt: omap: Use CONFIG_HW_WATCHDOG_TIMEOUT_MS to specify watchdog timeout Lukasz Majewski
2017-02-19 22:24 ` [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c Lukasz Majewski
7 siblings, 1 reply; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
After removal of watchdog_init() redundant code from
arch/arm/cpu/armv7/omap-common/hwinit-common.c, this structure is not
needed anymore.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
arch/arm/include/asm/arch-omap5/cpu.h | 14 --------------
1 file changed, 14 deletions(-)
diff --git a/arch/arm/include/asm/arch-omap5/cpu.h b/arch/arm/include/asm/arch-omap5/cpu.h
index 26e7417..de6c4e2 100644
--- a/arch/arm/include/asm/arch-omap5/cpu.h
+++ b/arch/arm/include/asm/arch-omap5/cpu.h
@@ -47,20 +47,6 @@ struct gptimer {
#define GPT_EN ((0x0 << 2) | (0x1 << 1) | (0x1 << 0))
#define WDT_BASE (OMAP54XX_L4_WKUP_BASE + 0x14000)
-/* Watchdog */
-#ifndef __KERNEL_STRICT_NAMES
-#ifndef __ASSEMBLY__
-struct watchdog {
- u8 res1[0x34];
- u32 wwps; /* 0x34 r */
- u8 res2[0x10];
- u32 wspr; /* 0x48 rw */
-};
-#endif /* __ASSEMBLY__ */
-#endif /* __KERNEL_STRICT_NAMES */
-
-#define WD_UNLOCK1 0xAAAA
-#define WD_UNLOCK2 0x5555
#define TCLR_ST (0x1 << 0)
#define TCLR_AR (0x1 << 1)
--
2.1.4
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 6/7] ti: wdt: omap: Use CONFIG_HW_WATCHDOG_TIMEOUT_MS to specify watchdog timeout
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
` (5 preceding siblings ...)
2017-02-19 22:24 ` [U-Boot] [PATCH 5/7] ti: wdt: omap5: Remove not needed struct watchdog definition Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-20 2:23 ` Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c Lukasz Majewski
7 siblings, 1 reply; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
Now it is possible to specify in the config file the time after which
watchdog will trigger.
The flag itself has been reused from designware watchdog code
(./drivers/watchdog/designware_wdt.c).
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
drivers/watchdog/omap_wdt.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c
index 7b1f429..5a2126b 100644
--- a/drivers/watchdog/omap_wdt.c
+++ b/drivers/watchdog/omap_wdt.c
@@ -45,7 +45,9 @@
#include <asm/arch/cpu.h>
/* Hardware timeout in seconds */
-#define WDT_HW_TIMEOUT 60
+#ifndef CONFIG_HW_WATCHDOG_TIMEOUT_MS
+#define CONFIG_HW_WATCHDOG_TIMEOUT_MS 60000
+#endif
static unsigned int wdt_trgr_pattern = 0x1234;
@@ -68,7 +70,7 @@ void hw_watchdog_reset(void)
static int omap_wdt_set_timeout(unsigned int timeout)
{
struct wd_timer *wdt = (struct wd_timer *)WDT_BASE;
- u32 pre_margin = GET_WLDR_VAL(timeout);
+ u32 pre_margin = GET_WLDR_VAL(timeout / 1000);
/* just count up at 32 KHz */
while (readl(&wdt->wdtwwps) & WDT_WWPS_PEND_WLDR)
@@ -115,7 +117,7 @@ void hw_watchdog_init(void)
while (readl(&wdt->wdtwwps) & WDT_WWPS_PEND_WCLR)
;
- omap_wdt_set_timeout(WDT_HW_TIMEOUT);
+ omap_wdt_set_timeout(CONFIG_HW_WATCHDOG_TIMEOUT_MS);
/* Sequence to enable the watchdog */
writel(0xBBBB, &wdt->wdtwspr);
--
2.1.4
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
` (6 preceding siblings ...)
2017-02-19 22:24 ` [U-Boot] [PATCH 6/7] ti: wdt: omap: Use CONFIG_HW_WATCHDOG_TIMEOUT_MS to specify watchdog timeout Lukasz Majewski
@ 2017-02-19 22:24 ` Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
7 siblings, 1 reply; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-19 22:24 UTC (permalink / raw)
To: u-boot
The init_func_watchdog_init called in u-boot's board_f.c's init_sequence
is responsible for enabling WDT in u-boot and notify user about it.
Several other architectures have adopted it for this purpose.
This code does the same with OMAP watchdog.
Signed-off-by: Lukasz Majewski <lukma@denx.de>
---
common/board_f.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/common/board_f.c b/common/board_f.c
index ae6cd85..5dd56a4 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -120,7 +120,7 @@ static int init_func_watchdog_init(void)
defined(CONFIG_M68K) || defined(CONFIG_MICROBLAZE) || \
defined(CONFIG_SH) || defined(CONFIG_AT91SAM9_WATCHDOG) || \
defined(CONFIG_DESIGNWARE_WATCHDOG) || \
- defined(CONFIG_IMX_WATCHDOG))
+ defined(CONFIG_IMX_WATCHDOG) || defined(CONFIG_OMAP_WATCHDOG))
hw_watchdog_init();
puts(" Watchdog enabled\n");
# endif
--
2.1.4
^ permalink raw reply related [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 6/7] ti: wdt: omap: Use CONFIG_HW_WATCHDOG_TIMEOUT_MS to specify watchdog timeout
2017-02-19 22:24 ` [U-Boot] [PATCH 6/7] ti: wdt: omap: Use CONFIG_HW_WATCHDOG_TIMEOUT_MS to specify watchdog timeout Lukasz Majewski
@ 2017-02-20 2:23 ` Tom Rini
0 siblings, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-02-20 2:23 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:41PM +0100, Lukasz Majewski wrote:
> Now it is possible to specify in the config file the time after which
> watchdog will trigger.
>
> The flag itself has been reused from designware watchdog code
> (./drivers/watchdog/designware_wdt.c).
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> ---
> drivers/watchdog/omap_wdt.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c
> index 7b1f429..5a2126b 100644
> --- a/drivers/watchdog/omap_wdt.c
> +++ b/drivers/watchdog/omap_wdt.c
> @@ -45,7 +45,9 @@
> #include <asm/arch/cpu.h>
>
> /* Hardware timeout in seconds */
> -#define WDT_HW_TIMEOUT 60
> +#ifndef CONFIG_HW_WATCHDOG_TIMEOUT_MS
> +#define CONFIG_HW_WATCHDOG_TIMEOUT_MS 60000
> +#endif
Please migrate CONFIG_HW_WATCHDOG_TIMEOUT_MS to Kconfig, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170219/9c0f61dc/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c
2017-02-19 22:24 ` [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c Lukasz Majewski
@ 2017-02-20 2:24 ` Tom Rini
2017-02-20 7:35 ` Lukasz Majewski
0 siblings, 1 reply; 24+ messages in thread
From: Tom Rini @ 2017-02-20 2:24 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:42PM +0100, Lukasz Majewski wrote:
> The init_func_watchdog_init called in u-boot's board_f.c's init_sequence
> is responsible for enabling WDT in u-boot and notify user about it.
>
> Several other architectures have adopted it for this purpose.
> This code does the same with OMAP watchdog.
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> ---
> common/board_f.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/common/board_f.c b/common/board_f.c
> index ae6cd85..5dd56a4 100644
> --- a/common/board_f.c
> +++ b/common/board_f.c
> @@ -120,7 +120,7 @@ static int init_func_watchdog_init(void)
> defined(CONFIG_M68K) || defined(CONFIG_MICROBLAZE) || \
> defined(CONFIG_SH) || defined(CONFIG_AT91SAM9_WATCHDOG) || \
> defined(CONFIG_DESIGNWARE_WATCHDOG) || \
> - defined(CONFIG_IMX_WATCHDOG))
> + defined(CONFIG_IMX_WATCHDOG) || defined(CONFIG_OMAP_WATCHDOG))
Please introduce a new symbol here with a reasonable name and select it
on the various platforms, then make OMAP also select it. Thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170219/710d27ad/attachment-0001.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform
2017-02-19 22:24 ` [U-Boot] [PATCH 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform Lukasz Majewski
@ 2017-02-20 2:24 ` Tom Rini
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
1 sibling, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-02-20 2:24 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:36PM +0100, Lukasz Majewski wrote:
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170219/eff45fef/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC
2017-02-19 22:24 ` [U-Boot] [PATCH 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC Lukasz Majewski
@ 2017-02-20 2:24 ` Tom Rini
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
1 sibling, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-02-20 2:24 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:37PM +0100, Lukasz Majewski wrote:
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170219/bd5a44ae/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization
2017-02-19 22:24 ` [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization Lukasz Majewski
@ 2017-02-20 2:25 ` Tom Rini
2017-04-07 20:29 ` Lukasz Majewski
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
1 sibling, 1 reply; 24+ messages in thread
From: Tom Rini @ 2017-02-20 2:25 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:38PM +0100, Lukasz Majewski wrote:
> The OMAP WDT IP block requires to be stopped before any write to its
> registers is performed.
>
> This problem has been thoroughly described in Linux kernel:
>
> "watchdog: omap: assert the counter being stopped before reprogramming:
> SHA1: 530c11d432727c697629ad5f9d00ee8e2864d453
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170219/aa524682/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code
2017-02-19 22:24 ` [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code Lukasz Majewski
@ 2017-02-20 2:25 ` Tom Rini
2017-02-20 6:42 ` Lokesh Vutla
1 sibling, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-02-20 2:25 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:39PM +0100, Lukasz Majewski wrote:
> This patch removes some legacy code inherited from omap4. It is redundant
> to the code already available in ./drivers/watchdog/omap_wdt.c
>
> The code dates back to 2010:
> "ARMV7: Add basic support for TI OMAP4"
> SHA1: d34efc767d26d353e0257042080eec7012e5440f
>
> In contemporary u-boot omap watchdog:
> - Can be enabled in SPL:
> TI watchdog is initialized in spl_board_init() (call to hw_watchdog_init)
>
> - Is explicitly disabled before making any changes of its registers
>
> - Is re-enabled in init_func_watchdog_init() in ./common/board_f.c with
> other architectures.
>
> This patch removes silent watchdog disable on TI platform, which caused
> lack of wdt protection in u-boot even when it was explicitly enabled (in
> SPL) with CONFIG_HW_WATCHDOG.
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170219/f1a280c1/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 5/7] ti: wdt: omap5: Remove not needed struct watchdog definition
2017-02-19 22:24 ` [U-Boot] [PATCH 5/7] ti: wdt: omap5: Remove not needed struct watchdog definition Lukasz Majewski
@ 2017-02-20 2:25 ` Tom Rini
0 siblings, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-02-20 2:25 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:40PM +0100, Lukasz Majewski wrote:
> After removal of watchdog_init() redundant code from
> arch/arm/cpu/armv7/omap-common/hwinit-common.c, this structure is not
> needed anymore.
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170219/1dcaee16/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code
2017-02-19 22:24 ` [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
@ 2017-02-20 6:42 ` Lokesh Vutla
2017-02-20 7:32 ` Lukasz Majewski
1 sibling, 1 reply; 24+ messages in thread
From: Lokesh Vutla @ 2017-02-20 6:42 UTC (permalink / raw)
To: u-boot
On Monday 20 February 2017 03:54 AM, Lukasz Majewski wrote:
> This patch removes some legacy code inherited from omap4. It is redundant
> to the code already available in ./drivers/watchdog/omap_wdt.c
>
> The code dates back to 2010:
> "ARMV7: Add basic support for TI OMAP4"
> SHA1: d34efc767d26d353e0257042080eec7012e5440f
>
> In contemporary u-boot omap watchdog:
> - Can be enabled in SPL:
> TI watchdog is initialized in spl_board_init() (call to hw_watchdog_init)
>
> - Is explicitly disabled before making any changes of its registers
>
> - Is re-enabled in init_func_watchdog_init() in ./common/board_f.c with
> other architectures.
>
> This patch removes silent watchdog disable on TI platform, which caused
> lack of wdt protection in u-boot even when it was explicitly enabled (in
> SPL) with CONFIG_HW_WATCHDOG.
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
Can you remove similar code from arch/arm/mach-omap2/am33xx/board.c also?
Thanks and regards,
Lokesh
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code
2017-02-20 6:42 ` Lokesh Vutla
@ 2017-02-20 7:32 ` Lukasz Majewski
0 siblings, 0 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-20 7:32 UTC (permalink / raw)
To: u-boot
On Mon, 20 Feb 2017 12:12:05 +0530
Lokesh Vutla <lokeshvutla@ti.com> wrote:
>
>
> On Monday 20 February 2017 03:54 AM, Lukasz Majewski wrote:
> > This patch removes some legacy code inherited from omap4. It is
> > redundant to the code already available
> > in ./drivers/watchdog/omap_wdt.c
> >
> > The code dates back to 2010:
> > "ARMV7: Add basic support for TI OMAP4"
> > SHA1: d34efc767d26d353e0257042080eec7012e5440f
> >
> > In contemporary u-boot omap watchdog:
> > - Can be enabled in SPL:
> > TI watchdog is initialized in spl_board_init() (call to
> > hw_watchdog_init)
> >
> > - Is explicitly disabled before making any changes of its registers
> >
> > - Is re-enabled in init_func_watchdog_init() in ./common/board_f.c
> > with other architectures.
> >
> > This patch removes silent watchdog disable on TI platform, which
> > caused lack of wdt protection in u-boot even when it was explicitly
> > enabled (in SPL) with CONFIG_HW_WATCHDOG.
> >
> > Signed-off-by: Lukasz Majewski <lukma@denx.de>
>
> Can you remove similar code from arch/arm/mach-omap2/am33xx/board.c
> also?
Ok, I will do it (and test on BBB).
Please test/review other patches :-)
>
> Thanks and regards,
> Lokesh
>
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c
2017-02-20 2:24 ` Tom Rini
@ 2017-02-20 7:35 ` Lukasz Majewski
2017-02-20 12:11 ` Tom Rini
0 siblings, 1 reply; 24+ messages in thread
From: Lukasz Majewski @ 2017-02-20 7:35 UTC (permalink / raw)
To: u-boot
Hi Tom,
> On Sun, Feb 19, 2017 at 11:24:42PM +0100, Lukasz Majewski wrote:
> > The init_func_watchdog_init called in u-boot's board_f.c's
> > init_sequence is responsible for enabling WDT in u-boot and notify
> > user about it.
> >
> > Several other architectures have adopted it for this purpose.
> > This code does the same with OMAP watchdog.
> >
> > Signed-off-by: Lukasz Majewski <lukma@denx.de>
> > ---
> > common/board_f.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/common/board_f.c b/common/board_f.c
> > index ae6cd85..5dd56a4 100644
> > --- a/common/board_f.c
> > +++ b/common/board_f.c
> > @@ -120,7 +120,7 @@ static int init_func_watchdog_init(void)
> > defined(CONFIG_M68K) || defined(CONFIG_MICROBLAZE) || \
> > defined(CONFIG_SH) || defined(CONFIG_AT91SAM9_WATCHDOG) ||
> > \ defined(CONFIG_DESIGNWARE_WATCHDOG) || \
> > - defined(CONFIG_IMX_WATCHDOG))
> > + defined(CONFIG_IMX_WATCHDOG) ||
> > defined(CONFIG_OMAP_WATCHDOG))
>
> Please introduce a new symbol here with a reasonable name and select
> it on the various platforms, then make OMAP also select it. Thanks!
Something similar to CONFIG_SPL_HW_WATCHDOG bu for u-boot?
That would be something like CONFIG_HW_WATCHDOG_INIT ...
>
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170220/223e3747/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c
2017-02-20 7:35 ` Lukasz Majewski
@ 2017-02-20 12:11 ` Tom Rini
0 siblings, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-02-20 12:11 UTC (permalink / raw)
To: u-boot
On Mon, Feb 20, 2017 at 08:35:05AM +0100, Lukasz Majewski wrote:
> Hi Tom,
>
> > On Sun, Feb 19, 2017 at 11:24:42PM +0100, Lukasz Majewski wrote:
> > > The init_func_watchdog_init called in u-boot's board_f.c's
> > > init_sequence is responsible for enabling WDT in u-boot and notify
> > > user about it.
> > >
> > > Several other architectures have adopted it for this purpose.
> > > This code does the same with OMAP watchdog.
> > >
> > > Signed-off-by: Lukasz Majewski <lukma@denx.de>
> > > ---
> > > common/board_f.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/common/board_f.c b/common/board_f.c
> > > index ae6cd85..5dd56a4 100644
> > > --- a/common/board_f.c
> > > +++ b/common/board_f.c
> > > @@ -120,7 +120,7 @@ static int init_func_watchdog_init(void)
> > > defined(CONFIG_M68K) || defined(CONFIG_MICROBLAZE) || \
> > > defined(CONFIG_SH) || defined(CONFIG_AT91SAM9_WATCHDOG) ||
> > > \ defined(CONFIG_DESIGNWARE_WATCHDOG) || \
> > > - defined(CONFIG_IMX_WATCHDOG))
> > > + defined(CONFIG_IMX_WATCHDOG) ||
> > > defined(CONFIG_OMAP_WATCHDOG))
> >
> > Please introduce a new symbol here with a reasonable name and select
> > it on the various platforms, then make OMAP also select it. Thanks!
>
> Something similar to CONFIG_SPL_HW_WATCHDOG bu for u-boot?
>
> That would be something like CONFIG_HW_WATCHDOG_INIT ...
CONFIG_HW_WATCHDOG_INIT sounds good, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170220/612c7adc/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization
2017-02-20 2:25 ` Tom Rini
@ 2017-04-07 20:29 ` Lukasz Majewski
0 siblings, 0 replies; 24+ messages in thread
From: Lukasz Majewski @ 2017-04-07 20:29 UTC (permalink / raw)
To: u-boot
Hi Tom,
> On Sun, Feb 19, 2017 at 11:24:38PM +0100, Lukasz Majewski wrote:
>
> > The OMAP WDT IP block requires to be stopped before any write to its
> > registers is performed.
> >
> > This problem has been thoroughly described in Linux kernel:
> >
> > "watchdog: omap: assert the counter being stopped before
> > reprogramming: SHA1: 530c11d432727c697629ad5f9d00ee8e2864d453
> >
> > Signed-off-by: Lukasz Majewski <lukma@denx.de>
>
> Reviewed-by: Tom Rini <trini@konsulko.com>
>
Could this patch be applied alone? Preparing reset of this patch set is
a bit more tricky (since includes verbose testing).
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170407/3c510264/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [U-Boot, 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform
2017-02-19 22:24 ` [U-Boot] [PATCH 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
@ 2017-04-10 18:24 ` Tom Rini
1 sibling, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-04-10 18:24 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:36PM +0100, Lukasz Majewski wrote:
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> Reviewed-by: Tom Rini <trini@konsulko.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170410/170f9e03/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [U-Boot, 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC
2017-02-19 22:24 ` [U-Boot] [PATCH 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
@ 2017-04-10 18:24 ` Tom Rini
1 sibling, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-04-10 18:24 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:37PM +0100, Lukasz Majewski wrote:
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> Reviewed-by: Tom Rini <trini@konsulko.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170410/a969a168/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
* [U-Boot] [U-Boot, 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization
2017-02-19 22:24 ` [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
@ 2017-04-10 18:24 ` Tom Rini
1 sibling, 0 replies; 24+ messages in thread
From: Tom Rini @ 2017-04-10 18:24 UTC (permalink / raw)
To: u-boot
On Sun, Feb 19, 2017 at 11:24:38PM +0100, Lukasz Majewski wrote:
> The OMAP WDT IP block requires to be stopped before any write to its
> registers is performed.
>
> This problem has been thoroughly described in Linux kernel:
>
> "watchdog: omap: assert the counter being stopped before reprogramming:
> SHA1: 530c11d432727c697629ad5f9d00ee8e2864d453
>
> Signed-off-by: Lukasz Majewski <lukma@denx.de>
> Reviewed-by: Tom Rini <trini@konsulko.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170410/cc718b9e/attachment.sig>
^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2017-04-10 18:24 UTC | newest]
Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-19 22:24 [U-Boot] [PATCH 0/7] ti: wdt: Fixes for am57xx/dra7 Watchdog Lukasz Majewski
2017-02-19 22:24 ` Lukasz Majewski
2017-02-19 22:24 ` [U-Boot] [PATCH 1/7] ti: wdt: common: Make the wdt IP defines common for the TI platform Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 2/7] ti: wdt: omap5: Define WDT_BASE for omap5+ SoC Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 3/7] ti: wdt: omap: Disable watchdog timer before performing initialization Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
2017-04-07 20:29 ` Lukasz Majewski
2017-04-10 18:24 ` [U-Boot] [U-Boot, " Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 4/7] ti: wdt: hwinit-common: Remove legacy watchdog disable code Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
2017-02-20 6:42 ` Lokesh Vutla
2017-02-20 7:32 ` Lukasz Majewski
2017-02-19 22:24 ` [U-Boot] [PATCH 5/7] ti: wdt: omap5: Remove not needed struct watchdog definition Lukasz Majewski
2017-02-20 2:25 ` Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 6/7] ti: wdt: omap: Use CONFIG_HW_WATCHDOG_TIMEOUT_MS to specify watchdog timeout Lukasz Majewski
2017-02-20 2:23 ` Tom Rini
2017-02-19 22:24 ` [U-Boot] [PATCH 7/7] ti: wdt: Enable OMAP watchdog in u-boot's board_f.c Lukasz Majewski
2017-02-20 2:24 ` Tom Rini
2017-02-20 7:35 ` Lukasz Majewski
2017-02-20 12:11 ` Tom Rini
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.