• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #include <amdblocks/amd_pci_util.h>
4 #include <commonlib/bsd/helpers.h>
5 #include <soc/pci_devs.h>
6 #include <stddef.h>
7 
8 /* See AMD PPR 55570 - IOAPIC Initialization for the table that AGESA sets up */
9 const struct pci_routing_info pci_routing_table[] = {
10 	{PCIE_GPP_0_DEVFN, 0, PCI_SWIZZLE_ABCD, 0x10},
11 	{PCIE_GPP_1_DEVFN, 1, PCI_SWIZZLE_ABCD, 0x11},
12 	{PCIE_GPP_2_DEVFN, 2, PCI_SWIZZLE_ABCD, 0x12},
13 	{PCIE_GPP_3_DEVFN, 3, PCI_SWIZZLE_ABCD, 0x13},
14 	{PCIE_GPP_4_DEVFN, 4, PCI_SWIZZLE_ABCD, 0x10},
15 	{PCIE_GPP_5_DEVFN, 5, PCI_SWIZZLE_ABCD, 0x11},
16 	{PCIE_GPP_6_DEVFN, 6, PCI_SWIZZLE_ABCD, 0x12},
17 	{PCIE_GPP_A_DEVFN, 7, PCI_SWIZZLE_ABCD, 0x13},
18 	{PCIE_GPP_B_DEVFN, 7, PCI_SWIZZLE_CDAB, 0x0C},
19 };
20 
get_pci_routing_table(size_t * entries)21 const struct pci_routing_info *get_pci_routing_table(size_t *entries)
22 {
23 	*entries = ARRAY_SIZE(pci_routing_table);
24 	return pci_routing_table;
25 }
26