summaryrefslogtreecommitdiffstats
path: root/src/mainboard/google/volteer/variants/baseboard
diff options
context:
space:
mode:
authorNick Vaccaro <nvaccaro@google.com>2021-02-16 19:06:16 -0800
committerNick Vaccaro <nvaccaro@google.com>2021-03-05 04:28:36 +0000
commit2f78ce0995a6dd0630802a918438c4d3b1c328fc (patch)
treed4fce211c6f5e4f34daf0bbe7c5de58468d74fc5 /src/mainboard/google/volteer/variants/baseboard
parent29144554fb1e258f5a6bce86c5c2d75620039dd2 (diff)
downloadcoreboot-2f78ce0995a6dd0630802a918438c4d3b1c328fc.tar.gz
coreboot-2f78ce0995a6dd0630802a918438c4d3b1c328fc.tar.bz2
coreboot-2f78ce0995a6dd0630802a918438c4d3b1c328fc.zip
mb/google/volteer: Fix FPMCU pwr/rst gpio handling
1. No gpio control in bootblock 2. Power on and then deassert reset at the end of ramstage gpio 3. Disable power and assert reset when entering S5 On "reboot", the amount of time the power is disabled for is equivalent to the amount of time between triggering #3 and wrapping around to #2. This change affects the following volteer variants that include an FPMCU: 1. Drobit 2. Eldrid 3. Elemi 4. Halvor 5. Malefor 6. Terrador 7. Trondo 8. Voema 9. Volteer2 10. Voxel BUG=b:178094376 TEST=none Change-Id: Ib51815349cea299907c10d6c56c27bd239e499e7 Signed-off-by: Nick Vaccaro <nvaccaro@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/50828 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Diffstat (limited to 'src/mainboard/google/volteer/variants/baseboard')
-rw-r--r--src/mainboard/google/volteer/variants/baseboard/gpio.c7
-rw-r--r--src/mainboard/google/volteer/variants/baseboard/include/baseboard/variants.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/mainboard/google/volteer/variants/baseboard/gpio.c b/src/mainboard/google/volteer/variants/baseboard/gpio.c
index 5ae3a02a4317..f1df09eb99c1 100644
--- a/src/mainboard/google/volteer/variants/baseboard/gpio.c
+++ b/src/mainboard/google/volteer/variants/baseboard/gpio.c
@@ -451,6 +451,13 @@ const struct pad_config *__weak variant_early_gpio_table(size_t *num)
return early_gpio_table;
}
+const struct pad_config *__weak variant_sleep_gpio_table(u8 slp_typ,
+ size_t *num)
+{
+ *num = 0;
+ return NULL;
+}
+
static const struct cros_gpio cros_gpios[] = {
CROS_GPIO_REC_AL(CROS_GPIO_VIRTUAL, CROS_GPIO_DEVICE_NAME),
CROS_GPIO_WP_AH(GPIO_PCH_WP, CROS_GPIO_DEVICE_NAME),
diff --git a/src/mainboard/google/volteer/variants/baseboard/include/baseboard/variants.h b/src/mainboard/google/volteer/variants/baseboard/include/baseboard/variants.h
index 3d12c8556127..685440c0d26c 100644
--- a/src/mainboard/google/volteer/variants/baseboard/include/baseboard/variants.h
+++ b/src/mainboard/google/volteer/variants/baseboard/include/baseboard/variants.h
@@ -14,6 +14,7 @@
*/
const struct pad_config *variant_base_gpio_table(size_t *num);
const struct pad_config *variant_early_gpio_table(size_t *num);
+const struct pad_config *variant_sleep_gpio_table(u8 slp_typ, size_t *num);
const struct pad_config *variant_override_gpio_table(size_t *num);
const struct cros_gpio *variant_cros_gpios(size_t *num);