2 * This file is part of the coreboot project.
4 * Copyright (C) 2008 Advanced Micro Devices, Inc.
5 * Copyright (C) 2010 Siemens AG, Inc.
6 * (Written by Josef Kellermann <joseph.kellermann@heitec.de> for Siemens AG, Inc.)
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; version 2 of the License.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
18 /* Routing is in System Bus scope */
24 /* Bus 0, Dev 18 - SATA controller #1 */
25 Package(){0x0012FFFF, 1, \_SB.PCI0.LPC0.INTG, 0 },
27 /* Bus 0, Dev 19 - USB: OHCI, funct 0-4; EHCI, funct 5 */
28 Package(){0x0013FFFF, 0, \_SB.PCI0.LPC0.INTA, 0 },
29 Package(){0x0013FFFF, 1, \_SB.PCI0.LPC0.INTB, 0 },
30 Package(){0x0013FFFF, 2, \_SB.PCI0.LPC0.INTC, 0 },
31 Package(){0x0013FFFF, 3, \_SB.PCI0.LPC0.INTD, 0 },
33 /* Bus 0, Dev 20 - F0:SMBus/ACPI,F1:IDE;F2:HDAudio;F3:LPC;F4:PCIBridge;F5:AC97 Audio;F6:AC97 Modem */
34 Package(){0x0014FFFF, 0, \_SB.PCI0.LPC0.INTA, 0 },
35 Package(){0x0014FFFF, 1, \_SB.PCI0.LPC0.INTB, 0 },
36 Package(){0x0014FFFF, 2, \_SB.PCI0.LPC0.INTC, 0 },
37 Package(){0x0014FFFF, 3, \_SB.PCI0.LPC0.INTD, 0 },
41 /* NB devices in APIC mode */
42 /* Bus 0, Dev 0 - RS690 Host Controller */
43 /* SB devices in APIC mode */
44 /* Bus 0, Dev 18 - SATA controller #1 */
45 Package(){0x0012FFFF, 0, 0, 22 },
47 /* Bus 0, Dev 19 - USB: OHCI, funct 0-4; EHCI, funct 5 */
48 Package(){0x0013FFFF, 0, 0, 16 },
49 Package(){0x0013FFFF, 1, 0, 17 },
50 Package(){0x0013FFFF, 2, 0, 18 },
51 Package(){0x0013FFFF, 3, 0, 19 },
53 /* Bus 0, Dev 20 - F0:SMBus/ACPI, F1:IDE; F2:HDAudio; F3:LPC; F4:PCIBridge; F5:AC97 Audio; F6:AC97 Modem */
54 Package(){0x0014FFFF, 0, 0, 16 },
55 Package(){0x0014FFFF, 1, 0, 17 },
56 Package(){0x0014FFFF, 2, 0, 18 },
57 Package(){0x0014FFFF, 3, 0, 19 },
61 /* Internal graphics - RS690 VGA, Bus1, Dev5 */
62 Package(){0x0005FFFF, 0, \_SB.PCI0.LPC0.INTA, 0 },
63 Package(){0x0005FFFF, 1, \_SB.PCI0.LPC0.INTB, 0 },
64 Package(){0x0005FFFF, 2, \_SB.PCI0.LPC0.INTC, 0 },
65 Package(){0x0005FFFF, 3, \_SB.PCI0.LPC0.INTD, 0 },
69 /* Internal graphics - RS690 VGA, Bus1, Dev5 */
70 Package(){0x0005FFFF, 0, 0, 18 },
71 Package(){0x0005FFFF, 1, 0, 19 },
75 /* The external GFX - Hooked to PCIe slot 2 */
76 Package(){0x0000FFFF, 0, \_SB.PCI0.LPC0.INTC, 0 },
77 Package(){0x0000FFFF, 1, \_SB.PCI0.LPC0.INTD, 0 },
78 Package(){0x0000FFFF, 2, \_SB.PCI0.LPC0.INTA, 0 },
79 Package(){0x0000FFFF, 3, \_SB.PCI0.LPC0.INTB, 0 },
83 /* The external GFX - Hooked to PCIe slot 2 */
84 Package(){0x0000FFFF, 0, 0, 18 },
85 Package(){0x0000FFFF, 1, 0, 19 },
86 Package(){0x0000FFFF, 2, 0, 16 },
87 Package(){0x0000FFFF, 3, 0, 17 },
91 /* PCIe slot - Hooked to PCIe slot 4 */
92 Package(){0x0000FFFF, 0, \_SB.PCI0.LPC0.INTA, 0 },
93 Package(){0x0000FFFF, 1, \_SB.PCI0.LPC0.INTB, 0 },
94 Package(){0x0000FFFF, 2, \_SB.PCI0.LPC0.INTC, 0 },
95 Package(){0x0000FFFF, 3, \_SB.PCI0.LPC0.INTD, 0 },
99 /* PCIe slot - Hooked to PCIe slot 4 */
100 Package(){0x0000FFFF, 0, 0, 16 },
101 Package(){0x0000FFFF, 1, 0, 17 },
102 Package(){0x0000FFFF, 2, 0, 18 },
103 Package(){0x0000FFFF, 3, 0, 19 },
107 /* PCIe slot - Hooked to PCIe slot 5 */
108 Package(){0x0000FFFF, 0, \_SB.PCI0.LPC0.INTB, 0 },
109 Package(){0x0000FFFF, 1, \_SB.PCI0.LPC0.INTC, 0 },
110 Package(){0x0000FFFF, 2, \_SB.PCI0.LPC0.INTD, 0 },
111 Package(){0x0000FFFF, 3, \_SB.PCI0.LPC0.INTA, 0 },
114 Name(APS5, Package(){
115 /* PCIe slot - Hooked to PCIe slot 5 */
116 Package(){0x0000FFFF, 0, 0, 17 },
117 Package(){0x0000FFFF, 1, 0, 18 },
118 Package(){0x0000FFFF, 2, 0, 19 },
119 Package(){0x0000FFFF, 3, 0, 16 },
123 /* PCIe slot - Hooked to PCIe slot 6 */
124 Package(){0x0000FFFF, 0, \_SB.PCI0.LPC0.INTC, 0 },
125 Package(){0x0000FFFF, 1, \_SB.PCI0.LPC0.INTD, 0 },
126 Package(){0x0000FFFF, 2, \_SB.PCI0.LPC0.INTA, 0 },
127 Package(){0x0000FFFF, 3, \_SB.PCI0.LPC0.INTB, 0 },
130 Name(APS6, Package(){
131 /* PCIe slot - Hooked to PCIe slot 6 */
132 Package(){0x0000FFFF, 0, 0, 18 },
133 Package(){0x0000FFFF, 1, 0, 19 },
134 Package(){0x0000FFFF, 2, 0, 16 },
135 Package(){0x0000FFFF, 3, 0, 17 },
139 /* PCIe slot - Hooked to PCIe slot 7 */
140 Package(){0x0000FFFF, 0, \_SB.PCI0.LPC0.INTD, 0 },
141 Package(){0x0000FFFF, 1, \_SB.PCI0.LPC0.INTA, 0 },
142 Package(){0x0000FFFF, 2, \_SB.PCI0.LPC0.INTB, 0 },
143 Package(){0x0000FFFF, 3, \_SB.PCI0.LPC0.INTC, 0 },
146 Name(APS7, Package(){
147 /* PCIe slot - Hooked to PCIe slot 7 */
148 Package(){0x0000FFFF, 0, 0, 19 },
149 Package(){0x0000FFFF, 1, 0, 16 },
150 Package(){0x0000FFFF, 2, 0, 17 },
151 Package(){0x0000FFFF, 3, 0, 18 },
154 Name(PCIB, Package(){
155 /* PCI slots: slot 1 behind Dev14, Fun4. */
156 Package(){0x005FFFF, 0, \_SB.PCI0.LPC0.INTF, 0 }, // Phoenix does it
157 Package(){0x005FFFF, 1, \_SB.PCI0.LPC0.INTG, 0 }, // Phoenix does it
158 Package(){0x004FFFF, 0, \_SB.PCI0.LPC0.INTE, 0 },
159 Package(){0x004FFFF, 1, \_SB.PCI0.LPC0.INTF, 0 },
160 Package(){0x004FFFF, 2, \_SB.PCI0.LPC0.INTG, 0 },
161 Package(){0x004FFFF, 3, \_SB.PCI0.LPC0.INTH, 0 },
164 Name(AP2P, Package(){
165 /* PCI slots: slot 0 behind Dev14, Fun4. */
166 Package(){0x0005FFFF, 0, 0, 21 }, // Phoenix does it
167 Package(){0x0005FFFF, 1, 0, 22 }, // Phoenix does it
168 Package(){0x0004FFFF, 0, 0, 20 },
169 Package(){0x0004FFFF, 1, 0, 21 },
170 Package(){0x0004FFFF, 2, 0, 22 },
171 Package(){0x0004FFFF, 3, 0, 23 },