diff --git a/src/mainboard/google/brya/variants/brya0/fw_config.c b/src/mainboard/google/brya/variants/brya0/fw_config.c index e50c5e41595..cd595ac19a8 100644 --- a/src/mainboard/google/brya/variants/brya0/fw_config.c +++ b/src/mainboard/google/brya/variants/brya0/fw_config.c @@ -123,6 +123,15 @@ static const struct pad_config lte_disable_pads[] = { PAD_NC(GPD11, NONE), }; +static const struct pad_config hps_disable_pads[] = { + /* E3 : PROC_GP0 ==> HPS_INT_ODL */ + PAD_NC(GPP_E3, NONE), + /* E7 : PROC_GP1 ==> EN_HPS_PWR */ + PAD_NC(GPP_E7, NONE), + /* F20 : EXT_PWR_GATE# ==> HPS_RST_R */ + PAD_NC(GPP_F20, NONE), +}; + static void enable_i2s(void) { gpio_configure_pads(dmic_enable_pads, ARRAY_SIZE(dmic_enable_pads)); @@ -183,5 +192,10 @@ static void fw_config_handle(void *unused) printk(BIOS_INFO, "Disable LTE related GPIO pins.\n"); gpio_configure_pads(lte_disable_pads, ARRAY_SIZE(lte_disable_pads)); } + + if (fw_config_probe(FW_CONFIG(HPS, HPS_ABSENT))) { + printk(BIOS_INFO, "Disable HPS related GPIO pins.\n"); + gpio_configure_pads(hps_disable_pads, ARRAY_SIZE(hps_disable_pads)); + } } BOOT_STATE_INIT_ENTRY(BS_DEV_ENABLE, BS_ON_ENTRY, fw_config_handle, NULL); diff --git a/src/mainboard/google/brya/variants/skolas/fw_config.c b/src/mainboard/google/brya/variants/skolas/fw_config.c index e50c5e41595..86246dbb2d9 100644 --- a/src/mainboard/google/brya/variants/skolas/fw_config.c +++ b/src/mainboard/google/brya/variants/skolas/fw_config.c @@ -100,6 +100,15 @@ static const struct pad_config bt_i2s_disable_pads[] = { PAD_NC(GPP_VGPIO_37, NONE), }; +static const struct pad_config hps_disable_pads[] = { + /* E3 : PROC_GP0 ==> HPS_INT_ODL */ + PAD_NC(GPP_E3, NONE), + /* E7 : PROC_GP1 ==> EN_HPS_PWR */ + PAD_NC(GPP_E7, NONE), + /* F20 : EXT_PWR_GATE# ==> HPS_RST_R */ + PAD_NC(GPP_F20, NONE), +}; + static const struct pad_config lte_disable_pads[] = { /* A7 : WWAN_PCIE_WAKE_ODL */ PAD_NC(GPP_A7, NONE), @@ -183,5 +192,10 @@ static void fw_config_handle(void *unused) printk(BIOS_INFO, "Disable LTE related GPIO pins.\n"); gpio_configure_pads(lte_disable_pads, ARRAY_SIZE(lte_disable_pads)); } + + if (fw_config_probe(FW_CONFIG(HPS, HPS_ABSENT))) { + printk(BIOS_INFO, "Disable HPS related GPIO pins.\n"); + gpio_configure_pads(hps_disable_pads, ARRAY_SIZE(hps_disable_pads)); + } } BOOT_STATE_INIT_ENTRY(BS_DEV_ENABLE, BS_ON_ENTRY, fw_config_handle, NULL);