mb/google/trulo/var/uldrenite: Add fw_config probe for Cellular
Use fw_config to probe Cellular. BUG=b:392040004 BRANCH=firmware-trulo-15217.771.B TEST=emerge-nissa coreboot chromeos-bootimage Change-Id: Ib664f543c6012b44a0a604d0943416519d92a057 Signed-off-by: John Su <john_su@compal.corp-partner.google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/86255 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Subrata Banik <subratabanik@google.com> Reviewed-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
This commit is contained in:
parent
fa703f7b94
commit
4a2135d21e
2 changed files with 32 additions and 3 deletions
|
|
@ -1,4 +1,8 @@
|
|||
fw_config
|
||||
field DB_CELLULAR 1 2
|
||||
option CELLULAR_ABSENT 0
|
||||
option CELLULAR_RW350R 1
|
||||
end
|
||||
field TOUCHSCREEN 4 4
|
||||
option TOUCHSCREEN_UNKNOWN 0
|
||||
option TOUCHSCREEN_NONE 1
|
||||
|
|
@ -278,7 +282,9 @@ chip soc/intel/alderlake
|
|||
chip drivers/usb/acpi
|
||||
register "desc" = ""USB2 WWAN""
|
||||
register "type" = "UPC_TYPE_INTERNAL"
|
||||
device ref usb2_port5 on end
|
||||
device ref usb2_port5 on
|
||||
probe DB_CELLULAR CELLULAR_RW350R
|
||||
end
|
||||
end
|
||||
chip drivers/usb/acpi
|
||||
register "desc" = ""USB2 User Facing Camera""
|
||||
|
|
@ -459,7 +465,9 @@ chip soc/intel/alderlake
|
|||
register "srcclk_pin" = "2"
|
||||
register "ext_pm_support" = "ACPI_PCIE_RP_EMIT_ALL"
|
||||
register "skip_on_off_support" = "true"
|
||||
device generic 0 alias rp2_rtd3 on end
|
||||
device generic 0 alias rp2_rtd3 on
|
||||
probe DB_CELLULAR CELLULAR_RW350R
|
||||
end
|
||||
end
|
||||
chip drivers/wwan/fm
|
||||
register "fcpo_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_H23)"
|
||||
|
|
@ -468,8 +476,11 @@ chip soc/intel/alderlake
|
|||
register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E16)"
|
||||
register "add_acpi_dma_property" = "true"
|
||||
use rp2_rtd3 as rtd3dev
|
||||
device generic 0 alias rp2_wwan on end
|
||||
device generic 0 alias rp2_wwan on
|
||||
probe DB_CELLULAR CELLULAR_RW350R
|
||||
end
|
||||
end
|
||||
probe DB_CELLULAR CELLULAR_RW350R
|
||||
end # PCIE2 WWAN card
|
||||
device ref shared_sram on end
|
||||
device ref heci1 on end
|
||||
|
|
|
|||
|
|
@ -37,6 +37,17 @@ static const struct pad_config touchscreen_disable_pads[] = {
|
|||
PAD_NC(GPP_E17, NONE),
|
||||
};
|
||||
|
||||
static const struct pad_config lte_disable_pads[] = {
|
||||
/* A8 : WWAN_RF_DISABLE_ODL */
|
||||
PAD_NC(GPP_A8, NONE),
|
||||
/* F12 : WWAN_RST_L */
|
||||
PAD_NC_LOCK(GPP_F12, NONE, LOCK_CONFIG),
|
||||
/* F13 : PLTRST_WWAN# */
|
||||
PAD_NC(GPP_F13, NONE),
|
||||
/* H23 : WWAN_EN */
|
||||
PAD_NC(GPP_H23, NONE),
|
||||
};
|
||||
|
||||
void fw_config_gpio_padbased_override(struct pad_config *padbased_table)
|
||||
{
|
||||
if (fw_config_probe(FW_CONFIG(TOUCHSCREEN, TOUCHSCREEN_NONE))) {
|
||||
|
|
@ -44,10 +55,17 @@ void fw_config_gpio_padbased_override(struct pad_config *padbased_table)
|
|||
gpio_padbased_override(padbased_table, touchscreen_disable_pads,
|
||||
ARRAY_SIZE(touchscreen_disable_pads));
|
||||
}
|
||||
if (fw_config_probe(FW_CONFIG(DB_CELLULAR, CELLULAR_ABSENT))) {
|
||||
printk(BIOS_INFO, "Disable Cellular GPIO pins.\n");
|
||||
gpio_padbased_override(padbased_table, lte_disable_pads,
|
||||
ARRAY_SIZE(lte_disable_pads));
|
||||
}
|
||||
}
|
||||
|
||||
void variant_init(void)
|
||||
{
|
||||
if (fw_config_probe(FW_CONFIG(DB_CELLULAR, CELLULAR_ABSENT)))
|
||||
return;
|
||||
/*
|
||||
* RW350R power on seuqence:
|
||||
* De-assert WWAN_EN -> 20ms -> de-assert WWAN_RST -> 30ms ->
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue