blob: 88aff01c0afa0c30ee9db2642506b2a933262d38 [file] [log] [blame]
Duncan Laurie9db8c252020-05-10 11:16:45 -07001fw_config
Nick Vaccaro2cc06002020-06-18 12:19:08 -07002 field DB_USB 0 3
3 option USB_ABSENT 0
4 option USB4_GEN2 1
5 option USB3_ACTIVE 2
6 option USB4_GEN3 3
7 option USB3_PASSIVE 4
8 option USB3_NO_A 5
Duncan Laurie9db8c252020-05-10 11:16:45 -07009 end
10 field THERMAL 4 7 end
11 field AUDIO 8 10
12 option NONE 0
13 option MAX98357_ALC5682I_I2S 1
14 option MAX98373_ALC5682I_I2S 2
15 option MAX98373_ALC5682_SNDW 3
16 end
17 field TABLETMODE 11
Nick Vaccaro2cc06002020-06-18 12:19:08 -070018 option TABLETMODE_DISABLED 0
19 option TABLETMODE_ENABLED 1
Duncan Laurie9db8c252020-05-10 11:16:45 -070020 end
Nick Vaccaro2cc06002020-06-18 12:19:08 -070021 field DB_LTE 12 13
22 option LTE_ABSENT 0
23 option LTE_PRESENT 1
24 end
25 field DB_SD 16 19
26 option SD_ABSENT 0
27 option SD_GL9755S 1
28 option SD_RTS5261 2
Duncan Laurie9db8c252020-05-10 11:16:45 -070029 end
30end
31
Nick Vaccarof9781912020-01-28 18:43:28 -080032chip soc/intel/tigerlake
33
34 device cpu_cluster 0 on
35 device lapic 0 on end
36 end
37
38 # GPE configuration
39 # Note that GPE events called out in ASL code rely on this
40 # route. i.e. If this route changes then the affected GPE
41 # offset bits also need to be changed.
42 register "pmc_gpe0_dw0" = "GPP_C"
43 register "pmc_gpe0_dw1" = "GPP_D"
44 register "pmc_gpe0_dw2" = "GPP_E"
45
Jamie Ryu154625b2020-06-12 02:59:26 -070046 # Enable heci communication
47 register "HeciEnabled" = "1"
48
Nick Vaccarof9781912020-01-28 18:43:28 -080049 # FSP configuration
50 register "SaGv" = "SaGv_Disabled"
51 register "SmbusEnable" = "0"
52
53 register "usb2_ports[0]" = "USB2_PORT_MID(OC_SKIP)" # Type-A Port A0
54 register "usb2_ports[1]" = "USB2_PORT_MID(OC_SKIP)" # Type-A Port A1
55 register "usb2_ports[2]" = "USB2_PORT_MID(OC_SKIP)" # M.2 WWAN
56 register "usb2_ports[3]" = "USB2_PORT_MID(OC_SKIP)" # Type-A / Type-C Cl
57 register "usb2_ports[4]" = "USB2_PORT_MID(OC_SKIP)" # M.2 Camera
58 register "usb2_ports[5]" = "USB2_PORT_EMPTY" # Type-A / Type-C Not Used
59 register "usb2_ports[6]" = "USB2_PORT_EMPTY" # Type-A / Type-C Not Used
60 register "usb2_ports[7]" = "USB2_PORT_EMPTY" # Type-A / Type-C Not Used
61 register "usb2_ports[8]" = "USB2_PORT_MID(OC_SKIP)" # Type-A / Type-C Co
62 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # M.2 Bluetooth
63
64 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC1)" # USB3/2 Type A port A0
65 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC2)" # USB3/2 Type A port A1
66 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)" # M.2 WWAN
67 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # M.2 Camera
68
Nick Vaccarof9781912020-01-28 18:43:28 -080069 # EC host command ranges are in 0x800-0x8ff & 0x200-0x20f
70 register "gen1_dec" = "0x00fc0801"
71 register "gen2_dec" = "0x000c0201"
72 # EC memory map range is 0x900-0x9ff
73 register "gen3_dec" = "0x00fc0901"
74
75 # Enable NVMe PCIE 9 using clk 0
76 register "PcieRpEnable[8]" = "1"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070077 register "PcieRpLtrEnable[8]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -080078 register "PcieClkSrcUsage[0]" = "8"
79 register "PcieClkSrcClkReq[0]" = "0"
80
Venkata Krishna Nimmagaddac34bb382020-01-15 10:13:26 -080081 # Enable Optane PCIE 11 using clk 0
82 register "PcieRpEnable[10]" = "1"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070083 register "PcieRpLtrEnable[10]" = "1"
Venkata Krishna Nimmagaddac34bb382020-01-15 10:13:26 -080084 register "HybridStorageMode" = "1"
85
Nick Vaccarof9781912020-01-28 18:43:28 -080086 # Enable SD Card PCIE 8 using clk 3
87 register "PcieRpEnable[7]" = "1"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070088 register "PcieRpLtrEnable[7]" = "1"
nick_xr_chenf446b812020-06-30 09:34:33 +080089 register "PcieRpHotPlug[7]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -080090 register "PcieClkSrcUsage[3]" = "7"
91 register "PcieClkSrcClkReq[3]" = "3"
92
93 # Enable WLAN PCIE 7 using clk 1
94 register "PcieRpEnable[6]" = "1"
Wonkyu Kime3bf8ba2020-04-07 23:34:12 -070095 register "PcieRpLtrEnable[6]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -080096 register "PcieClkSrcUsage[1]" = "6"
97 register "PcieClkSrcClkReq[1]" = "1"
98
Nick Vaccarof9781912020-01-28 18:43:28 -080099 # Mark SRCCLKREQ pins as unused that are routed for a Non-Clkreq functionality
Alex Levina53dbd42020-03-09 16:52:59 -0700100 register "PcieClkSrcUsage[2]" = "0xFF"
Nick Vaccarof9781912020-01-28 18:43:28 -0800101 register "PcieClkSrcUsage[4]" = "0xFF"
102 register "PcieClkSrcUsage[5]" = "0xFF"
103 register "PcieClkSrcUsage[6]" = "0xFF"
104
105 # Enable SATA
106 register "SataEnable" = "1"
107 register "SataMode" = "0"
108 register "SataSalpSupport" = "1"
109 register "SataPortsEnable[0]" = "0"
110 register "SataPortsEnable[1]" = "1"
111 register "SataPortsDevSlp[0]" = "0"
Wonkyu Kimb8bfe142020-04-21 17:07:57 -0700112 register "SataPortsDevSlp[1]" = "1"
Nick Vaccarof9781912020-01-28 18:43:28 -0800113
114 register "SerialIoI2cMode" = "{
115 [PchSerialIoIndexI2C0] = PchSerialIoPci,
116 [PchSerialIoIndexI2C1] = PchSerialIoPci,
117 [PchSerialIoIndexI2C2] = PchSerialIoPci,
118 [PchSerialIoIndexI2C3] = PchSerialIoPci,
119 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
120 [PchSerialIoIndexI2C5] = PchSerialIoPci,
121 }"
122
123 register "SerialIoGSpiMode" = "{
124 [PchSerialIoIndexGSPI0] = PchSerialIoPci,
125 [PchSerialIoIndexGSPI1] = PchSerialIoPci,
126 [PchSerialIoIndexGSPI2] = PchSerialIoDisabled,
127 [PchSerialIoIndexGSPI3] = PchSerialIoDisabled,
128 }"
129
130 register "SerialIoGSpiCsMode" = "{
131 [PchSerialIoIndexGSPI0] = 1,
132 [PchSerialIoIndexGSPI1] = 1,
133 [PchSerialIoIndexGSPI2] = 0,
134 [PchSerialIoIndexGSPI3] = 0,
135 }"
136
137 register "SerialIoGSpiCsState" = "{
138 [PchSerialIoIndexGSPI0] = 0,
139 [PchSerialIoIndexGSPI1] = 0,
140 [PchSerialIoIndexGSPI2] = 0,
141 [PchSerialIoIndexGSPI3] = 0,
142 }"
143
144 register "SerialIoUartMode" = "{
145 [PchSerialIoIndexUART0] = PchSerialIoPci,
146 [PchSerialIoIndexUART1] = PchSerialIoDisabled,
147 [PchSerialIoIndexUART2] = PchSerialIoDisabled,
148 }"
149
Srinidhi N Kaushik22d5b072020-03-06 10:47:17 -0800150 # HD Audio
151 register "PchHdaDspEnable" = "1"
152 register "PchHdaAudioLinkHdaEnable" = "0"
Duncan Laurie4dffa9c2020-05-10 11:20:20 -0700153 register "PchHdaAudioLinkDmicEnable[0]" = "0"
154 register "PchHdaAudioLinkDmicEnable[1]" = "0"
155 register "PchHdaAudioLinkSspEnable[0]" = "0"
156 register "PchHdaAudioLinkSspEnable[1]" = "0"
157 register "PchHdaAudioLinkSndwEnable[0]" = "0"
158 register "PchHdaAudioLinkSndwEnable[1]" = "0"
Srinidhi N Kaushik22d5b072020-03-06 10:47:17 -0800159
Brandon Breitenstein01ec7132020-03-06 10:51:30 -0800160 # TCSS USB3
161 register "TcssXhciEn" = "1"
Brandon Breitensteinb7911c82020-04-06 15:34:19 -0700162 register "TcssAuxOri" = "1"
163 register "IomTypeCPortPadCfg[0]" = "0x090E000A"
164 register "IomTypeCPortPadCfg[1]" = "0x090E000D"
Brandon Breitensteinc9a34512020-06-10 17:04:29 -0700165 register "IomTypeCPortPadCfg[2]" = "0x09000000"
166 register "IomTypeCPortPadCfg[3]" = "0x09000000"
167 register "IomTypeCPortPadCfg[4]" = "0x09000000"
168 register "IomTypeCPortPadCfg[5]" = "0x09000000"
169 register "IomTypeCPortPadCfg[6]" = "0x09000000"
170 register "IomTypeCPortPadCfg[7]" = "0x09000000"
Brandon Breitensteinb7911c82020-04-06 15:34:19 -0700171
John Zhaof5b33c02020-05-19 15:29:07 -0700172 # D3Hot and D3Cold for TCSS
173 register "TcssD3HotEnable" = "1"
John Zhao2c807ff2020-06-18 00:25:51 -0700174 register "TcssD3ColdEnable" = "0"
John Zhaof5b33c02020-05-19 15:29:07 -0700175
Nick Vaccarof9781912020-01-28 18:43:28 -0800176 # DP port
177 register "DdiPortAConfig" = "1" # eDP
178 register "DdiPortBConfig" = "0"
179
180 register "DdiPortAHpd" = "1"
181 register "DdiPortBHpd" = "1"
182 register "DdiPortCHpd" = "0"
183 register "DdiPort1Hpd" = "1"
184 register "DdiPort2Hpd" = "1"
185 register "DdiPort3Hpd" = "0"
186 register "DdiPort4Hpd" = "0"
187
188 register "DdiPortADdc" = "0"
189 register "DdiPortBDdc" = "1"
190 register "DdiPortCDdc" = "0"
191 register "DdiPort1Ddc" = "0"
192 register "DdiPort2Ddc" = "0"
193 register "DdiPort3Ddc" = "0"
194 register "DdiPort4Ddc" = "0"
195
196 # Disable PM to allow for shorter irq pulses
197 register "gpio_override_pm" = "1"
198 register "gpio_pm[0]" = "0"
199 register "gpio_pm[1]" = "0"
200 register "gpio_pm[2]" = "0"
201 register "gpio_pm[3]" = "0"
202 register "gpio_pm[4]" = "0"
203
204 # Enable "Intel Speed Shift Technology"
205 register "speed_shift_enable" = "1"
206
207 # Enable S0ix
208 register "s0ix_enable" = "1"
209
Sumeet R Pawnikar7d6bc602020-05-08 19:22:07 +0530210 # Enable DPTF
211 register "dptf_enable" = "1"
212
Tim Wawrzynczak2dcca0f2020-06-16 10:50:47 -0600213 register "power_limits_config[POWER_LIMITS_U_4_CORE]" = "{
Sumeet R Pawnikar7d6bc602020-05-08 19:22:07 +0530214 .tdp_pl1_override = 15,
215 .tdp_pl2_override = 60,
Tim Wawrzynczak2dcca0f2020-06-16 10:50:47 -0600216 .tdp_pl4 = 105,
217 }"
218 register "power_limits_config[POWER_LIMITS_U_2_CORE]" = "{
219 .tdp_pl1_override = 15,
220 .tdp_pl2_override = 38,
221 .tdp_pl4 = 71,
Sumeet R Pawnikar7d6bc602020-05-08 19:22:07 +0530222 }"
223
224 register "Device4Enable" = "1"
225
Sumeet R Pawnikar9f9b97e2020-06-30 14:18:41 +0530226 register "tcc_offset" = "10" # TCC of 90
227
Nick Vaccarof9781912020-01-28 18:43:28 -0800228 # Intel Common SoC Config
229 #+-------------------+---------------------------+
230 #| Field | Value |
231 #+-------------------+---------------------------+
232 #| chipset_lockdown | CHIPSET_LOCKDOWN_COREBOOT |
233 #| GSPI0 | cr50 TPM. Early init is |
234 #| | required to set up a BAR |
235 #| | for TPM communication |
236 #| | before memory is up |
Alex Levin3bc41cf2020-03-06 10:54:10 -0800237 #| GSPI1 | Fingerprint MCU |
Nick Vaccarof9781912020-01-28 18:43:28 -0800238 #| I2C0 | Audio |
239 #| I2C1 | Touchscreen |
240 #| I2C2 | WLAN, SAR0 |
241 #| I2C3 | Camera, SAR1 |
242 #| I2C5 | Trackpad |
243 #+-------------------+---------------------------+
244 register "common_soc_config" = "{
245 .chipset_lockdown = CHIPSET_LOCKDOWN_COREBOOT,
246 .gspi[0] = {
247 .speed_mhz = 1,
248 .early_init = 1,
249 },
250 .i2c[0] = {
251 .speed = I2C_SPEED_FAST,
252 },
253 .i2c[1] = {
254 .speed = I2C_SPEED_FAST,
255 },
256 .i2c[2] = {
257 .speed = I2C_SPEED_FAST,
258 },
259 .i2c[3] = {
260 .speed = I2C_SPEED_FAST,
261 },
262 .i2c[5] = {
263 .speed = I2C_SPEED_FAST,
264 },
265 }"
266
Venkata Krishna Nimmagadda7368da32020-06-09 00:11:34 -0700267 register "ext_fivr_settings" = "{
268 .configure_ext_fivr = 1,
269 .v1p05_enable_bitmap = FIVR_ENABLE_ALL_SX,
270 .vnn_enable_bitmap = FIVR_ENABLE_ALL_SX,
271 .v1p05_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL |
272 FIVR_VOLTAGE_MIN_ACTIVE |
273 FIVR_VOLTAGE_MIN_RETENTION,
274 .vnn_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL |
275 FIVR_VOLTAGE_MIN_ACTIVE |
276 FIVR_VOLTAGE_MIN_RETENTION,
277 .v1p05_icc_max_ma = 500,
278 .vnn_sx_voltage_mv = 1250,
279 }"
280
Nick Vaccarof9781912020-01-28 18:43:28 -0800281 device domain 0 on
282 #From EDS(575683)
283 device pci 00.0 on end # Host Bridge 0x9A14:U/0x9A12:Y
284 device pci 02.0 on end # Graphics
285 device pci 04.0 on end # DPTF 0x9A03
286 device pci 05.0 off end # IPU 0x9A19
287 device pci 06.0 off end # PEG60 0x9A09
John Zhao5d79a0c2020-05-13 16:44:38 -0700288 device pci 07.0 on end # TBT_PCIe0 0x9A23
289 device pci 07.1 on end # TBT_PCIe1 0x9A25
290 device pci 07.2 off end # TBT_PCIe2 0x9A27
291 device pci 07.3 off end # TBT_PCIe3 0x9A29
Nick Vaccarof9781912020-01-28 18:43:28 -0800292 device pci 08.0 on end # GNA 0x9A11
293 device pci 09.0 off end # NPK 0x9A33
294 device pci 0a.0 off end # Crash-log SRAM 0x9A0D
295 device pci 0d.0 on end # USB xHCI 0x9A13
296 device pci 0d.1 off end # USB xDCI (OTG) 0x9A15
John Zhao5d79a0c2020-05-13 16:44:38 -0700297 device pci 0d.2 on end # TBT DMA0 0x9A1B
Nick Vaccarof9781912020-01-28 18:43:28 -0800298 device pci 0d.3 off end # TBT DMA1 0x9A1D
299 device pci 0e.0 off end # VMD 0x9A0B
300
301 # From PCH EDS(576591)
Nick Vaccarof9781912020-01-28 18:43:28 -0800302 device pci 10.2 on end # CNVi: BT 0xA0F5 - A0F7
303 device pci 10.6 off end # THC0 0xA0D0
304 device pci 10.7 off end # THC1 0xA0D1
305
Nick Vaccarof9781912020-01-28 18:43:28 -0800306 device pci 12.0 off end # SensorHUB 0xA0FC
307 device pci 12.6 off end # GSPI2 0x34FB
308
309 device pci 13.0 off end # GSPI3 0xA0FD
Nick Vaccarof9781912020-01-28 18:43:28 -0800310
311 device pci 14.0 on end # USB3.1 xHCI 0xA0ED
312 device pci 14.1 off end # USB3.1 xDCI 0xA0EE
313 device pci 14.2 on end # Shared RAM 0xA0EF
Srinidhi N Kaushikac7d6b42020-03-05 17:19:51 -0800314 chip drivers/intel/wifi
315 register "wake" = "GPE0_PME_B0"
316 device pci 14.3 on end # CNVi: WiFi 0xA0F0 - A0F3
317 end
Nick Vaccarof3d399e2020-06-18 18:30:31 -0700318 device pci 15.0 on end # I2C #0 0xA0E8
319 device pci 15.1 on end # I2C1 0xA0E9
320 device pci 15.2 on end # I2C2 0xA0EA
Nick Vaccarof9781912020-01-28 18:43:28 -0800321 device pci 15.3 on end # I2C3 0xA0EB
322
323 device pci 16.0 on end # HECI1 0xA0E0
324 device pci 16.1 off end # HECI2 0xA0E1
325 device pci 16.2 off end # CSME 0xA0E2
326 device pci 16.3 off end # CSME 0xA0E3
327 device pci 16.4 off end # HECI3 0xA0E4
328 device pci 16.5 off end # HECI4 0xA0E5
329
330 device pci 17.0 on end # SATA 0xA0D3
331
332 device pci 19.0 on end # I2C4 0xA0C5
Nick Vaccarof3d399e2020-06-18 18:30:31 -0700333 device pci 19.1 on end # I2C5 0xA0C6
Nick Vaccarof9781912020-01-28 18:43:28 -0800334 device pci 19.2 off end # UART2 0xA0C7
335
336 device pci 1c.0 on end # RP1 0xA0B8
337 device pci 1c.1 off end # RP2 0xA0B9
338 device pci 1c.2 off end # RP3 0xA0BA
339 device pci 1c.3 off end # RP4 0xA0BB
340 device pci 1c.4 off end # RP5 0xA0BC
Alex Levina53dbd42020-03-09 16:52:59 -0700341 device pci 1c.5 off end # WWAN RP6 0xA0BD
Nick Vaccarof9781912020-01-28 18:43:28 -0800342 device pci 1c.6 on end # RP7 0xA0BE
343 device pci 1c.7 on end # SD Card RP8 0xA0BF
344
345 device pci 1d.0 on end # RP9 0xA0B0
346 device pci 1d.1 off end # RP10 0xA0B1
Venkata Krishna Nimmagaddac34bb382020-01-15 10:13:26 -0800347 device pci 1d.2 on end # RP11 0xA0B2
Nick Vaccarof9781912020-01-28 18:43:28 -0800348 device pci 1d.3 off end # RP12 0xA0B3
Nick Vaccarof9781912020-01-28 18:43:28 -0800349
350 device pci 1e.0 on end # UART0 0xA0A8
351 device pci 1e.1 off end # UART1 0xA0A9
352 device pci 1e.2 on
353 chip drivers/spi/acpi
354 register "hid" = "ACPI_DT_NAMESPACE_HID"
355 register "compat_string" = ""google,cr50""
356 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_C21_IRQ)"
357 device spi 0 on end
358 end
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600359 end # GSPI0 0xA0AA
Alex Levin3bc41cf2020-03-06 10:54:10 -0800360 device pci 1e.3 on
361 chip drivers/spi/acpi
362 register "name" = ""CRFP""
363 register "hid" = "ACPI_DT_NAMESPACE_HID"
364 register "uid" = "1"
365 register "compat_string" = ""google,cros-ec-spi""
366 register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW_WAKE(GPP_C20)"
367 device spi 0 on end
368 end # FPMCU
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600369 end # GSPI1 0xA0AB
Nick Vaccaro9a3486e2020-04-17 10:14:57 -0700370 device pci 1f.0 on
371 chip ec/google/chromeec
372 device pnp 0c09.0 on end
373 end
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600374 end # eSPI 0xA080 - A09F
Nick Vaccarof9781912020-01-28 18:43:28 -0800375 device pci 1f.1 off end # P2SB 0xA0A0
Tim Wawrzynczak6d20d0c2020-05-13 17:00:33 -0600376 device pci 1f.2 hidden end # PMC 0xA0A1
Duncan Laurie4dffa9c2020-05-10 11:20:20 -0700377 device pci 1f.3 on end # Intel HD audio 0xA0C8-A0CF
Nick Vaccarof9781912020-01-28 18:43:28 -0800378 device pci 1f.4 off end # SMBus 0xA0A3
379 device pci 1f.5 on end # SPI 0xA0A4
380 device pci 1f.6 off end # GbE 0x15E1/0x15E2
381 device pci 1f.7 off end # TH 0xA0A6
382 end
383end