summaryrefslogtreecommitdiff
path: root/chip/npcx/system.c
diff options
context:
space:
mode:
authorCaveh Jalali <caveh@google.com>2019-09-12 05:37:12 +0000
committerCommit Bot <commit-bot@chromium.org>2019-09-12 09:32:38 +0000
commita0e7e66ebd384455041b99d99cce30dea771ddfa (patch)
tree3ffa6a9272b1d0ea3cb5c2bfbed5a523dabf7d28 /chip/npcx/system.c
parent614bfa8ed0066866f6e8136b186b552f57f67ea9 (diff)
downloadchrome-ec-a0e7e66ebd384455041b99d99cce30dea771ddfa.tar.gz
Revert "npcx: ensure we don't unlock watchdog too soon"
This reverts commit 031c5d2d62dd891622ded885756c03021e934ef2. Reason for revert: introduced compilation errors: chip/npcx/spiflashfw/npcx_monitor.c: In function 'sspi_flash_upload': chip/npcx/spiflashfw/npcx_monitor.c:290:2: error: implicit declaration of function 'watchdog_stop_and_unlock' [-Werror=implicit-function-declaration] watchdog_stop_and_unlock(); ^~~~~~~~~~~~~~~~~~~~~~~~ Original change's description: > npcx: ensure we don't unlock watchdog too soon > > We cannot unlock the watchdog timer with 3 watch dog ticks of touching > it per the datasheet. This is actually around 100ms so we should protect > against this. > > BRANCH=none > BUG=b:140207603 > TEST=eliminates cold reset issue. > > Change-Id: Iaef59dad9f5640d64d5d430aea87bd16c2efd30d > Signed-off-by: Jett Rink <jettrink@chromium.org> > Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1790302 > Reviewed-by: Scott Collyer <scollyer@chromium.org> > Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> > Reviewed-by: ML Chao <mlchao@nuvoton.corp-partner.google.com> > Reviewed-by: Furquan Shaikh <furquan@chromium.org> > Tested-by: Furquan Shaikh <furquan@chromium.org> > Commit-Queue: Furquan Shaikh <furquan@chromium.org> Bug: b:140207603 Change-Id: I540fa53c2c568cb789400d55b807a672b182302a Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1799293 Reviewed-by: Caveh Jalali <caveh@google.com> Commit-Queue: Caveh Jalali <caveh@google.com> Tested-by: Caveh Jalali <caveh@google.com>
Diffstat (limited to 'chip/npcx/system.c')
-rw-r--r--chip/npcx/system.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/chip/npcx/system.c b/chip/npcx/system.c
index e7895dc3dc..ff18334533 100644
--- a/chip/npcx/system.c
+++ b/chip/npcx/system.c
@@ -44,7 +44,9 @@
void system_watchdog_reset(void)
{
/* Unlock & stop watchdog registers */
- watchdog_stop_and_unlock();
+ NPCX_WDSDM = 0x87;
+ NPCX_WDSDM = 0x61;
+ NPCX_WDSDM = 0x63;
/* Reset TWCFG */
NPCX_TWCFG = 0;
@@ -498,7 +500,9 @@ void __enter_hibernate(uint32_t seconds, uint32_t microseconds)
CLEAR_BIT(NPCX_ITCTS(ITIM_WDG_NO), NPCX_ITCTS_ITEN);
/* Unlock & stop watchdog */
- watchdog_stop_and_unlock();
+ NPCX_WDSDM = 0x87;
+ NPCX_WDSDM = 0x61;
+ NPCX_WDSDM = 0x63;
/* Initialize watchdog */
NPCX_TWCFG = 0; /* Select T0IN clock as watchdog prescaler clock */