summaryrefslogtreecommitdiff
path: root/chip/g/rbox.c
diff options
context:
space:
mode:
authorMary Ruthven <mruthven@chromium.org>2016-08-22 10:01:33 -0700
committerMary Ruthven <mruthven@chromium.org>2016-08-31 21:35:30 +0000
commit5e6da91fe86301d276b452a660139c27c3786a82 (patch)
tree71fbf398b3f17da7d3dd9a0fe3820f07022b8783 /chip/g/rbox.c
parenteb3f4b43f3efc2727d119f6b3a71a4ac7ac083d4 (diff)
downloadchrome-ec-5e6da91fe86301d276b452a660139c27c3786a82.tar.gz
cr50: remove internal pull up on DIOM0
There is leakage on SYS_RST_ODL from the internal pullup cr50 has on DIOM0. This change removes the internal pullup. Without the internal pull up SYS_RST_ODL is asserted when the EC is off. This change modifies how sys_rst_asserted is handled so cr50 will ignore the sys_rst interrupt whenever rbox asserts EC_RST to make sure cr50 doesn't reset itself every time it resets the EC. If the EC resets itself and sys_rst_l is no longer pulled up, it is fine if cr50 resets. BUG=chrome-os-partner:53544 CQ-DEPEND=CL:377504 BRANCH=none TEST=manual 'rw 0x40550010 1' causes the EC to reset but not cr50 On the development board verify DIOM0 is not pulled up. Test cr50 boots normally on reef, gru and kevin dvt1 Change-Id: Id8e8f6f7bb91741da34bdd6fec89eb841dd94f35 Signed-off-by: Mary Ruthven <mruthven@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/376886 Reviewed-by: Bill Richardson <wfrichar@chromium.org>
Diffstat (limited to 'chip/g/rbox.c')
-rw-r--r--chip/g/rbox.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/chip/g/rbox.c b/chip/g/rbox.c
index 85f83d33ce..2d969ec202 100644
--- a/chip/g/rbox.c
+++ b/chip/g/rbox.c
@@ -7,6 +7,11 @@
#include "hooks.h"
#include "registers.h"
+int rbox_is_asserting_ec_reset(void)
+{
+ return GREAD(RBOX, ASSERT_EC_RST);
+}
+
static void rbox_release_ec_reset(void)
{
/* Let the EC go (the RO bootloader asserts it ASAP after POR) */