diff mbox

[U-Boot] mx27: 16-bit wide watchdog registers

Message ID 1458479455-19791-1-git-send-email-leonid.iziumtsev@gmail.com
State Accepted
Commit f7440928e609734f6d24d6769927539762270e1e
Delegated to: Stefano Babic
Headers show

Commit Message

Leonid Iziumtsev March 20, 2016, 1:10 p.m. UTC
From: Leonid Iziumtsev <leonid.iziumtsev@se.atlascopco.com>

Make the watchdog registers 16-bit wide, as they are according to TRM.

Signed-off-by: Leonid Iziumtsev <leonid.iziumtsev@se.atlascopco.com>
---
 arch/arm/cpu/arm926ejs/mx27/reset.c       | 8 ++++----
 arch/arm/include/asm/arch-mx27/imx-regs.h | 6 +++---
 2 files changed, 7 insertions(+), 7 deletions(-)

Comments

Fabio Estevam March 20, 2016, 11:28 p.m. UTC | #1
On Sun, Mar 20, 2016 at 10:10 AM, Leonid Iziumtsev
<leonid.iziumtsev@gmail.com> wrote:
> From: Leonid Iziumtsev <leonid.iziumtsev@se.atlascopco.com>
>
> Make the watchdog registers 16-bit wide, as they are according to TRM.
>
> Signed-off-by: Leonid Iziumtsev <leonid.iziumtsev@se.atlascopco.com>

Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Stefano Babic March 25, 2016, 1:03 p.m. UTC | #2
On 20/03/2016 14:10, Leonid Iziumtsev wrote:
> From: Leonid Iziumtsev <leonid.iziumtsev@se.atlascopco.com>
> 
> Make the watchdog registers 16-bit wide, as they are according to TRM.
> 
> Signed-off-by: Leonid Iziumtsev <leonid.iziumtsev@se.atlascopco.com>
> ---
>  arch/arm/cpu/arm926ejs/mx27/reset.c       | 8 ++++----
>  arch/arm/include/asm/arch-mx27/imx-regs.h | 6 +++---
>  2 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/arch/arm/cpu/arm926ejs/mx27/reset.c b/arch/arm/cpu/arm926ejs/mx27/reset.c
> index f7b4a1c..e764986 100644
> --- a/arch/arm/cpu/arm926ejs/mx27/reset.c
> +++ b/arch/arm/cpu/arm926ejs/mx27/reset.c
> @@ -27,14 +27,14 @@ void reset_cpu(ulong ignored)
>  {
>  	struct wdog_regs *regs = (struct wdog_regs *)IMX_WDT_BASE;
>  	/* Disable watchdog and set Time-Out field to 0 */
> -	writel(0x00000000, &regs->wcr);
> +	writew(0x0000, &regs->wcr);
>  
>  	/* Write Service Sequence */
> -	writel(0x00005555, &regs->wsr);
> -	writel(0x0000AAAA, &regs->wsr);
> +	writew(0x5555, &regs->wsr);
> +	writew(0xAAAA, &regs->wsr);
>  
>  	/* Enable watchdog */
> -	writel(WCR_WDE, &regs->wcr);
> +	writew(WCR_WDE, &regs->wcr);
>  
>  	while (1);
>  	/*NOTREACHED*/
> diff --git a/arch/arm/include/asm/arch-mx27/imx-regs.h b/arch/arm/include/asm/arch-mx27/imx-regs.h
> index baf1d29..40b76d2 100644
> --- a/arch/arm/include/asm/arch-mx27/imx-regs.h
> +++ b/arch/arm/include/asm/arch-mx27/imx-regs.h
> @@ -106,9 +106,9 @@ struct esdramc_regs {
>  
>  /* Watchdog Registers*/
>  struct wdog_regs {
> -	u32 wcr;
> -	u32 wsr;
> -	u32 wstr;
> +	u16 wcr;
> +	u16 wsr;
> +	u16 wstr;
>  };
>  
>  /* PLL registers */
> 

Applied to u-boot-imx, thanks !

Best regards,
Stefano Babic
diff mbox

Patch

diff --git a/arch/arm/cpu/arm926ejs/mx27/reset.c b/arch/arm/cpu/arm926ejs/mx27/reset.c
index f7b4a1c..e764986 100644
--- a/arch/arm/cpu/arm926ejs/mx27/reset.c
+++ b/arch/arm/cpu/arm926ejs/mx27/reset.c
@@ -27,14 +27,14 @@  void reset_cpu(ulong ignored)
 {
 	struct wdog_regs *regs = (struct wdog_regs *)IMX_WDT_BASE;
 	/* Disable watchdog and set Time-Out field to 0 */
-	writel(0x00000000, &regs->wcr);
+	writew(0x0000, &regs->wcr);
 
 	/* Write Service Sequence */
-	writel(0x00005555, &regs->wsr);
-	writel(0x0000AAAA, &regs->wsr);
+	writew(0x5555, &regs->wsr);
+	writew(0xAAAA, &regs->wsr);
 
 	/* Enable watchdog */
-	writel(WCR_WDE, &regs->wcr);
+	writew(WCR_WDE, &regs->wcr);
 
 	while (1);
 	/*NOTREACHED*/
diff --git a/arch/arm/include/asm/arch-mx27/imx-regs.h b/arch/arm/include/asm/arch-mx27/imx-regs.h
index baf1d29..40b76d2 100644
--- a/arch/arm/include/asm/arch-mx27/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx27/imx-regs.h
@@ -106,9 +106,9 @@  struct esdramc_regs {
 
 /* Watchdog Registers*/
 struct wdog_regs {
-	u32 wcr;
-	u32 wsr;
-	u32 wstr;
+	u16 wcr;
+	u16 wsr;
+	u16 wstr;
 };
 
 /* PLL registers */