mb/google/rex/var/rex0: Configure EN_WWAN_PWR GPIO based on CBI
GPP_B17 (aka. EN_WWAN_PWR) should be kept low when the device does not have a WWAN module. TEST=Power consumption drops to 0 in S0iX Change-Id: I95150c20c98b037a47827a7b83e4373c6e9070e3 Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/78684 Reviewed-by: Sukumar Ghorai <sukumar.ghorai@intel.com> Reviewed-by: Subrata Banik <subratabanik@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Kapil Porwal <kapilporwal@google.com>
This commit is contained in:
parent
0ec65daf7d
commit
d4bf7211ca
|
@ -126,6 +126,10 @@ static const struct pad_config uwb_gspi1_disable_pads[] = {
|
||||||
PAD_NC(GPP_F20, NONE),
|
PAD_NC(GPP_F20, NONE),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const struct pad_config wwan_disable_pads[] = {
|
||||||
|
PAD_CFG_GPO(GPP_B17, 0, DEEP) /* EN_WWAN_PWR */
|
||||||
|
};
|
||||||
|
|
||||||
void fw_config_gpio_padbased_override(struct pad_config *padbased_table)
|
void fw_config_gpio_padbased_override(struct pad_config *padbased_table)
|
||||||
{
|
{
|
||||||
if (!fw_config_is_provisioned()) {
|
if (!fw_config_is_provisioned()) {
|
||||||
|
@ -180,4 +184,9 @@ void fw_config_gpio_padbased_override(struct pad_config *padbased_table)
|
||||||
printk(BIOS_INFO, "Disabling UWB (absent or misconfigured)\n");
|
printk(BIOS_INFO, "Disabling UWB (absent or misconfigured)\n");
|
||||||
GPIO_PADBASED_OVERRIDE(padbased_table, uwb_gspi1_disable_pads);
|
GPIO_PADBASED_OVERRIDE(padbased_table, uwb_gspi1_disable_pads);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (fw_config_probe(FW_CONFIG(CELLULAR, CELLULAR_ABSENT))) {
|
||||||
|
printk(BIOS_INFO, "Configure GPIOs for no cellular.\n");
|
||||||
|
GPIO_PADBASED_OVERRIDE(padbased_table, wwan_disable_pads);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue