blob: 25b42c74f7a3142a54454f55335ee3cf38b13d40 [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"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070046 register "PcieRpLtrEnable[8]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -080047 register "PcieClkSrcUsage[0]" = "8"
48 register "PcieClkSrcClkReq[0]" = "0"
49
Venkata Krishna Nimmagaddac34bb382020-01-15 10:13:26 -080050 # Enable Optane PCIE 11 using clk 0
51 register "PcieRpEnable[10]" = "1"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070052 register "PcieRpLtrEnable[10]" = "1"
Venkata Krishna Nimmagaddac34bb382020-01-15 10:13:26 -080053 register "HybridStorageMode" = "1"
54
Nick Vaccarof9781912020-01-28 18:43:28 -080055 # Enable SD Card PCIE 8 using clk 3
56 register "PcieRpEnable[7]" = "1"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070057 register "PcieRpLtrEnable[7]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -080058 register "PcieClkSrcUsage[3]" = "7"
59 register "PcieClkSrcClkReq[3]" = "3"
60
61 # Enable WLAN PCIE 7 using clk 1
62 register "PcieRpEnable[6]" = "1"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070063 register "PcieRpLtrEnable[6]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -080064 register "PcieClkSrcUsage[1]" = "6"
65 register "PcieClkSrcClkReq[1]" = "1"
66
Nick Vaccarof9781912020-01-28 18:43:28 -080067 # Mark SRCCLKREQ pins as unused that are routed for a Non-Clkreq functionality
Alex Levina53dbd42020-03-09 16:52:59 -070068 register "PcieClkSrcUsage[2]" = "0xFF"
Nick Vaccarof9781912020-01-28 18:43:28 -080069 register "PcieClkSrcUsage[4]" = "0xFF"
70 register "PcieClkSrcUsage[5]" = "0xFF"
71 register "PcieClkSrcUsage[6]" = "0xFF"
72
73 # Enable SATA
74 register "SataEnable" = "1"
75 register "SataMode" = "0"
76 register "SataSalpSupport" = "1"
77 register "SataPortsEnable[0]" = "0"
78 register "SataPortsEnable[1]" = "1"
79 register "SataPortsDevSlp[0]" = "0"
Wonkyu Kimb8bfe142020-04-21 17:07:57 -070080 register "SataPortsDevSlp[1]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -080081
82 register "SerialIoI2cMode" = "{
83 [PchSerialIoIndexI2C0] = PchSerialIoPci,
84 [PchSerialIoIndexI2C1] = PchSerialIoPci,
85 [PchSerialIoIndexI2C2] = PchSerialIoPci,
86 [PchSerialIoIndexI2C3] = PchSerialIoPci,
87 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
88 [PchSerialIoIndexI2C5] = PchSerialIoPci,
89 }"
90
91 register "SerialIoGSpiMode" = "{
92 [PchSerialIoIndexGSPI0] = PchSerialIoPci,
93 [PchSerialIoIndexGSPI1] = PchSerialIoPci,
94 [PchSerialIoIndexGSPI2] = PchSerialIoDisabled,
95 [PchSerialIoIndexGSPI3] = PchSerialIoDisabled,
96 }"
97
98 register "SerialIoGSpiCsMode" = "{
99 [PchSerialIoIndexGSPI0] = 1,
100 [PchSerialIoIndexGSPI1] = 1,
101 [PchSerialIoIndexGSPI2] = 0,
102 [PchSerialIoIndexGSPI3] = 0,
103 }"
104
105 register "SerialIoGSpiCsState" = "{
106 [PchSerialIoIndexGSPI0] = 0,
107 [PchSerialIoIndexGSPI1] = 0,
108 [PchSerialIoIndexGSPI2] = 0,
109 [PchSerialIoIndexGSPI3] = 0,
110 }"
111
112 register "SerialIoUartMode" = "{
113 [PchSerialIoIndexUART0] = PchSerialIoPci,
114 [PchSerialIoIndexUART1] = PchSerialIoDisabled,
115 [PchSerialIoIndexUART2] = PchSerialIoDisabled,
116 }"
117
Srinidhi N Kaushik22d5b072020-03-06 10:47:17 -0800118 # HD Audio
119 register "PchHdaDspEnable" = "1"
120 register "PchHdaAudioLinkHdaEnable" = "0"
121 register "PchHdaAudioLinkDmicEnable[0]" = "1"
122 register "PchHdaAudioLinkDmicEnable[1]" = "1"
123 register "PchHdaAudioLinkSspEnable[0]" = "1"
124 register "PchHdaAudioLinkSspEnable[1]" = "1"
Srinidhi N Kaushik22d5b072020-03-06 10:47:17 -0800125
Brandon Breitenstein01ec7132020-03-06 10:51:30 -0800126 # TCSS USB3
127 register "TcssXhciEn" = "1"
Brandon Breitensteinb7911c82020-04-06 15:34:19 -0700128 register "TcssAuxOri" = "1"
129 register "IomTypeCPortPadCfg[0]" = "0x090E000A"
130 register "IomTypeCPortPadCfg[1]" = "0x090E000D"
131 register "IomTypeCPortPadCfg[2]" = "0x0"
132 register "IomTypeCPortPadCfg[3]" = "0x0"
133 register "IomTypeCPortPadCfg[4]" = "0x0"
134 register "IomTypeCPortPadCfg[5]" = "0x0"
135 register "IomTypeCPortPadCfg[6]" = "0x0"
136 register "IomTypeCPortPadCfg[7]" = "0x0"
137
Brandon Breitenstein01ec7132020-03-06 10:51:30 -0800138
Nick Vaccarof9781912020-01-28 18:43:28 -0800139 # DP port
140 register "DdiPortAConfig" = "1" # eDP
141 register "DdiPortBConfig" = "0"
142
143 register "DdiPortAHpd" = "1"
144 register "DdiPortBHpd" = "1"
145 register "DdiPortCHpd" = "0"
146 register "DdiPort1Hpd" = "1"
147 register "DdiPort2Hpd" = "1"
148 register "DdiPort3Hpd" = "0"
149 register "DdiPort4Hpd" = "0"
150
151 register "DdiPortADdc" = "0"
152 register "DdiPortBDdc" = "1"
153 register "DdiPortCDdc" = "0"
154 register "DdiPort1Ddc" = "0"
155 register "DdiPort2Ddc" = "0"
156 register "DdiPort3Ddc" = "0"
157 register "DdiPort4Ddc" = "0"
158
159 # Disable PM to allow for shorter irq pulses
160 register "gpio_override_pm" = "1"
161 register "gpio_pm[0]" = "0"
162 register "gpio_pm[1]" = "0"
163 register "gpio_pm[2]" = "0"
164 register "gpio_pm[3]" = "0"
165 register "gpio_pm[4]" = "0"
166
167 # Enable "Intel Speed Shift Technology"
168 register "speed_shift_enable" = "1"
169
170 # Enable S0ix
171 register "s0ix_enable" = "1"
172
Sumeet R Pawnikar7d6bc602020-05-08 19:22:07 +0530173 # Enable DPTF
174 register "dptf_enable" = "1"
175
176 register "power_limits_config" = "{
177 .tdp_pl1_override = 15,
178 .tdp_pl2_override = 60,
179 }"
180
181 register "Device4Enable" = "1"
182
Nick Vaccarof9781912020-01-28 18:43:28 -0800183 # Intel Common SoC Config
184 #+-------------------+---------------------------+
185 #| Field | Value |
186 #+-------------------+---------------------------+
187 #| chipset_lockdown | CHIPSET_LOCKDOWN_COREBOOT |
188 #| GSPI0 | cr50 TPM. Early init is |
189 #| | required to set up a BAR |
190 #| | for TPM communication |
191 #| | before memory is up |
Alex Levin3bc41cf2020-03-06 10:54:10 -0800192 #| GSPI1 | Fingerprint MCU |
Nick Vaccarof9781912020-01-28 18:43:28 -0800193 #| I2C0 | Audio |
194 #| I2C1 | Touchscreen |
195 #| I2C2 | WLAN, SAR0 |
196 #| I2C3 | Camera, SAR1 |
197 #| I2C5 | Trackpad |
198 #+-------------------+---------------------------+
199 register "common_soc_config" = "{
200 .chipset_lockdown = CHIPSET_LOCKDOWN_COREBOOT,
201 .gspi[0] = {
202 .speed_mhz = 1,
203 .early_init = 1,
204 },
205 .i2c[0] = {
206 .speed = I2C_SPEED_FAST,
207 },
208 .i2c[1] = {
209 .speed = I2C_SPEED_FAST,
210 },
211 .i2c[2] = {
212 .speed = I2C_SPEED_FAST,
213 },
214 .i2c[3] = {
215 .speed = I2C_SPEED_FAST,
216 },
217 .i2c[5] = {
218 .speed = I2C_SPEED_FAST,
219 },
220 }"
221
222 device domain 0 on
223 #From EDS(575683)
224 device pci 00.0 on end # Host Bridge 0x9A14:U/0x9A12:Y
225 device pci 02.0 on end # Graphics
226 device pci 04.0 on end # DPTF 0x9A03
227 device pci 05.0 off end # IPU 0x9A19
228 device pci 06.0 off end # PEG60 0x9A09
229 device pci 07.0 on end # TBT_PCIe0 0x9A23
230 device pci 07.1 on end # TBT_PCIe1 0x9A25
231 device pci 07.2 on end # TBT_PCIe2 0x9A27
232 device pci 07.3 on end # TBT_PCIe3 0x9A29
233 device pci 08.0 on end # GNA 0x9A11
234 device pci 09.0 off end # NPK 0x9A33
235 device pci 0a.0 off end # Crash-log SRAM 0x9A0D
236 device pci 0d.0 on end # USB xHCI 0x9A13
237 device pci 0d.1 off end # USB xDCI (OTG) 0x9A15
238 device pci 0d.2 off end # TBT DMA0 0x9A1B
239 device pci 0d.3 off end # TBT DMA1 0x9A1D
240 device pci 0e.0 off end # VMD 0x9A0B
241
242 # From PCH EDS(576591)
Nick Vaccarof9781912020-01-28 18:43:28 -0800243 device pci 10.2 on end # CNVi: BT 0xA0F5 - A0F7
244 device pci 10.6 off end # THC0 0xA0D0
245 device pci 10.7 off end # THC1 0xA0D1
246
Nick Vaccarof9781912020-01-28 18:43:28 -0800247 device pci 12.0 off end # SensorHUB 0xA0FC
248 device pci 12.6 off end # GSPI2 0x34FB
249
250 device pci 13.0 off end # GSPI3 0xA0FD
Nick Vaccarof9781912020-01-28 18:43:28 -0800251
252 device pci 14.0 on end # USB3.1 xHCI 0xA0ED
253 device pci 14.1 off end # USB3.1 xDCI 0xA0EE
254 device pci 14.2 on end # Shared RAM 0xA0EF
Srinidhi N Kaushikac7d6b42020-03-05 17:19:51 -0800255 chip drivers/intel/wifi
256 register "wake" = "GPE0_PME_B0"
257 device pci 14.3 on end # CNVi: WiFi 0xA0F0 - A0F3
258 end
Nick Vaccarof9781912020-01-28 18:43:28 -0800259
260 device pci 15.0 on
261 chip drivers/i2c/generic
262 register "hid" = ""10EC5682""
263 register "name" = ""RT58""
264 register "desc" = ""Realtek RT5682""
Shaunak Saha022d9352020-05-12 10:37:59 -0700265 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_F8)"
Nick Vaccarof9781912020-01-28 18:43:28 -0800266 # Set the jd_src to RT5668_JD1 for jack detection
267 register "property_count" = "1"
268 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
269 register "property_list[0].name" = ""realtek,jd-src""
270 register "property_list[0].integer" = "1"
271 device i2c 1a on end
272 end
273 end # I2C #0 0xA0E8
Alex Levin34d9e682020-04-20 21:55:24 -0700274 device pci 15.1 on
275 chip drivers/i2c/hid
276 register "generic.hid" = ""GDIX0000""
277 register "generic.desc" = ""Goodix Touchscreen""
278 register "generic.irq" = "ACPI_IRQ_EDGE_LOW(GPP_E7_IRQ)"
279 register "generic.probed" = "1"
280 register "generic.reset_gpio" =
281 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C10)"
282 register "generic.reset_delay_ms" = "120"
283 register "generic.reset_off_delay_ms" = "3"
284 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A8)"
285 register "generic.enable_delay_ms" = "12"
286 register "generic.has_power_resource" = "1"
287 register "hid_desc_reg_offset" = "0x01"
288 device i2c 14 on end
289 end
290 chip drivers/i2c/hid
291 register "generic.hid" = ""ELAN90FC""
292 register "generic.desc" = ""ELAN Touchscreen""
293 register "generic.irq" = "ACPI_IRQ_EDGE_LOW(GPP_E7_IRQ)"
294 register "generic.probed" = "1"
295 register "generic.reset_gpio" =
296 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C10)"
297 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A8)"
298 register "generic.reset_delay_ms" = "20"
299 register "generic.has_power_resource" = "1"
300 register "generic.disable_gpio_export_in_crs" = "1"
301 register "hid_desc_reg_offset" = "0x01"
302 device i2c 10 on end
303 end
304 end # I2C1 0xA0E9
Nick Vaccarof9781912020-01-28 18:43:28 -0800305 device pci 15.2 on
306 chip drivers/i2c/sx9310
307 register "desc" = ""SAR0 Proximity Sensor""
308 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_F14_IRQ)"
309 register "speed" = "I2C_SPEED_FAST"
310 register "uid" = "0"
311 register "reg_prox_ctrl0" = "0x10"
312 register "reg_prox_ctrl1" = "0x00"
313 register "reg_prox_ctrl2" = "0x84"
314 register "reg_prox_ctrl3" = "0x0e"
315 register "reg_prox_ctrl4" = "0x07"
316 register "reg_prox_ctrl5" = "0xc6"
317 register "reg_prox_ctrl6" = "0x20"
318 register "reg_prox_ctrl7" = "0x0d"
319 register "reg_prox_ctrl8" = "0x8d"
320 register "reg_prox_ctrl9" = "0x43"
321 register "reg_prox_ctrl10" = "0x1f"
322 register "reg_prox_ctrl11" = "0x00"
323 register "reg_prox_ctrl12" = "0x00"
324 register "reg_prox_ctrl13" = "0x00"
325 register "reg_prox_ctrl14" = "0x00"
326 register "reg_prox_ctrl15" = "0x00"
327 register "reg_prox_ctrl16" = "0x00"
328 register "reg_prox_ctrl17" = "0x00"
329 register "reg_prox_ctrl18" = "0x00"
330 register "reg_prox_ctrl19" = "0x00"
331 register "reg_sar_ctrl0" = "0x50"
332 register "reg_sar_ctrl1" = "0x8a"
333 register "reg_sar_ctrl2" = "0x3c"
334 device i2c 28 on end
335 end
336 end # I2C2 0xA0EA
337 device pci 15.3 on end # I2C3 0xA0EB
338
339 device pci 16.0 on end # HECI1 0xA0E0
340 device pci 16.1 off end # HECI2 0xA0E1
341 device pci 16.2 off end # CSME 0xA0E2
342 device pci 16.3 off end # CSME 0xA0E3
343 device pci 16.4 off end # HECI3 0xA0E4
344 device pci 16.5 off end # HECI4 0xA0E5
345
346 device pci 17.0 on end # SATA 0xA0D3
347
348 device pci 19.0 on end # I2C4 0xA0C5
349 device pci 19.1 on
350 chip drivers/i2c/generic
351 register "hid" = ""ELAN0000""
352 register "desc" = ""ELAN Touchpad""
353 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E15_IRQ)"
354 register "probed" = "1"
355 device i2c 15 on end
356 end
357 end # I2C5 0xA0C6
358 device pci 19.2 off end # UART2 0xA0C7
359
360 device pci 1c.0 on end # RP1 0xA0B8
361 device pci 1c.1 off end # RP2 0xA0B9
362 device pci 1c.2 off end # RP3 0xA0BA
363 device pci 1c.3 off end # RP4 0xA0BB
364 device pci 1c.4 off end # RP5 0xA0BC
Alex Levina53dbd42020-03-09 16:52:59 -0700365 device pci 1c.5 off end # WWAN RP6 0xA0BD
Nick Vaccarof9781912020-01-28 18:43:28 -0800366 device pci 1c.6 on end # RP7 0xA0BE
367 device pci 1c.7 on end # SD Card RP8 0xA0BF
368
369 device pci 1d.0 on end # RP9 0xA0B0
370 device pci 1d.1 off end # RP10 0xA0B1
Venkata Krishna Nimmagaddac34bb382020-01-15 10:13:26 -0800371 device pci 1d.2 on end # RP11 0xA0B2
Nick Vaccarof9781912020-01-28 18:43:28 -0800372 device pci 1d.3 off end # RP12 0xA0B3
Nick Vaccarof9781912020-01-28 18:43:28 -0800373
374 device pci 1e.0 on end # UART0 0xA0A8
375 device pci 1e.1 off end # UART1 0xA0A9
376 device pci 1e.2 on
377 chip drivers/spi/acpi
378 register "hid" = "ACPI_DT_NAMESPACE_HID"
379 register "compat_string" = ""google,cr50""
380 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_C21_IRQ)"
381 device spi 0 on end
382 end
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600383 end # GSPI0 0xA0AA
Alex Levin3bc41cf2020-03-06 10:54:10 -0800384 device pci 1e.3 on
385 chip drivers/spi/acpi
386 register "name" = ""CRFP""
387 register "hid" = "ACPI_DT_NAMESPACE_HID"
388 register "uid" = "1"
389 register "compat_string" = ""google,cros-ec-spi""
390 register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW_WAKE(GPP_C20)"
391 device spi 0 on end
392 end # FPMCU
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600393 end # GSPI1 0xA0AB
Nick Vaccaro9a3486e2020-04-17 10:14:57 -0700394 device pci 1f.0 on
395 chip ec/google/chromeec
396 device pnp 0c09.0 on end
397 end
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600398 end # eSPI 0xA080 - A09F
Nick Vaccarof9781912020-01-28 18:43:28 -0800399 device pci 1f.1 off end # P2SB 0xA0A0
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600400 device pci 1f.2 hidden end # PMC 0xA0A1
Nick Vaccarof9781912020-01-28 18:43:28 -0800401 device pci 1f.3 on
402 chip drivers/generic/max98357a
Aamir Bohraa1c82c52020-03-16 18:57:48 +0530403 register "hid" = ""MX98357A""
Nick Vaccarof9781912020-01-28 18:43:28 -0800404 register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A10)"
405 register "sdmode_delay" = "5"
406 device generic 0 on end
407 end
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600408 end # Intel HD audio 0xA0C8-A0CF
Nick Vaccarof9781912020-01-28 18:43:28 -0800409 device pci 1f.4 off end # SMBus 0xA0A3
410 device pci 1f.5 on end # SPI 0xA0A4
411 device pci 1f.6 off end # GbE 0x15E1/0x15E2
412 device pci 1f.7 off end # TH 0xA0A6
413 end
414end