summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVaradarajan Narayanan <varada@codeaurora.org>2016-04-20 11:32:19 +0530
committerPatrick Georgi <pgeorgi@google.com>2016-05-10 23:22:28 +0200
commitf136524d002ce4b0ad46836d53c6ca880ef92118 (patch)
tree0f982e7480e191459412facb4255508bf04650b0
parentb4cf3065147c7016fd9618dac2f6deeda2b848b9 (diff)
downloadcoreboot-f136524d002ce4b0ad46836d53c6ca880ef92118.tar.xz
google/gale: Turn on monotonic timer support
Without monotonic timer support, timer related APIs like timer_monotonic_get etc. are optimized out by the compiler. This results in timed loops to become indefinite loops stopwatch_init_msecs_expire(...); do { something(); } while (!stopwatch_expired(...)); In our specific case, loops sampling the recovery/wipeout button in src/mainboard/google/gale/chromeos.c:get_switch_state() turned into infinite loops and the boot didn't proceed. BUG=chrome-os-partner:49249 TEST=Confirmed that the loop breaks per the specified timeout using the minicom's console log time stamps [2016-04-11 12:34:37] recovery button pressed [2016-04-11 12:34:45] wipeout requested, checking recovery [2016-04-11 12:34:53] recovery requested BRANCH=none Change-Id: I7ed2616c50ebb28b43ad769d3105f7d4e31b1114 Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Original-Commit-Id: e00f888570b577849cb526220ffe6f22fe9d2ece Original-Change-Id: Ic0b800558ebce482da6321c30dbf732080b82941 Original-Signed-off-by: Varadarajan Narayanan <varada@codeaurora.org> Original-Reviewed-on: https://chromium-review.googlesource.com/339873 Original-Commit-Ready: David Hendricks <dhendrix@chromium.org> Original-Tested-by: Kan Yan <kyan@google.com> Original-Reviewed-by: David Hendricks <dhendrix@chromium.org> Original-Reviewed-by: Kan Yan <kyan@google.com> Reviewed-on: https://review.coreboot.org/14673 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Reviewed-by: Martin Roth <martinroth@google.com>
-rw-r--r--src/soc/qualcomm/ipq40xx/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/soc/qualcomm/ipq40xx/Kconfig b/src/soc/qualcomm/ipq40xx/Kconfig
index 9817c1f17c..48497be5ac 100644
--- a/src/soc/qualcomm/ipq40xx/Kconfig
+++ b/src/soc/qualcomm/ipq40xx/Kconfig
@@ -9,6 +9,7 @@ config SOC_QC_IPQ40XX
select HAVE_UART_SPECIAL
select SPI_ATOMIC_SEQUENCING
select GENERIC_GPIO_LIB
+ select HAVE_MONOTONIC_TIMER
if SOC_QC_IPQ40XX