summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRandall Spangler <rspangler@chromium.org>2012-06-19 09:46:22 -0700
committerGerrit <chrome-bot@google.com>2012-06-19 10:48:21 -0700
commitebf79b00a9f77c7d4bb8b0acb633380937593f91 (patch)
tree5461733445cfaabbc5e206c67ea8165ae542af1d
parent661742dea9e788e1d14ededfc3d6f43083cfd010 (diff)
downloadchrome-ec-release-R21-2465.B.tar.gz
Set GPIO_ENTERING_RW before jumping between images.release-R21-2465.B
BUG=chrome-os-partner:10662 TEST=manual 1) Boot system with power+esc+refresh. gpioget ENTERING_RW --> 0 2) reboot, then gpioget ENTERING_RW --> 1 3) Check EC_IN_RW signal on AP, if possible Change-Id: I9de43eecf71654bf337d7a0e8b21f0cbcf386cc7 Signed-off-by: Randall Spangler <rspangler@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/25624 Reviewed-by: Bill Richardson <wfrichar@chromium.org>
-rw-r--r--common/system_common.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/common/system_common.c b/common/system_common.c
index d5da126943..1ffef0175a 100644
--- a/common/system_common.c
+++ b/common/system_common.c
@@ -261,6 +261,15 @@ static void jump_to_image(uint32_t init_addr,
{
void (*resetvec)(void) = (void(*)(void))init_addr;
+#ifdef BOARD_link
+ /*
+ * Jumping to any image asserts the signal to the Silego chip that that
+ * EC is not in read-only firmware. (This is not technically true if
+ * jumping from RO -> RO, but that's not a meaningful use case...)
+ */
+ gpio_set_level(GPIO_ENTERING_RW, 1);
+#endif
+
/* Flush UART output unless the UART hasn't been initialized yet */
if (uart_init_done())
uart_flush_output();