diff options
author | Felix Held <felix-coreboot@felixheld.de> | 2023-04-19 21:13:15 +0200 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2023-04-20 21:16:11 +0000 |
commit | 4f02875e01dbfd6d818037b957663f0fd97be50e (patch) | |
tree | 071a45f9d76113783742bed052c79b0ddca42830 /src | |
parent | 6e2c28fb8947a21ac8940170cedf3244115db763 (diff) |
soc/amd/phoenix/include/soc/pci_devs: update defines to match the PPR
Parts of this file were still a copy of the file from the Mendocino SoC,
so update the file to match the PPR #57019 Rev 3.03 and the chipset
devicetree of the Phoenix SoC. Phoenix has 4 GFX/GPP PCIe bridges/ports,
the numbering scheme of the GPP PCIe bridges/ports was changed so that
the numbers match the device and function numbers, and there are new
device functions for the IPU and the USB4 controller and router devices.
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: Ie9429c03839bb0199a04cd6cafe9a955ebdacc91
Reviewed-on: https://review.coreboot.org/c/coreboot/+/74565
Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
Reviewed-by: Fred Reitberger <reitbergerfred@gmail.com>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/soc/amd/phoenix/include/soc/pci_devs.h | 60 |
1 files changed, 45 insertions, 15 deletions
diff --git a/src/soc/amd/phoenix/include/soc/pci_devs.h b/src/soc/amd/phoenix/include/soc/pci_devs.h index efe84bcdad..0dde0ba431 100644 --- a/src/soc/amd/phoenix/include/soc/pci_devs.h +++ b/src/soc/amd/phoenix/include/soc/pci_devs.h @@ -1,7 +1,5 @@ /* SPDX-License-Identifier: GPL-2.0-only */ -/* TODO: Update for Phoenix */ - #ifndef AMD_PHOENIX_PCI_DEVS_H #define AMD_PHOENIX_PCI_DEVS_H @@ -20,36 +18,52 @@ #define IOMMU_DEVFN PCI_DEVFN(IOMMU_DEV, IOMMU_FUNC) #define SOC_IOMMU_DEV _SOC_DEV(IOMMU_DEV, IOMMU_FUNC) -/* PCIe GFX/GPP Bridge device 1 with no ports */ +/* PCIe GFX/GPP Bridge device 1 with 4 ports */ #define PCIE_GPP_BRIDGE_1_DEV 0x1 +#define PCIE_GPP_1_1_FUNC 1 +#define PCIE_GPP_1_1_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_1_FUNC) +#define SOC_GPP_1_1_DEV _SOC_DEV(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_1_FUNC) + +#define PCIE_GPP_1_2_FUNC 2 +#define PCIE_GPP_1_2_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_2_FUNC) +#define SOC_GPP_1_2_DEV _SOC_DEV(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_2_FUNC) + +#define PCIE_GPP_1_3_FUNC 3 +#define PCIE_GPP_1_3_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_3_FUNC) +#define SOC_GPP_1_3_DEV _SOC_DEV(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_3_FUNC) + +#define PCIE_GPP_1_4_FUNC 4 +#define PCIE_GPP_1_4_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_4_FUNC) +#define SOC_GPP_1_4_DEV _SOC_DEV(PCIE_GPP_BRIDGE_1_DEV, PCIE_GPP_1_4_FUNC) + /* PCIe GPP Bridge device 2 with up to 6 ports */ #define PCIE_GPP_BRIDGE_2_DEV 0x2 -#define PCIE_GPP_2_0_FUNC 1 -#define PCIE_GPP_2_0_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_0_FUNC) -#define SOC_GPP_2_0_DEV _SOC_DEV(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_0_FUNC) - -#define PCIE_GPP_2_1_FUNC 2 +#define PCIE_GPP_2_1_FUNC 1 #define PCIE_GPP_2_1_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_1_FUNC) #define SOC_GPP_2_1_DEV _SOC_DEV(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_1_FUNC) -#define PCIE_GPP_2_2_FUNC 3 +#define PCIE_GPP_2_2_FUNC 2 #define PCIE_GPP_2_2_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_2_FUNC) #define SOC_GPP_2_2_DEV _SOC_DEV(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_2_FUNC) -#define PCIE_GPP_2_3_FUNC 4 +#define PCIE_GPP_2_3_FUNC 3 #define PCIE_GPP_2_3_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_3_FUNC) #define SOC_GPP_2_3_DEV _SOC_DEV(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_3_FUNC) -#define PCIE_GPP_2_4_FUNC 5 +#define PCIE_GPP_2_4_FUNC 4 #define PCIE_GPP_2_4_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_4_FUNC) #define SOC_GPP_2_4_DEV _SOC_DEV(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_4_FUNC) -#define PCIE_GPP_2_5_FUNC 6 +#define PCIE_GPP_2_5_FUNC 5 #define PCIE_GPP_2_5_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_5_FUNC) #define SOC_GPP_2_5_DEV _SOC_DEV(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_5_FUNC) +#define PCIE_GPP_2_6_FUNC 6 +#define PCIE_GPP_2_6_DEVFN PCI_DEVFN(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_6_FUNC) +#define SOC_GPP_2_6_DEV _SOC_DEV(PCIE_GPP_BRIDGE_2_DEV, PCIE_GPP_2_6_FUNC) + /* PCIe Bridges to Bus A, Bus B and Bus C devices */ #define PCIE_ABC_BRIDGE_DEV 0x8 @@ -85,13 +99,29 @@ #define PCIE_GPP_B_DEVFN PCI_DEVFN(PCIE_ABC_BRIDGE_DEV, PCIE_ABC_B_FUNC) #define SOC_PCIE_GPP_B_DEV _SOC_DEV(PCIE_ABC_BRIDGE_DEV, PCIE_ABC_B_FUNC) +#define GFX_IPU_DEV 0x0 +#define GFX_IPU_FUNC 1 +#define GFX_IPU_DEVFN PCI_DEVFN(GFX_IPU_DEV, GFX_IPU_FUNC) + #define PCIE_ABC_C_FUNC 3 #define PCIE_GPP_C_DEVFN PCI_DEVFN(PCIE_ABC_BRIDGE_DEV, PCIE_ABC_C_FUNC) #define SOC_PCIE_GPP_C_DEV _SOC_DEV(PCIE_ABC_BRIDGE_DEV, PCIE_ABC_C_FUNC) -#define XHCI2_DEV 0x0 -#define XHCI2_FUNC 0 -#define XHCI2_DEVFN PCI_DEVFN(XHCI2_DEV, XHCI2_FUNC) +#define USB4_XHCI0_DEV 0x0 +#define USB4_XHCI0_FUNC 3 +#define USB4_XHCI0_DEVFN PCI_DEVFN(USB4_XHCI0_DEV, USB4_XHCI0_FUNC) + +#define USB4_XHCI1_DEV 0x0 +#define USB4_XHCI1_FUNC 4 +#define USB4_XHCI1_DEVFN PCI_DEVFN(USB4_XHCI1_DEV, USB4_XHCI1_FUNC) + +#define USB4_ROUTER0_DEV 0x0 +#define USB4_ROUTER0_FUNC 5 +#define USB4_ROUTER0_DEVFN PCI_DEVFN(USB4_ROUTER0_DEV, USB4_ROUTER0_FUNC) + +#define USB4_ROUTER1_DEV 0x0 +#define USB4_ROUTER1_FUNC 6 +#define USB4_ROUTER1_DEVFN PCI_DEVFN(USB4_ROUTER1_DEV, USB4_ROUTER1_FUNC) /* SMBUS */ #define SMBUS_DEV 0x14 |