summaryrefslogtreecommitdiff
path: root/baseboard/grunt
diff options
context:
space:
mode:
authorEdward Hill <ecgh@chromium.org>2018-08-22 17:43:22 -0600
committerMartin Roth <martinroth@chromium.org>2018-09-06 18:41:45 +0000
commit53fbbe8a40f24b7f4b97a2875c70a05372c6faba (patch)
treee3a55d49c343274419994eb947ba5a1d548678ea /baseboard/grunt
parent6ac45d447955d2870af63739ed7b9994038d390f (diff)
downloadchrome-ec-53fbbe8a40f24b7f4b97a2875c70a05372c6faba.tar.gz
grunt: Enable CONFIG_I2C_BUS_MAY_BE_UNPOWERED
Enable CONFIG_I2C_BUS_MAY_BE_UNPOWERED option to avoid attempting to unwedge the I2C bus when sensor power is off in S5 (and G3). This will avoid the unwedge causing a watchdog reset. BUG=b:112553833 BRANCH=none TEST=Verify that board_is_i2c_port_powered() is called. Change-Id: I4e37ab17cba0d947bc8840b507a191541894d36c Signed-off-by: Edward Hill <ecgh@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1186067 Commit-Ready: Jonathan Brandmeyer <jbrandmeyer@chromium.org> Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit fc2140871e7d2d81b89a7e7043bd361f89189e99) Reviewed-on: https://chromium-review.googlesource.com/1211364 Reviewed-by: Martin Roth <martinroth@chromium.org> Commit-Queue: Martin Roth <martinroth@chromium.org> Tested-by: Martin Roth <martinroth@chromium.org>
Diffstat (limited to 'baseboard/grunt')
-rw-r--r--baseboard/grunt/baseboard.c9
-rw-r--r--baseboard/grunt/baseboard.h3
2 files changed, 11 insertions, 1 deletions
diff --git a/baseboard/grunt/baseboard.c b/baseboard/grunt/baseboard.c
index 84ba9f1786..c31dc3a769 100644
--- a/baseboard/grunt/baseboard.c
+++ b/baseboard/grunt/baseboard.c
@@ -187,6 +187,15 @@ static void baseboard_chipset_shutdown(void)
DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, baseboard_chipset_shutdown,
HOOK_PRIO_DEFAULT);
+int board_is_i2c_port_powered(int port)
+{
+ if (port != I2C_PORT_SENSOR)
+ return 1;
+
+ /* Sensor power (lid accel, gyro) is off in S5 (and G3). */
+ return chipset_in_state(CHIPSET_STATE_ANY_OFF) ? 0 : 1;
+}
+
int board_set_active_charge_port(int port)
{
int i;
diff --git a/baseboard/grunt/baseboard.h b/baseboard/grunt/baseboard.h
index fcc5f60371..abf0a22a15 100644
--- a/baseboard/grunt/baseboard.h
+++ b/baseboard/grunt/baseboard.h
@@ -36,14 +36,15 @@
#define CONFIG_HOSTCMD_SKUID
#define CONFIG_CMD_AP_RESET_LOG
#define CONFIG_I2C
+#define CONFIG_I2C_BUS_MAY_BE_UNPOWERED
#define CONFIG_I2C_MASTER
+#define CONFIG_LTO
#define CONFIG_PWM
#define CONFIG_PWM_KBLIGHT
#define CONFIG_TEMP_SENSOR
#define CONFIG_THERMISTOR_NCP15WB
#define CONFIG_VBOOT_HASH
#define CONFIG_VOLUME_BUTTONS
-#define CONFIG_LTO
#define CONFIG_BATTERY_CUT_OFF
#define CONFIG_BATTERY_FUEL_GAUGE