summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJett Rink <jettrink@chromium.org>2018-04-17 10:46:31 -0600
committerchrome-bot <chrome-bot@chromium.org>2018-04-19 12:46:14 -0700
commitff9248fbaabef72761728140c2e65d0aa02dc17c (patch)
tree88852a7a496d55dfafedd683d579e9fdffba2d44 /include
parentd9386134c156775a3c0b0c6d4638643a4f190aa3 (diff)
downloadchrome-ec-ff9248fbaabef72761728140c2e65d0aa02dc17c.tar.gz
system: update board version to return an error if encountered
Now that board version can come from CBI, we can have a real error reading it. We should pass that error to the console or to the AP on the host command and let the AP firmware (or user) decided how to handle that error case Also update the CONFIG_BOARD_VERSION to be derived instead of needed in most cases. BRANCH=none BUG=b:77972120 TEST=Error reported on EC console and AP console when CBI is invalid on yorp Change-Id: Ib8d80f610ea226265a61e68b61965150cdc9bb04 Signed-off-by: Jett Rink <jettrink@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1015776 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
Diffstat (limited to 'include')
-rw-r--r--include/config.h30
1 files changed, 27 insertions, 3 deletions
diff --git a/include/config.h b/include/config.h
index fd24547884..c32c68faf3 100644
--- a/include/config.h
+++ b/include/config.h
@@ -412,10 +412,21 @@
*/
#undef CONFIG_BOARD_PRE_INIT
-/* EC has GPIOs attached to board version stuffing resistors */
+/*
+ * EC has the notion of board version either through resistors or EEPROM.
+ * The common CONFIG_BOARD_VERSION is defined automatically when one of the
+ * specific options is used.
+ */
#undef CONFIG_BOARD_VERSION
-/* The decoding of the GPIOs defining board version is defined in board code */
-#undef CONFIG_BOARD_SPECIFIC_VERSION
+/* The board version comes from Cros Board Info within EEPROM. */
+#undef CONFIG_BOARD_VERSION_CBI
+/* The board version function is defined in board code. */
+#undef CONFIG_BOARD_VERSION_CUSTOM
+/*
+ * The board version is encoded with 3 GPIO signals where GPIO_BOARD_VERSION1
+ * is the LSB.
+ */
+#undef CONFIG_BOARD_VERSION_GPIO
/* EC responses to a board defined I2C slave address */
#undef CONFIG_BOARD_I2C_SLAVE_ADDR
@@ -3324,6 +3335,19 @@
#define CONFIG_CRC8
#endif /* defined(CONFIG_EXPERIMENTAL_CONSOLE) */
+
+/******************************************************************************/
+/*
+ * Automatically define common CONFIG_BOARD_VERSION if any specific option is
+ * used.
+ */
+
+#if defined(CONFIG_BOARD_VERSION_CBI) || \
+ defined(CONFIG_BOARD_VERSION_CUSTOM) || \
+ defined(CONFIG_BOARD_VERSION_GPIO)
+#define CONFIG_BOARD_VERSION
+#endif
+
/******************************************************************************/
/*
* Throttle AP must have temperature sensor enabled to get the readings for