summaryrefslogtreecommitdiff
path: root/src/mainboard/google/rex/variants/rex0/gpio.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainboard/google/rex/variants/rex0/gpio.c')
-rw-r--r--src/mainboard/google/rex/variants/rex0/gpio.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/mainboard/google/rex/variants/rex0/gpio.c b/src/mainboard/google/rex/variants/rex0/gpio.c
index 96de47f719..541402c372 100644
--- a/src/mainboard/google/rex/variants/rex0/gpio.c
+++ b/src/mainboard/google/rex/variants/rex0/gpio.c
@@ -95,7 +95,7 @@ static const struct pad_config gpio_table_id0[] = {
PAD_CFG_GPI_LOCK(GPP_B23, NONE, LOCK_CONFIG),
/* GPP_C00 : [] ==> EN_PP3300_TCHSCR */
- PAD_CFG_GPO(GPP_C00, 1, DEEP),
+ PAD_CFG_GPO(GPP_C00, 0, DEEP),
/* GPP_C01 : [] ==> USI_RST_L */
PAD_CFG_GPO(GPP_C01, 0, DEEP),
/* GPP_C02 : GPP_C02_STRAP ==> Component NC */
@@ -107,7 +107,20 @@ static const struct pad_config gpio_table_id0[] = {
/* GPP_C05 : [] ==> WWAN_PERST_L_STRAP */
PAD_CFG_GPO(GPP_C05, 1, PLTRST),
/* GPP_C06 : [] ==> USI_REPORT_EN */
- PAD_CFG_GPO(GPP_C06, 0, DEEP),
+ /*
+ * FIXME: Remove this code after resolving b/247029304.
+ *
+ * ELAN6918 Power Sequencing seems not perfectly matching
+ * with the previous platforms and setting GPP_C06 to high prior
+ * to the power sequencing is actually makes it work.
+ *
+ * Ideally Power Sequencing should be as below for ELAN6918 (in ACPI)
+ * `POWER enabled -> RESET deasserted -> Report EN enabled`
+ *
+ * But below sequence is only working currently:
+ * `Report EN enabled (ramstage) -> POWER enabled (ACPI) -> RESET deasserted (ACPI)`
+ */
+ PAD_CFG_GPO(GPP_C06, 1, DEEP),
/* GPP_C07 : [] ==> USI_INT */
PAD_CFG_GPI_APIC(GPP_C07, NONE, PLTRST, LEVEL, NONE),
/* GPP_C08 : [] ==> SOCHOT_ODL */