summaryrefslogtreecommitdiffstats
path: root/src/mainboard/google/zork/mainboard.c
diff options
context:
space:
mode:
authorMartin Roth <martinroth@chromium.org>2020-10-30 16:41:32 -0600
committerPatrick Georgi <pgeorgi@google.com>2020-11-16 11:03:25 +0000
commit726504a61a83b12a72fca40c88c7fee1c40b54ad (patch)
tree02bb42291254e307eb1f86183e988f3f486585d2 /src/mainboard/google/zork/mainboard.c
parentfc2047b1f74f42fc2e38fbafdf09929ca39bfa62 (diff)
downloadcoreboot-726504a61a83b12a72fca40c88c7fee1c40b54ad.tar.gz
coreboot-726504a61a83b12a72fca40c88c7fee1c40b54ad.tar.bz2
coreboot-726504a61a83b12a72fca40c88c7fee1c40b54ad.zip
mb/google/zork: Init fingerprint GPIOs for boot vs resume
Add a function that initializes GPIOs based on the sleep type that the system is coming back from. This allows initialization of the fingerprint GPIOs which need to be handled differently between wake from S3 and boot from S5. On initial boot, the state of the FP sensor could be either enabled or disabled. Because of this, on boot, we power off the sensor for >200ms, to reset its state, then power it back on. In suspend/resume, the fingerprint sensor should remain powered the entire time. If fingerprint is disabled on the trembyle-based board, set the pins to no-connect. Dalboz doesn't have fingerprint and the GPIOS are configured differently due to the FT5 chip having fewer GPIOS than FP5, so nothing needs to be initialized there. There were also a couple of trivial comment clean ups regarding the FPMCU GPIOS. BUG=b:171837716 TEST=Boot & Check GPIO states. BRANCH=Zork Signed-off-by: Martin Roth <martinroth@chromium.org> Change-Id: I16a2e621145782e0a908bb3e49478586c09a0e0a Reviewed-on: https://review.coreboot.org/c/coreboot/+/47308 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src/mainboard/google/zork/mainboard.c')
-rw-r--r--src/mainboard/google/zork/mainboard.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mainboard/google/zork/mainboard.c b/src/mainboard/google/zork/mainboard.c
index 9503d3762ca7..6d930d0e7aa6 100644
--- a/src/mainboard/google/zork/mainboard.c
+++ b/src/mainboard/google/zork/mainboard.c
@@ -247,12 +247,13 @@ static void mainboard_final(void *chip_info)
gnvs = acpi_get_gnvs();
-
if (gnvs) {
gnvs->tmps = CTL_TDP_SENSOR_ID;
gnvs->tcrt = CRITICAL_TEMPERATURE;
gnvs->tpsv = PASSIVE_TEMPERATURE;
}
+
+ finalize_gpios(acpi_get_sleep_type());
}
struct chip_operations mainboard_ops = {