From cb2351ea1f24c89adc6b83d7efc94d00e59dcba8 Mon Sep 17 00:00:00 2001 From: Todd Broch Date: Fri, 6 Jun 2014 17:03:49 -0700 Subject: [PATCH] nyan: Ignore the recovery GPIO. CrOS devices with Chromeos EC need only use hostevent to communicate recovery assertion to the BIOS. This CL removes wired GPIO from determining recovery as it appears under certain conditions (cold reset) the internal PU on the AP isn't strong enough and therefore the value is sometimes seen as asserted. BRANCH=none BUG=chrome-os-partner:29333 TEST=compiles & BIOS no longer responds to rec_mode GPIO during boot. Original-Change-Id: Ib220cfa5f5bfe7193d555bfd32c0444b063d00f2 Original-Signed-off-by: Todd Broch Original-Reviewed-on: https://chromium-review.googlesource.com/202996 Original-Reviewed-by: David Hendricks Original-Reviewed-by: Tom Warren (cherry picked from commit d9927bcd67b0fb069fde231314e654d727092282) Signed-off-by: Marc Jones Change-Id: I6e086cbabc884f18deb2791a0f897e332b31032f Reviewed-on: http://review.coreboot.org/8042 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/mainboard/google/nyan/chromeos.c | 4 ---- src/mainboard/google/nyan_big/chromeos.c | 4 ---- src/mainboard/google/nyan_blaze/chromeos.c | 4 ---- 3 files changed, 12 deletions(-) diff --git a/src/mainboard/google/nyan/chromeos.c b/src/mainboard/google/nyan/chromeos.c index 6377fb2058..c4d98b7e30 100644 --- a/src/mainboard/google/nyan/chromeos.c +++ b/src/mainboard/google/nyan/chromeos.c @@ -84,10 +84,6 @@ int get_recovery_mode_switch(void) { uint32_t ec_events; - /* The GPIO is active low. */ - if (!gpio_get_in_value(GPIO(Q7))) // RECMODE_GPIO - return 1; - ec_events = google_chromeec_get_events_b(); return !!(ec_events & EC_HOST_EVENT_MASK(EC_HOST_EVENT_KEYBOARD_RECOVERY)); diff --git a/src/mainboard/google/nyan_big/chromeos.c b/src/mainboard/google/nyan_big/chromeos.c index 298fd6aea3..054abf6edb 100644 --- a/src/mainboard/google/nyan_big/chromeos.c +++ b/src/mainboard/google/nyan_big/chromeos.c @@ -84,10 +84,6 @@ int get_recovery_mode_switch(void) { uint32_t ec_events; - /* The GPIO is active low. */ - if (!gpio_get_in_value(GPIO(Q7))) // RECMODE_GPIO - return 1; - ec_events = google_chromeec_get_events_b(); return !!(ec_events & EC_HOST_EVENT_MASK(EC_HOST_EVENT_KEYBOARD_RECOVERY)); diff --git a/src/mainboard/google/nyan_blaze/chromeos.c b/src/mainboard/google/nyan_blaze/chromeos.c index 16f0c9878e..da017eaed1 100644 --- a/src/mainboard/google/nyan_blaze/chromeos.c +++ b/src/mainboard/google/nyan_blaze/chromeos.c @@ -88,10 +88,6 @@ int get_recovery_mode_switch(void) { uint32_t ec_events; - /* The GPIO is active low. */ - if (!gpio_get_in_value(GPIO(Q7))) // RECMODE_GPIO - return 1; - ec_events = google_chromeec_get_events_b(); return !!(ec_events & EC_HOST_EVENT_MASK(EC_HOST_EVENT_KEYBOARD_RECOVERY));