Robert Chen has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/79173?usp=email )
Change subject: mb/google/nissa/var/quandiso: Add non-USB port DB support ......................................................................
mb/google/nissa/var/quandiso: Add non-USB port DB support
Disable un-used usb ports with FW_CONFIG probe and configure the AUX pins as NC based on the FW_CONFIG setting when the C1 port is not present.
BUG=b:312094048 BRANCH=firmware-nissa-15217.B TEST=emerge-nissa coreboot
Change-Id: I6f702f60c772176e80b3452bf957d10625564102 --- M src/mainboard/google/brya/variants/quandiso/fw_config.c M src/mainboard/google/brya/variants/quandiso/overridetree.cb 2 files changed, 27 insertions(+), 3 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/73/79173/1
diff --git a/src/mainboard/google/brya/variants/quandiso/fw_config.c b/src/mainboard/google/brya/variants/quandiso/fw_config.c index c5ac0d2..42f9196 100644 --- a/src/mainboard/google/brya/variants/quandiso/fw_config.c +++ b/src/mainboard/google/brya/variants/quandiso/fw_config.c @@ -73,6 +73,13 @@ PAD_NC(GPD8, NONE), };
+static const struct pad_config disable_usbc1_pins[] = { + /* GPP_A21: USB_C1_AUX_DC_P => NC */ + PAD_NC(GPP_A21, NONE), + /* GPP_A22: USB_C1_AUX_DC_N => NC */ + PAD_NC(GPP_A22, NONE), +}; + void fw_config_gpio_padbased_override(struct pad_config *padbased_table) { if (!fw_config_probe(FW_CONFIG(DB_USB, DB_1C_LTE))) { @@ -85,6 +92,11 @@ gpio_padbased_override(padbased_table, emmc_disable_pads, ARRAY_SIZE(emmc_disable_pads)); } + if (fw_config_probe(FW_CONFIG(DB_USB, DB_NONE))) { + printk(BIOS_INFO, "Disable USBC1 AUX Pins.\n"); + gpio_padbased_override(padbased_table, disable_usbc1_pins, + ARRAY_SIZE(disable_usbc1_pins)); + } if (fw_config_probe(FW_CONFIG(STYLUS, STYLUS_ABSENT))) { printk(BIOS_INFO, "Disable Stylus GPIO pins.\n"); gpio_padbased_override(padbased_table, stylus_disable_pads, diff --git a/src/mainboard/google/brya/variants/quandiso/overridetree.cb b/src/mainboard/google/brya/variants/quandiso/overridetree.cb index 64cd862..29a4cee 100644 --- a/src/mainboard/google/brya/variants/quandiso/overridetree.cb +++ b/src/mainboard/google/brya/variants/quandiso/overridetree.cb @@ -442,7 +442,11 @@ chip drivers/intel/pmc_mux/conn use usb2_port2 as usb2_port use tcss_usb3_port2 as usb3_port - device generic 1 alias conn1 on end + device generic 1 alias conn1 on + probe DB_USB DB_1C_1A + probe DB_USB DB_1C + probe DB_USB DB_1C_LTE + end end end end @@ -462,7 +466,11 @@ register "type" = "UPC_TYPE_C_USB2_SS_SWITCH" register "use_custom_pld" = "true" register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))" - device ref tcss_usb3_port2 on end + device ref tcss_usb3_port2 on + probe DB_USB DB_1C_1A + probe DB_USB DB_1C + probe DB_USB DB_1C_LTE + end end end end @@ -482,7 +490,11 @@ register "type" = "UPC_TYPE_C_USB2_SS_SWITCH" register "use_custom_pld" = "true" register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))" - device ref usb2_port2 on end + device ref usb2_port2 on + probe DB_USB DB_1C_1A + probe DB_USB DB_1C + probe DB_USB DB_1C_LTE + end end chip drivers/usb/acpi register "desc" = ""USB2 Type-A Port A0 (MLB)""