summaryrefslogtreecommitdiff
path: root/board/google/gru/gru.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/google/gru/gru.c')
-rw-r--r--board/google/gru/gru.c24
1 files changed, 20 insertions, 4 deletions
diff --git a/board/google/gru/gru.c b/board/google/gru/gru.c
index b116b1a549..b6b4f19d84 100644
--- a/board/google/gru/gru.c
+++ b/board/google/gru/gru.c
@@ -5,12 +5,28 @@
#include <common.h>
-int board_init(void)
+#ifdef CONFIG_SPL_BUILD
+/* provided to defeat compiler optimisation in board_init_f() */
+void gru_dummy_function(int i)
{
- return 0;
}
-/* provided to defeat compiler optimisation in board_init_f() */
-void gru_dummy_function(int i)
+int board_early_init_f(void)
{
+# ifdef CONFIG_TARGET_CHROMEBOOK_BOB
+ int sum, i;
+
+ /*
+ * Add a delay and ensure that the compiler does not optimise this out.
+ * This is needed since the power rails tail a while to turn on, and
+ * we get garbage serial output otherwise.
+ */
+ sum = 0;
+ for (i = 0; i < 150000; i++)
+ sum += i;
+ gru_dummy_function(sum);
+#endif /* CONFIG_TARGET_CHROMEBOOK_BOB */
+
+ return 0;
}
+#endif