xref: /aosp_15_r20/external/coreboot/src/soc/amd/stoneyridge/include/soc/pci_devs.h (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef AMD_STONEYRIDGE_PCI_DEVS_H
4 #define AMD_STONEYRIDGE_PCI_DEVS_H
5 
6 #include <device/pci_def.h>
7 #include <amdblocks/pci_devs.h>
8 
9 /* GNB Root Complex: GNB_DEVID 0x1576 */
10 #define GNB_DEV			0x0
11 #define GNB_FUNC		0
12 #define GNB_DEVFN		PCI_DEVFN(GNB_DEV, GNB_FUNC)
13 #define SOC_GNB_DEV		_SOC_DEV(GNB_DEV, GNB_FUNC)
14 
15 /* IOMMU: IOMMU_DEVID 0x1577 */
16 #define IOMMU_DEV		0x0
17 #define IOMMU_FUNC		2
18 #define IOMMU_DEVFN		PCI_DEVFN(IOMMU_DEV, IOMMU_FUNC)
19 #define SOC_IOMMU_DEV		_SOC_DEV(IOMMU_DEV, IOMMU_FUNC)
20 
21 /*
22  * Internal Graphics
23  * Device IDs subject to SKU/OPN variation
24  * GFX_DEVID for merlinfalcon		PCI_DID_AMD_15H_MODEL_606F_GFX
25  * GFX_DEVID for stoneyridge		PCI_DID_AMD_15H_MODEL_707F_GFX
26  */
27 #define GFX_DEV			0x1
28 #define GFX_FUNC		0
29 #define GFX_DEVFN		PCI_DEVFN(GFX_DEV, GFX_FUNC)
30 #define SOC_GFX_DEV		_SOC_DEV(GFX_DEV, GFX_FUNC)
31 
32 /* HD Audio 0
33  * Device IDs
34  * HDA0_DEVID			PCI_DID_AMD_15H_MODEL_606F_HDA
35  * HDA0_DEVID			PCI_DID_AMD_15H_MODEL_707F_HDA
36  */
37 #define HDA0_DEV		0x1
38 #define HDA0_FUNC		1
39 #define HDA0_DEVFN		PCI_DEVFN(HDA0_DEV, HDA0_FUNC)
40 #define SOC_HDA0_DEV		_SOC_DEV(HDA0_DEV, HDA0_FUNC)
41 
42 /* Host Bridge: HOST_DEVID 0x157b */
43 #define HOST_DEV		0x2
44 #define HOST_FUNC		0
45 #define HOST_DEVFN		PCI_DEVFN(HOST_DEV, HOST_FUNC)
46 #define SOC_HOST_DEV		_SOC_DEV(HOST_DEV, HOST_FUNC)
47 
48 /* PCIe GPP Bridge 0: PCIE0_DEVID 0x157c */
49 #define PCIE0_DEV		0x2
50 #define PCIE0_FUNC		1
51 #define PCIE0_DEVFN		PCI_DEVFN(PCIE0_DEV, PCIE0_FUNC)
52 #define SOC_PCIE0_DEV		_SOC_DEV(PCIE0_DEV, PCIE0_FUNC)
53 
54 /* PCIe GPP Bridge 1: PCIE1_DEVID 0x157c */
55 #define PCIE1_DEV		0x2
56 #define PCIE1_FUNC		2
57 #define PCIE1_DEVFN		PCI_DEVFN(PCIE1_DEV, PCIE1_FUNC)
58 #define SOC_PCIE1_DEV		_SOC_DEV(PCIE1_DEV, PCIE1_FUNC)
59 
60 /* PCIe GPP Bridge 2: PCIE2_DEVID 0x157c */
61 #define PCIE2_DEV		0x2
62 #define PCIE2_FUNC		3
63 #define PCIE2_DEVFN		PCI_DEVFN(PCIE2_DEV, PCIE2_FUNC)
64 #define SOC_PCIE2_DEV		_SOC_DEV(PCIE2_DEV, PCIE2_FUNC)
65 
66 /* PCIe GPP Bridge 3: PCIE3_DEVID 0x157c */
67 #define PCIE3_DEV		0x2
68 #define PCIE3_FUNC		4
69 #define PCIE3_DEVFN		PCI_DEVFN(PCIE3_DEV, PCIE3_FUNC)
70 #define SOC_PCIE3_DEV		_SOC_DEV(PCIE3_DEV, PCIE3_FUNC)
71 
72 /* PCIe GPP Bridge 4: PCIE4_DEVID 0x157c */
73 #define PCIE4_DEV		0x2
74 #define PCIE4_FUNC		5
75 #define PCIE4_DEVFN		PCI_DEVFN(PCIE4_DEV, PCIE4_FUNC)
76 #define SOC_PCIE4_DEV		_SOC_DEV(PCIE4_DEV, PCIE4_FUNC)
77 
78 /* Platform Security Processor: PSP_DEVID 0x1578 */
79 #define PSP_DEV			0x8
80 #define PSP_FUNC		0
81 #define PSP_DEVFN		PCI_DEVFN(PSP_DEV, PSP_FUNC)
82 #define SOC_PSP_DEV		_SOC_DEV(PSP_DEV, PSP_FUNC)
83 
84 /* HD Audio 1: HDA1_DEVID 0x157a */
85 #define HDA1_DEV		0x9
86 #define HDA1_FUNC		2
87 #define HDA1_DEVFN		PCI_DEVFN(HDA1_DEV, HDA1_FUNC)
88 #define SOC_HDA1_DEV		_SOC_DEV(HDA1_DEV, HDA1_FUNC)
89 
90 /* HT Configuration
91  * Device IDs
92  * HT_DEVID for merlinfalcon	PCI_DID_AMD_15H_MODEL_606F_NB_HT
93  * HT_DEVID for stoneyridge	PCI_DID_AMD_15H_MODEL_707F_NB_HT
94  */
95 #define HT_DEV			0x18
96 #define HT_FUNC			0
97 #define HT_DEVFN		PCI_DEVFN(HT_DEV, HT_FUNC)
98 #define SOC_HT_DEV		_SOC_DEV(HT_DEV, HT_FUNC)
99 
100 /* Address Maps
101  * Device IDs
102  * ADDR_DEVID for merlinfalcon	0x1571
103  * ADDR_DEVID for stoneyridge	0x15b1
104  */
105 #define ADDR_DEV		0x18
106 #define ADDR_FUNC		1
107 #define ADDR_DEVFN		PCI_DEVFN(ADDR_DEV, ADDR_FUNC)
108 #define SOC_ADDR_DEV		_SOC_DEV(ADDR_DEV, ADDR_FUNC)
109 
110 /* DRAM Configuration
111  * Device IDs
112  * DCT_DEVID for merlinfalcon	0x1572
113  * DCT_DEVID for stoneyridge	0x15b2
114  */
115 #define DCT_DEV			0x18
116 #define DCT_FUNC		2
117 #define DCT_DEVFN		PCI_DEVFN(DCT_DEV, DCT_FUNC)
118 #define SOC_DCT_DEV		_SOC_DEV(DCT_DEV, DCT_FUNC)
119 
120 /* Misc. Configuration
121  * Device IDs
122  * MISC_DEVID for merlinfalcon	0x1573
123  * MISC_DEVID for stoneyridge	0x15b3
124  */
125 #define MISC_DEV		0x18
126 #define MISC_FUNC		3
127 #define MISC_DEVFN		PCI_DEVFN(MISC_DEV, MISC_FUNC)
128 #define SOC_MISC_DEV		_SOC_DEV(MISC_DEV, MISC_FUNC)
129 
130 /* PM Configuration
131  * Device IDs
132  * PM_DEVID for merlinfalcon	0x1574
133  * PM_DEVID for stoneyridge	0x15b4
134  */
135 #define PM_DEV			0x18
136 #define PM_FUNC			4
137 #define PM_DEVFN		PCI_DEVFN(PM_DEV, PM_FUNC)
138 #define SOC_PM_DEV		_SOC_DEV(PM_DEV, PM_FUNC)
139 
140 /* Northbridge Configuration
141  * Device IDs
142  * NB_DEVID for merlinfalcon	0x1575
143  * NB_DEVID for stoneyridge	0x15b5
144  */
145 #define NB_DEV			0x18
146 #define NB_FUNC			5
147 #define NB_DEVFN		PCI_DEVFN(NB_DEV, NB_FUNC)
148 #define SOC_NB_DEV		_SOC_DEV(NB_DEV, NB_FUNC)
149 
150 /* XHCI: XHCI_DEVID 0x7914 */
151 #define XHCI_DEV		0x10
152 #define XHCI_FUNC		0
153 #define XHCI_DEVFN		PCI_DEVFN(XHCI_DEV, XHCI_FUNC)
154 #define SOC_XHCI_DEV		_SOC_DEV(XHCI_DEV, XHCI_FUNC)
155 
156 /*
157  * SATA:
158  * SATA_IDE_IDEVID		0x7900
159  * AHCI_DEVID_MS		0x7901
160  * AHCI_DEVID_AMD		0x7904
161  */
162 #define SATA_DEV		0x11
163 #define SATA_FUNC		0
164 #define SATA_DEVFN		PCI_DEVFN(SATA_DEV, SATA_FUNC)
165 #define SOC_SATA_DEV		_SOC_DEV(SATA_DEV, SATA_FUNC)
166 
167 /* EHCI: EHCI_DEVID 0x7908 */
168 #define EHCI_DEV		0x12
169 #define EHCI_FUNC		0
170 #define EHCI1_DEVFN		PCI_DEVFN(EHCI_DEV, EHCI_FUNC)
171 #define SOC_EHCI1_DEV		_SOC_DEV(EHCI_DEV, EHCI_FUNC)
172 
173 /* SMBUS: SMBUS_DEVID 0x790b */
174 #define SMBUS_DEV		0x14
175 #define SMBUS_FUNC		0
176 #define SMBUS_DEVFN		PCI_DEVFN(SMBUS_DEV, SMBUS_FUNC)
177 #define SOC_SMBUS_DEV		_SOC_DEV(SMBUS_DEV, SMBUS_FUNC)
178 
179 /* LPC BUS: LPC_DEVID 0x790e */
180 #define PCU_DEV			0x14
181 #define LPC_FUNC		3
182 #define LPC_DEVFN		PCI_DEVFN(PCU_DEV, LPC_FUNC)
183 #define SOC_LPC_DEV		_SOC_DEV(PCU_DEV, LPC_FUNC)
184 
185 /* SD Controller: SD_DEVID 0x7906 */
186 #define SD_DEV			0x14
187 #define SD_FUNC			7
188 #define SD_DEVFN		PCI_DEVFN(SD_DEV, SD_FUNC)
189 #define SOC_SD_DEV		_SOC_DEV(SD_DEV, SD_FUNC)
190 
191 #endif /* AMD_STONEYRIDGE_PCI_DEVS_H */
192