blob: 70b6186494c1aaf6f766b805d34ff84a302272b2 [file] [log] [blame]
Nick Vaccarof9781912020-01-28 18:43:28 -08001chip soc/intel/tigerlake
2
3 device cpu_cluster 0 on
4 device lapic 0 on end
5 end
6
7 # GPE configuration
8 # Note that GPE events called out in ASL code rely on this
9 # route. i.e. If this route changes then the affected GPE
10 # offset bits also need to be changed.
11 register "pmc_gpe0_dw0" = "GPP_C"
12 register "pmc_gpe0_dw1" = "GPP_D"
13 register "pmc_gpe0_dw2" = "GPP_E"
14
15 # FSP configuration
16 register "SaGv" = "SaGv_Disabled"
17 register "SmbusEnable" = "0"
18
19 register "usb2_ports[0]" = "USB2_PORT_MID(OC_SKIP)" # Type-A Port A0
20 register "usb2_ports[1]" = "USB2_PORT_MID(OC_SKIP)" # Type-A Port A1
21 register "usb2_ports[2]" = "USB2_PORT_MID(OC_SKIP)" # M.2 WWAN
22 register "usb2_ports[3]" = "USB2_PORT_MID(OC_SKIP)" # Type-A / Type-C Cl
23 register "usb2_ports[4]" = "USB2_PORT_MID(OC_SKIP)" # M.2 Camera
24 register "usb2_ports[5]" = "USB2_PORT_EMPTY" # Type-A / Type-C Not Used
25 register "usb2_ports[6]" = "USB2_PORT_EMPTY" # Type-A / Type-C Not Used
26 register "usb2_ports[7]" = "USB2_PORT_EMPTY" # Type-A / Type-C Not Used
27 register "usb2_ports[8]" = "USB2_PORT_MID(OC_SKIP)" # Type-A / Type-C Co
28 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # M.2 Bluetooth
29
30 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC1)" # USB3/2 Type A port A0
31 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC2)" # USB3/2 Type A port A1
32 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)" # M.2 WWAN
33 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # M.2 Camera
34
35 # Enable Pch iSCLK
36 register "pch_isclk" = "1"
37
38 # EC host command ranges are in 0x800-0x8ff & 0x200-0x20f
39 register "gen1_dec" = "0x00fc0801"
40 register "gen2_dec" = "0x000c0201"
41 # EC memory map range is 0x900-0x9ff
42 register "gen3_dec" = "0x00fc0901"
43
44 # Enable NVMe PCIE 9 using clk 0
45 register "PcieRpEnable[8]" = "1"
46 register "PcieClkSrcUsage[0]" = "8"
47 register "PcieClkSrcClkReq[0]" = "0"
48
49 # Enable SD Card PCIE 8 using clk 3
50 register "PcieRpEnable[7]" = "1"
51 register "PcieClkSrcUsage[3]" = "7"
52 register "PcieClkSrcClkReq[3]" = "3"
53
54 # Enable WLAN PCIE 7 using clk 1
55 register "PcieRpEnable[6]" = "1"
56 register "PcieClkSrcUsage[1]" = "6"
57 register "PcieClkSrcClkReq[1]" = "1"
58
59 # Enable WWAN PCIE 6 using clk 2
60 register "PcieRpEnable[5]" = "1"
61 register "PcieClkSrcUsage[2]" = "5"
62 register "PcieClkSrcClkReq[2]" = "2"
63
64 # Mark SRCCLKREQ pins as unused that are routed for a Non-Clkreq functionality
65 register "PcieClkSrcUsage[4]" = "0xFF"
66 register "PcieClkSrcUsage[5]" = "0xFF"
67 register "PcieClkSrcUsage[6]" = "0xFF"
68
69 # Enable SATA
70 register "SataEnable" = "1"
71 register "SataMode" = "0"
72 register "SataSalpSupport" = "1"
73 register "SataPortsEnable[0]" = "0"
74 register "SataPortsEnable[1]" = "1"
75 register "SataPortsDevSlp[0]" = "0"
76
77 register "SerialIoI2cMode" = "{
78 [PchSerialIoIndexI2C0] = PchSerialIoPci,
79 [PchSerialIoIndexI2C1] = PchSerialIoPci,
80 [PchSerialIoIndexI2C2] = PchSerialIoPci,
81 [PchSerialIoIndexI2C3] = PchSerialIoPci,
82 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
83 [PchSerialIoIndexI2C5] = PchSerialIoPci,
84 }"
85
86 register "SerialIoGSpiMode" = "{
87 [PchSerialIoIndexGSPI0] = PchSerialIoPci,
88 [PchSerialIoIndexGSPI1] = PchSerialIoPci,
89 [PchSerialIoIndexGSPI2] = PchSerialIoDisabled,
90 [PchSerialIoIndexGSPI3] = PchSerialIoDisabled,
91 }"
92
93 register "SerialIoGSpiCsMode" = "{
94 [PchSerialIoIndexGSPI0] = 1,
95 [PchSerialIoIndexGSPI1] = 1,
96 [PchSerialIoIndexGSPI2] = 0,
97 [PchSerialIoIndexGSPI3] = 0,
98 }"
99
100 register "SerialIoGSpiCsState" = "{
101 [PchSerialIoIndexGSPI0] = 0,
102 [PchSerialIoIndexGSPI1] = 0,
103 [PchSerialIoIndexGSPI2] = 0,
104 [PchSerialIoIndexGSPI3] = 0,
105 }"
106
107 register "SerialIoUartMode" = "{
108 [PchSerialIoIndexUART0] = PchSerialIoPci,
109 [PchSerialIoIndexUART1] = PchSerialIoDisabled,
110 [PchSerialIoIndexUART2] = PchSerialIoDisabled,
111 }"
112
113 # DP port
114 register "DdiPortAConfig" = "1" # eDP
115 register "DdiPortBConfig" = "0"
116
117 register "DdiPortAHpd" = "1"
118 register "DdiPortBHpd" = "1"
119 register "DdiPortCHpd" = "0"
120 register "DdiPort1Hpd" = "1"
121 register "DdiPort2Hpd" = "1"
122 register "DdiPort3Hpd" = "0"
123 register "DdiPort4Hpd" = "0"
124
125 register "DdiPortADdc" = "0"
126 register "DdiPortBDdc" = "1"
127 register "DdiPortCDdc" = "0"
128 register "DdiPort1Ddc" = "0"
129 register "DdiPort2Ddc" = "0"
130 register "DdiPort3Ddc" = "0"
131 register "DdiPort4Ddc" = "0"
132
133 # Disable PM to allow for shorter irq pulses
134 register "gpio_override_pm" = "1"
135 register "gpio_pm[0]" = "0"
136 register "gpio_pm[1]" = "0"
137 register "gpio_pm[2]" = "0"
138 register "gpio_pm[3]" = "0"
139 register "gpio_pm[4]" = "0"
140
141 # Enable "Intel Speed Shift Technology"
142 register "speed_shift_enable" = "1"
143
144 # Enable S0ix
145 register "s0ix_enable" = "1"
146
147 # Intel Common SoC Config
148 #+-------------------+---------------------------+
149 #| Field | Value |
150 #+-------------------+---------------------------+
151 #| chipset_lockdown | CHIPSET_LOCKDOWN_COREBOOT |
152 #| GSPI0 | cr50 TPM. Early init is |
153 #| | required to set up a BAR |
154 #| | for TPM communication |
155 #| | before memory is up |
156 #| GSPI1 | Fingerprint MCU
157 #| I2C0 | Audio |
158 #| I2C1 | Touchscreen |
159 #| I2C2 | WLAN, SAR0 |
160 #| I2C3 | Camera, SAR1 |
161 #| I2C5 | Trackpad |
162 #+-------------------+---------------------------+
163 register "common_soc_config" = "{
164 .chipset_lockdown = CHIPSET_LOCKDOWN_COREBOOT,
165 .gspi[0] = {
166 .speed_mhz = 1,
167 .early_init = 1,
168 },
169 .i2c[0] = {
170 .speed = I2C_SPEED_FAST,
171 },
172 .i2c[1] = {
173 .speed = I2C_SPEED_FAST,
174 },
175 .i2c[2] = {
176 .speed = I2C_SPEED_FAST,
177 },
178 .i2c[3] = {
179 .speed = I2C_SPEED_FAST,
180 },
181 .i2c[5] = {
182 .speed = I2C_SPEED_FAST,
183 },
184 }"
185
186 device domain 0 on
187 #From EDS(575683)
188 device pci 00.0 on end # Host Bridge 0x9A14:U/0x9A12:Y
189 device pci 02.0 on end # Graphics
190 device pci 04.0 on end # DPTF 0x9A03
191 device pci 05.0 off end # IPU 0x9A19
192 device pci 06.0 off end # PEG60 0x9A09
193 device pci 07.0 on end # TBT_PCIe0 0x9A23
194 device pci 07.1 on end # TBT_PCIe1 0x9A25
195 device pci 07.2 on end # TBT_PCIe2 0x9A27
196 device pci 07.3 on end # TBT_PCIe3 0x9A29
197 device pci 08.0 on end # GNA 0x9A11
198 device pci 09.0 off end # NPK 0x9A33
199 device pci 0a.0 off end # Crash-log SRAM 0x9A0D
200 device pci 0d.0 on end # USB xHCI 0x9A13
201 device pci 0d.1 off end # USB xDCI (OTG) 0x9A15
202 device pci 0d.2 off end # TBT DMA0 0x9A1B
203 device pci 0d.3 off end # TBT DMA1 0x9A1D
204 device pci 0e.0 off end # VMD 0x9A0B
205
206 # From PCH EDS(576591)
207 device pci 10.0 on end # I2C6 0xA0D8
208 device pci 10.1 off end # I2C7 0xA0D9
209 device pci 10.2 on end # CNVi: BT 0xA0F5 - A0F7
210 device pci 10.6 off end # THC0 0xA0D0
211 device pci 10.7 off end # THC1 0xA0D1
212
213 device pci 11.0 off end # UART3 0xA0DA
214 device pci 11.1 off end # UART4 0xA0DB
215 device pci 11.2 off end # UART5 0xA0DC
216 device pci 11.3 off end # UART6 0xA0DD
217
218 device pci 12.0 off end # SensorHUB 0xA0FC
219 device pci 12.6 off end # GSPI2 0x34FB
220
221 device pci 13.0 off end # GSPI3 0xA0FD
222 device pci 13.1 off end # GSPI4 0xA0FE
223 device pci 13.2 off end # GSPI5 0xA0DE
224 device pci 13.3 off end # GSPI6 0xA0DF
225
226 device pci 14.0 on end # USB3.1 xHCI 0xA0ED
227 device pci 14.1 off end # USB3.1 xDCI 0xA0EE
228 device pci 14.2 on end # Shared RAM 0xA0EF
Srinidhi N Kaushikac7d6b42020-03-05 17:19:51 -0800229 chip drivers/intel/wifi
230 register "wake" = "GPE0_PME_B0"
231 device pci 14.3 on end # CNVi: WiFi 0xA0F0 - A0F3
232 end
Nick Vaccarof9781912020-01-28 18:43:28 -0800233
234 device pci 15.0 on
235 chip drivers/i2c/generic
236 register "hid" = ""10EC5682""
237 register "name" = ""RT58""
238 register "desc" = ""Realtek RT5682""
239 register "irq" = "ACPI_IRQ_EDGE_HIGH(GPP_F8_IRQ)"
240 # Set the jd_src to RT5668_JD1 for jack detection
241 register "property_count" = "1"
242 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
243 register "property_list[0].name" = ""realtek,jd-src""
244 register "property_list[0].integer" = "1"
245 device i2c 1a on end
246 end
247 end # I2C #0 0xA0E8
248 device pci 15.1 on end # I2C1 0xA0E9
249 device pci 15.2 on
250 chip drivers/i2c/sx9310
251 register "desc" = ""SAR0 Proximity Sensor""
252 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_F14_IRQ)"
253 register "speed" = "I2C_SPEED_FAST"
254 register "uid" = "0"
255 register "reg_prox_ctrl0" = "0x10"
256 register "reg_prox_ctrl1" = "0x00"
257 register "reg_prox_ctrl2" = "0x84"
258 register "reg_prox_ctrl3" = "0x0e"
259 register "reg_prox_ctrl4" = "0x07"
260 register "reg_prox_ctrl5" = "0xc6"
261 register "reg_prox_ctrl6" = "0x20"
262 register "reg_prox_ctrl7" = "0x0d"
263 register "reg_prox_ctrl8" = "0x8d"
264 register "reg_prox_ctrl9" = "0x43"
265 register "reg_prox_ctrl10" = "0x1f"
266 register "reg_prox_ctrl11" = "0x00"
267 register "reg_prox_ctrl12" = "0x00"
268 register "reg_prox_ctrl13" = "0x00"
269 register "reg_prox_ctrl14" = "0x00"
270 register "reg_prox_ctrl15" = "0x00"
271 register "reg_prox_ctrl16" = "0x00"
272 register "reg_prox_ctrl17" = "0x00"
273 register "reg_prox_ctrl18" = "0x00"
274 register "reg_prox_ctrl19" = "0x00"
275 register "reg_sar_ctrl0" = "0x50"
276 register "reg_sar_ctrl1" = "0x8a"
277 register "reg_sar_ctrl2" = "0x3c"
278 device i2c 28 on end
279 end
280 end # I2C2 0xA0EA
281 device pci 15.3 on end # I2C3 0xA0EB
282
283 device pci 16.0 on end # HECI1 0xA0E0
284 device pci 16.1 off end # HECI2 0xA0E1
285 device pci 16.2 off end # CSME 0xA0E2
286 device pci 16.3 off end # CSME 0xA0E3
287 device pci 16.4 off end # HECI3 0xA0E4
288 device pci 16.5 off end # HECI4 0xA0E5
289
290 device pci 17.0 on end # SATA 0xA0D3
291
292 device pci 19.0 on end # I2C4 0xA0C5
293 device pci 19.1 on
294 chip drivers/i2c/generic
295 register "hid" = ""ELAN0000""
296 register "desc" = ""ELAN Touchpad""
297 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E15_IRQ)"
298 register "probed" = "1"
299 device i2c 15 on end
300 end
301 end # I2C5 0xA0C6
302 device pci 19.2 off end # UART2 0xA0C7
303
304 device pci 1c.0 on end # RP1 0xA0B8
305 device pci 1c.1 off end # RP2 0xA0B9
306 device pci 1c.2 off end # RP3 0xA0BA
307 device pci 1c.3 off end # RP4 0xA0BB
308 device pci 1c.4 off end # RP5 0xA0BC
309 device pci 1c.5 on end # WWAN RP6 0xA0BD
310 device pci 1c.6 on end # RP7 0xA0BE
311 device pci 1c.7 on end # SD Card RP8 0xA0BF
312
313 device pci 1d.0 on end # RP9 0xA0B0
314 device pci 1d.1 off end # RP10 0xA0B1
315 device pci 1d.2 off end # RP11 0xA0B2
316 device pci 1d.3 off end # RP12 0xA0B3
317 device pci 1d.4 off end # RP13 0xA0B4
318 device pci 1d.5 off end # RP14 0xA0B5
319 device pci 1d.6 off end # RP15 0xA0B6
320 device pci 1d.7 off end # RP16 0xA0B7
321
322 device pci 1e.0 on end # UART0 0xA0A8
323 device pci 1e.1 off end # UART1 0xA0A9
324 device pci 1e.2 on
325 chip drivers/spi/acpi
326 register "hid" = "ACPI_DT_NAMESPACE_HID"
327 register "compat_string" = ""google,cr50""
328 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_C21_IRQ)"
329 device spi 0 on end
330 end
331 end # GSPI0 0xA0AA
332 device pci 1e.3 on end # GSPI1 0xA0AB
333
334 device pci 1f.0 on end # eSPI 0xA080 - A09F
335 device pci 1f.1 off end # P2SB 0xA0A0
336 device pci 1f.2 on end # PMC 0xA0A1
337 device pci 1f.3 on
338 chip drivers/generic/max98357a
339 register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A10)"
340 register "sdmode_delay" = "5"
341 device generic 0 on end
342 end
343 end # Intel HD audio 0xA0C8-A0CF
344 device pci 1f.4 off end # SMBus 0xA0A3
345 device pci 1f.5 on end # SPI 0xA0A4
346 device pci 1f.6 off end # GbE 0x15E1/0x15E2
347 device pci 1f.7 off end # TH 0xA0A6
348 end
349end