summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2016-07-06 22:53:51 -0500
committerAaron Durbin <adurbin@chromium.org>2016-07-07 20:45:15 +0200
commitebe148d58ee7061c4ee9956e9995bade666a80e4 (patch)
tree3e04c9ea32c747d83d814042901efc60d956ac55
parentfe767a7dc063ce05f546ced7238e5c535960b3ec (diff)
mainboard/google/reef: add board_id() support
The board build version is provided by the EC on reef. Provide the necessary functional support for coreboot to differentiate the board versions. BUG=chrome-os-partner:54959,chrome-os-partner:54960,chrome-os-partner:54961 BRANCH=None TEST=Built and tested on reef. Change-Id: I1b7e8b2f4142753cde736148ca9495bcc625f318 Signed-off-by: Aaron Durbin <adurbin@chromuim.org> Reviewed-on: https://review.coreboot.org/15561 Tested-by: build bot (Jenkins) Reviewed-by: Werner Zeh <werner.zeh@siemens.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Furquan Shaikh <furquan@google.com>
-rw-r--r--src/mainboard/google/reef/Makefile.inc2
-rw-r--r--src/mainboard/google/reef/boardid.c28
2 files changed, 30 insertions, 0 deletions
diff --git a/src/mainboard/google/reef/Makefile.inc b/src/mainboard/google/reef/Makefile.inc
index f8fbbf32aa..6db0f2ff05 100644
--- a/src/mainboard/google/reef/Makefile.inc
+++ b/src/mainboard/google/reef/Makefile.inc
@@ -2,7 +2,9 @@ bootblock-y += bootblock.c
bootblock-y += ec.c
romstage-$(CONFIG_CHROMEOS) += chromeos.c
+romstage-y += boardid.c
+ramstage-y += boardid.c
ramstage-$(CONFIG_CHROMEOS) += chromeos.c
ramstage-y += ec.c
ramstage-y += mainboard.c
diff --git a/src/mainboard/google/reef/boardid.c b/src/mainboard/google/reef/boardid.c
new file mode 100644
index 0000000000..4eb9f4869d
--- /dev/null
+++ b/src/mainboard/google/reef/boardid.c
@@ -0,0 +1,28 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2015 Google Inc.
+ * Copyright (C) 2015 Intel Corporation
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+
+#include <boardid.h>
+#include <ec/google/chromeec/ec.h>
+
+uint8_t board_id(void)
+{
+ MAYBE_STATIC int id = -1;
+
+ if (id < 0)
+ id = google_chromeec_get_board_version();
+
+ return id;
+}