From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sinan Akman Date: Thu, 1 Oct 2015 15:39:17 -0400 Subject: [U-Boot] [PATCH] Revert "imx: wdog: correct wcr register settings" In-Reply-To: <1443727970-10347-1-git-send-email-festevam@gmail.com> References: <1443727970-10347-1-git-send-email-festevam@gmail.com> Message-ID: <560D8BE5.30000@writeme.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 01/10/15 03:32 PM, Fabio Estevam wrote: > From: Fabio Estevam > > This reverts commit 623d96e89aca64c2762150087f4e872c55481f13. > > commit 623d96e89aca6("imx: wdog: correct wcr register settings") > introduced the usage of clrsetbits_le16(), which causes a regression > on LS1021 systems. > > Unlike i.MX, LS1021 uses big-endian ordering for the watchdog > controller, which means we cannot use the little endian accessors. > > Reported-by: Sinan Akman > Signed-off-by: Fabio Estevam > --- > drivers/watchdog/imx_watchdog.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/watchdog/imx_watchdog.c b/drivers/watchdog/imx_watchdog.c > index 9a77a54..1d18d4b 100644 > --- a/drivers/watchdog/imx_watchdog.c > +++ b/drivers/watchdog/imx_watchdog.c > @@ -55,8 +55,7 @@ void reset_cpu(ulong addr) > { > struct watchdog_regs *wdog = (struct watchdog_regs *)WDOG1_BASE_ADDR; > > - clrsetbits_le16(&wdog->wcr, 0, WCR_WDE); > - > + writew(WCR_WDE, &wdog->wcr); > writew(0x5555, &wdog->wsr); > writew(0xaaaa, &wdog->wsr); /* load minimum 1/2 second timeout */ > while (1) { Hi Fabio, I just wanted to point out that with this revert we don't only break imx again (whatever the initial bug was for this commit) but also we are having ls1021atwr working accidentally, just because writew(WCR_WDE, &wdog->wcr) clears SRS bit which is the only requirement for reset if watchdog is not running. I don't have any strong opinion on this but i just wanted to make it clear that we are leaving both imx6 and ls1021atwr not properly implemented. Regards Sinan Akman