soc/mediatek/mt8196: Initialize SSPM
[coreboot.git] / src / soc / intel / cannonlake / acpi / pcie.asl
blob21e7925cc091761523dfdb828f9c4d079357a39a
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 /* Intel PCH PCIe support */
5 Method (IRQM, 1, Serialized) {
7         /* Interrupt Map INTA->INTA, INTB->INTB, INTC->INTC, INTD->INTD */
8         Name (IQAA, Package () {
9                 Package () { 0x0000ffff, 0, 0, 16 },
10                 Package () { 0x0000ffff, 1, 0, 17 },
11                 Package () { 0x0000ffff, 2, 0, 18 },
12                 Package () { 0x0000ffff, 3, 0, 19 } })
13         Name (IQAP, Package () {
14                 Package () { 0x0000ffff, 0, 0, 11 },
15                 Package () { 0x0000ffff, 1, 0, 10 },
16                 Package () { 0x0000ffff, 2, 0, 11 },
17                 Package () { 0x0000ffff, 3, 0, 11 } })
19         /* Interrupt Map INTA->INTB, INTB->INTC, INTC->INTD, INTD->INTA */
20         Name (IQBA, Package () {
21                 Package () { 0x0000ffff, 0, 0, 17 },
22                 Package () { 0x0000ffff, 1, 0, 18 },
23                 Package () { 0x0000ffff, 2, 0, 19 },
24                 Package () { 0x0000ffff, 3, 0, 16 } })
25         Name (IQBP, Package () {
26                 Package () { 0x0000ffff, 0, 0, 10 },
27                 Package () { 0x0000ffff, 1, 0, 11 },
28                 Package () { 0x0000ffff, 2, 0, 11 },
29                 Package () { 0x0000ffff, 3, 0, 11 } })
31         /* Interrupt Map INTA->INTC, INTB->INTD, INTC->INTA, INTD->INTB */
32         Name (IQCA, Package () {
33                 Package () { 0x0000ffff, 0, 0, 18 },
34                 Package () { 0x0000ffff, 1, 0, 19 },
35                 Package () { 0x0000ffff, 2, 0, 16 },
36                 Package () { 0x0000ffff, 3, 0, 17 } })
37         Name (IQCP, Package () {
38                 Package () { 0x0000ffff, 0, 0, 11 },
39                 Package () { 0x0000ffff, 1, 0, 11 },
40                 Package () { 0x0000ffff, 2, 0, 11 },
41                 Package () { 0x0000ffff, 3, 0, 10 } })
43         /* Interrupt Map INTA->INTD, INTB->INTA, INTC->INTB, INTD->INTC */
44         Name (IQDA, Package () {
45                 Package () { 0x0000ffff, 0, 0, 19 },
46                 Package () { 0x0000ffff, 1, 0, 16 },
47                 Package () { 0x0000ffff, 2, 0, 17 },
48                 Package () { 0x0000ffff, 3, 0, 18 } })
49         Name (IQDP, Package () {
50                 Package () { 0x0000ffff, 0, 0, 11 },
51                 Package () { 0x0000ffff, 1, 0, 11 },
52                 Package () { 0x0000ffff, 2, 0, 10 },
53                 Package () { 0x0000ffff, 3, 0, 11 } })
55         Switch (ToInteger (Arg0))
56         {
57                 Case (Package () { 1, 5, 9, 13
58 #if CONFIG(SOC_INTEL_CANNONLAKE_PCH_H)
59                 , 17, 21
60 #endif
61                 }) {
62                         If (PICM) {
63                                 Return (IQAA)
64                         } Else {
65                                 Return (IQAP)
66                         }
67                 }
69                 Case (Package () { 2, 6, 10, 14
70 #if CONFIG(SOC_INTEL_CANNONLAKE_PCH_H)
71                 , 18, 22
72 #endif
73                 }) {
74                         If (PICM) {
75                                 Return (IQBA)
76                         } Else {
77                                 Return (IQBP)
78                         }
79                 }
81                 Case (Package () { 3, 7, 11, 15
82 #if CONFIG(SOC_INTEL_CANNONLAKE_PCH_H)
83                 , 19, 23
84 #endif
85                 }) {
86                         If (PICM) {
87                                 Return (IQCA)
88                         } Else {
89                                 Return (IQCP)
90                         }
91                 }
93                 Case (Package () { 4, 8, 12, 16
94 #if CONFIG(SOC_INTEL_CANNONLAKE_PCH_H)
95                 , 20, 24
96 #endif
97                 }) {
98                         If (PICM) {
99                                 Return (IQDA)
100                         } Else {
101                                 Return (IQDP)
102                         }
103                 }
105                 Default {
106                         If (PICM) {
107                                 Return (IQDA)
108                         } Else {
109                                 Return (IQDP)
110                         }
111                 }
112         }
115 Device (RP01)
117         Name (_ADR, 0x001C0000)
119         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
120         Field (RPCS, AnyAcc, NoLock, Preserve)
121         {
122                 , 24,
123                 RPPN, 8,        /* Root Port Number */
124         }
126         Method (_PRT)
127         {
128                 Return (IRQM (RPPN))
129         }
132 Device (RP02)
134         Name (_ADR, 0x001C0001)
136         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
137         Field (RPCS, AnyAcc, NoLock, Preserve)
138         {
139                 , 24,
140                 RPPN, 8,        /* Root Port Number */
141         }
143         Method (_PRT)
144         {
145                 Return (IRQM (RPPN))
146         }
149 Device (RP03)
151         Name (_ADR, 0x001C0002)
153         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
154         Field (RPCS, AnyAcc, NoLock, Preserve)
155         {
156                 , 24,
157                 RPPN, 8,        /* Root Port Number */
158         }
160         Method (_PRT)
161         {
162                 Return (IRQM (RPPN))
163         }
166 Device (RP04)
168         Name (_ADR, 0x001C0003)
170         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
171         Field (RPCS, AnyAcc, NoLock, Preserve)
172         {
173                 , 24,
174                 RPPN, 8,        /* Root Port Number */
175         }
177         Method (_PRT)
178         {
179                 Return (IRQM (RPPN))
180         }
183 Device (RP05)
185         Name (_ADR, 0x001C0004)
187         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
188         Field (RPCS, AnyAcc, NoLock, Preserve)
189         {
190                 , 24,
191                 RPPN, 8,        /* Root Port Number */
192         }
194         Method (_PRT)
195         {
196                 Return (IRQM (RPPN))
197         }
200 Device (RP06)
202         Name (_ADR, 0x001C0005)
204         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
205         Field (RPCS, AnyAcc, NoLock, Preserve)
206         {
207                 , 24,
208                 RPPN, 8,        /* Root Port Number */
209         }
211         Method (_PRT)
212         {
213                 Return (IRQM (RPPN))
214         }
217 Device (RP07)
219         Name (_ADR, 0x001C0006)
221         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
222         Field (RPCS, AnyAcc, NoLock, Preserve)
223         {
224                 , 24,
225                 RPPN, 8,        /* Root Port Number */
226         }
228         Method (_PRT)
229         {
230                 Return (IRQM (RPPN))
231         }
234 Device (RP08)
236         Name (_ADR, 0x001C0007)
238         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
239         Field (RPCS, AnyAcc, NoLock, Preserve)
240         {
241                 , 24,
242                 RPPN, 8,        /* Root Port Number */
243         }
245         Method (_PRT)
246         {
247                 Return (IRQM (RPPN))
248         }
251 Device (RP09)
253         Name (_ADR, 0x001D0000)
255         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
256         Field (RPCS, AnyAcc, NoLock, Preserve)
257         {
258                 , 24,
259                 RPPN, 8,        /* Root Port Number */
260         }
262         Method (_PRT)
263         {
264                 Return (IRQM (RPPN))
265         }
268 Device (RP10)
270         Name (_ADR, 0x001D0001)
272         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
273         Field (RPCS, AnyAcc, NoLock, Preserve)
274         {
275                 , 24,
276                 RPPN, 8,        /* Root Port Number */
277         }
279         Method (_PRT)
280         {
281                 Return (IRQM (RPPN))
282         }
285 Device (RP11)
287         Name (_ADR, 0x001D0002)
289         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
290         Field (RPCS, AnyAcc, NoLock, Preserve)
291         {
292                 , 24,
293                 RPPN, 8,        /* Root Port Number */
294         }
296         Method (_PRT)
297         {
298                 Return (IRQM (RPPN))
299         }
302 Device (RP12)
304         Name (_ADR, 0x001D0003)
306         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
307         Field (RPCS, AnyAcc, NoLock, Preserve)
308         {
309                 , 24,
310                 RPPN, 8,        /* Root Port Number */
311         }
313         Method (_PRT)
314         {
315                 Return (IRQM (RPPN))
316         }
319 Device (RP13)
321         Name (_ADR, 0x001D0004)
323         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
324         Field (RPCS, AnyAcc, NoLock, Preserve)
325         {
326                 , 24,
327                 RPPN, 8,        /* Root Port Number */
328         }
330         Method (_PRT)
331         {
332                 Return (IRQM (RPPN))
333         }
336 Device (RP14)
338         Name (_ADR, 0x001D0005)
340         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
341         Field (RPCS, AnyAcc, NoLock, Preserve)
342         {
343                 , 24,
344                 RPPN, 8,        /* Root Port Number */
345         }
347         Method (_PRT)
348         {
349                 Return (IRQM (RPPN))
350         }
353 Device (RP15)
355         Name (_ADR, 0x001D0006)
357         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
358         Field (RPCS, AnyAcc, NoLock, Preserve)
359         {
360                 , 24,
361                 RPPN, 8,        /* Root Port Number */
362         }
364         Method (_PRT)
365         {
366                 Return (IRQM (RPPN))
367         }
370 Device (RP16)
372         Name (_ADR, 0x001D0007)
374         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
375         Field (RPCS, AnyAcc, NoLock, Preserve)
376         {
377                 , 24,
378                 RPPN, 8,        /* Root Port Number */
379         }
381         Method (_PRT)
382         {
383                 Return (IRQM (RPPN))
384         }
387 #if CONFIG(SOC_INTEL_CANNONLAKE_PCH_H)
388 Device (RP17)
390         Name (_ADR, 0x001B0000)
392         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
393         Field (RPCS, AnyAcc, NoLock, Preserve)
394         {
395                 , 24,
396                 RPPN, 8,        /* Root Port Number */
397         }
399         Method (_PRT)
400         {
401                 Return (IRQM (RPPN))
402         }
405 Device (RP18)
407         Name (_ADR, 0x001B0001)
409         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
410         Field (RPCS, AnyAcc, NoLock, Preserve)
411         {
412                 , 24,
413                 RPPN, 8,        /* Root Port Number */
414         }
416         Method (_PRT)
417         {
418                 Return (IRQM (RPPN))
419         }
422 Device (RP19)
424         Name (_ADR, 0x001B0002)
426         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
427         Field (RPCS, AnyAcc, NoLock, Preserve)
428         {
429                 , 24,
430                 RPPN, 8,        /* Root Port Number */
431         }
433         Method (_PRT)
434         {
435                 Return (IRQM (RPPN))
436         }
439 Device (RP20)
441         Name (_ADR, 0x001B0003)
443         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
444         Field (RPCS, AnyAcc, NoLock, Preserve)
445         {
446                 , 24,
447                 RPPN, 8,        /* Root Port Number */
448         }
450         Method (_PRT)
451         {
452                 Return (IRQM (RPPN))
453         }
456 Device (RP21)
458         Name (_ADR, 0x001B0004)
460         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
461         Field (RPCS, AnyAcc, NoLock, Preserve)
462         {
463                 , 24,
464                 RPPN, 8,        /* Root Port Number */
465         }
467         Method (_PRT)
468         {
469                 Return (IRQM (RPPN))
470         }
473 Device (RP22)
475         Name (_ADR, 0x001B0005)
477         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
478         Field (RPCS, AnyAcc, NoLock, Preserve)
479         {
480                 , 24,
481                 RPPN, 8,        /* Root Port Number */
482         }
484         Method (_PRT)
485         {
486                 Return (IRQM (RPPN))
487         }
490 Device (RP23)
492         Name (_ADR, 0x001B0006)
494         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
495         Field (RPCS, AnyAcc, NoLock, Preserve)
496         {
497                 , 24,
498                 RPPN, 8,        /* Root Port Number */
499         }
501         Method (_PRT)
502         {
503                 Return (IRQM (RPPN))
504         }
507 Device (RP24)
509         Name (_ADR, 0x001B0007)
511         OperationRegion (RPCS, PCI_Config, 0x4c, 4)
512         Field (RPCS, AnyAcc, NoLock, Preserve)
513         {
514                 , 24,
515                 RPPN, 8,        /* Root Port Number */
516         }
518         Method (_PRT)
519         {
520                 Return (IRQM (RPPN))
521         }
523 #endif
525 Device (SRAM)
527         Name (_ADR, 0x00140002)
530 Device (CSE1)
532         Name (_ADR, 0x00160000)