soc/intel/tigerlake: Enable TCSS XHCI device and define port aliases

Enable the USB4 XHCI driver and remove the ACPI name entry from the
SOC level function.

Define aliases for the USB2/3 ports on north and south XHCI devices in
chipset.cb so they can be referenced in the mainboard devicetree.

BUG=b:151731851
TEST=define usb ports by reference in volteer devicetree and ensure
they get properties added in SSDT for both north and south XHCI device.

Signed-off-by: Duncan Laurie <dlaurie@google.com>
Change-Id: I724ca874d3a3f6a2b43a700b0b10f77f25c53ee0
Reviewed-on: https://review.coreboot.org/c/coreboot/+/46852
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Duncan Laurie 2020-10-27 10:29:16 -07:00 committed by Duncan Laurie
parent 0f5a17e980
commit 2e9315c4c6
3 changed files with 70 additions and 3 deletions

View File

@ -14,6 +14,7 @@ config CPU_SPECIFIC_OPTIONS
select CPU_INTEL_COMMON select CPU_INTEL_COMMON
select CPU_INTEL_FIRMWARE_INTERFACE_TABLE select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
select CPU_SUPPORTS_PM_TIMER_EMULATION select CPU_SUPPORTS_PM_TIMER_EMULATION
select DRIVERS_USB_ACPI
select FSP_COMPRESS_FSP_S_LZ4 select FSP_COMPRESS_FSP_S_LZ4
select FSP_M_XIP select FSP_M_XIP
select GENERIC_GPIO_LIB select GENERIC_GPIO_LIB
@ -50,6 +51,7 @@ config CPU_SPECIFIC_OPTIONS
select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
select SOC_INTEL_COMMON_BLOCK_USB4 select SOC_INTEL_COMMON_BLOCK_USB4
select SOC_INTEL_COMMON_BLOCK_USB4_PCIE select SOC_INTEL_COMMON_BLOCK_USB4_PCIE
select SOC_INTEL_COMMON_BLOCK_USB4_XHCI
select SOC_INTEL_COMMON_PCH_BASE select SOC_INTEL_COMMON_PCH_BASE
select SOC_INTEL_COMMON_RESET select SOC_INTEL_COMMON_RESET
select SOC_INTEL_COMMON_BLOCK_CAR select SOC_INTEL_COMMON_BLOCK_CAR

View File

@ -66,7 +66,6 @@ const char *soc_acpi_name(const struct device *dev)
switch (dev->path.pci.devfn) { switch (dev->path.pci.devfn) {
case SA_DEVFN_ROOT: return "MCHC"; case SA_DEVFN_ROOT: return "MCHC";
case SA_DEVFN_TCSS_XHCI: return "TXHC";
case SA_DEVFN_TCSS_XDCI: return "TXDC"; case SA_DEVFN_TCSS_XDCI: return "TXDC";
case SA_DEVFN_TBT0: return "TRP0"; case SA_DEVFN_TBT0: return "TRP0";
case SA_DEVFN_TBT1: return "TRP1"; case SA_DEVFN_TBT1: return "TRP1";

View File

@ -32,7 +32,25 @@ chip soc/intel/tigerlake
device pci 08.0 alias gna off end device pci 08.0 alias gna off end
device pci 09.0 alias npk off end device pci 09.0 alias npk off end
device pci 0a.0 alias crashlog off end device pci 0a.0 alias crashlog off end
device pci 0d.0 alias north_xhci off end device pci 0d.0 alias north_xhci off
chip drivers/usb/acpi
register "type" = "UPC_TYPE_HUB"
device usb 0.0 alias tcss_root_hub off
chip drivers/usb/acpi
device usb 3.0 alias tcss_usb3_port1 off end
end
chip drivers/usb/acpi
device usb 3.1 alias tcss_usb3_port2 off end
end
chip drivers/usb/acpi
device usb 3.2 alias tcss_usb3_port3 off end
end
chip drivers/usb/acpi
device usb 3.3 alias tcss_usb3_port4 off end
end
end
end
end
device pci 0d.1 alias north_xdci off end device pci 0d.1 alias north_xdci off end
device pci 0d.2 alias tbt_dma0 off end device pci 0d.2 alias tbt_dma0 off end
device pci 0d.3 alias tbt_dma1 off end device pci 0d.3 alias tbt_dma1 off end
@ -43,7 +61,55 @@ chip soc/intel/tigerlake
device pci 12.0 alias ish off end device pci 12.0 alias ish off end
device pci 12.6 alias gspi2 off end device pci 12.6 alias gspi2 off end
device pci 13.0 alias gspi3 off end device pci 13.0 alias gspi3 off end
device pci 14.0 alias south_xhci off end device pci 14.0 alias south_xhci off
chip drivers/usb/acpi
register "type" = "UPC_TYPE_HUB"
device usb 0.0 alias xhci_root_hub off
chip drivers/usb/acpi
device usb 2.0 alias usb2_port1 off end
end
chip drivers/usb/acpi
device usb 2.1 alias usb2_port2 off end
end
chip drivers/usb/acpi
device usb 2.2 alias usb2_port3 off end
end
chip drivers/usb/acpi
device usb 2.3 alias usb2_port4 off end
end
chip drivers/usb/acpi
device usb 2.4 alias usb2_port5 off end
end
chip drivers/usb/acpi
device usb 2.5 alias usb2_port6 off end
end
chip drivers/usb/acpi
device usb 2.6 alias usb2_port7 off end
end
chip drivers/usb/acpi
device usb 2.7 alias usb2_port8 off end
end
chip drivers/usb/acpi
device usb 2.8 alias usb2_port9 off end
end
chip drivers/usb/acpi
device usb 2.9 alias usb2_port10 off end
end
chip drivers/usb/acpi
device usb 3.0 alias usb3_port1 off end
end
chip drivers/usb/acpi
device usb 3.1 alias usb3_port2 off end
end
chip drivers/usb/acpi
device usb 3.2 alias usb3_port3 off end
end
chip drivers/usb/acpi
device usb 3.3 alias usb3_port4 off end
end
end
end
end
device pci 14.1 alias south_xdci off end device pci 14.1 alias south_xdci off end
device pci 14.2 alias shared_ram off end device pci 14.2 alias shared_ram off end
chip drivers/wifi/generic chip drivers/wifi/generic