blob: 8e6bc7714b912b84a20974f4f7a2090256da09c0 [file] [log] [blame]
Jeff Chase444c24a2021-06-03 16:43:20 -04001chip soc/intel/cannonlake
2 # Auto-switch between X4 NVMe and X2 NVMe.
3 register "TetonGlacierMode" = "1"
4
5 register "SerialIoDevMode" = "{
6 [PchSerialIoIndexI2C0] = PchSerialIoDisabled,
Matt Ziegelbaumba358a72021-10-11 23:44:44 -04007 [PchSerialIoIndexI2C1] = PchSerialIoPci,
Jeff Chase444c24a2021-06-03 16:43:20 -04008 [PchSerialIoIndexI2C2] = PchSerialIoPci,
9 [PchSerialIoIndexI2C3] = PchSerialIoPci,
Matt Ziegelbaumba358a72021-10-11 23:44:44 -040010 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
11 [PchSerialIoIndexI2C5] = PchSerialIoDisabled,
Jeff Chase444c24a2021-06-03 16:43:20 -040012 [PchSerialIoIndexSPI0] = PchSerialIoPci,
13 [PchSerialIoIndexSPI1] = PchSerialIoPci,
14 [PchSerialIoIndexSPI2] = PchSerialIoDisabled,
15 [PchSerialIoIndexUART0] = PchSerialIoSkipInit,
Jeff Chased9b714d2021-06-28 17:53:01 -040016 [PchSerialIoIndexUART1] = PchSerialIoPci,
Jeff Chase444c24a2021-06-03 16:43:20 -040017 [PchSerialIoIndexUART2] = PchSerialIoDisabled,
18 }"
19
20 # USB configuration
21 register "usb2_ports[0]" = "{
22 .enable = 1,
23 .ocpin = OC2,
24 .tx_bias = USB2_BIAS_0MV,
25 .tx_emp_enable = USB2_PRE_EMP_ON,
26 .pre_emp_bias = USB2_BIAS_11P25MV,
27 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP,
28 }" # Type-A Port 2
29 register "usb2_ports[1]" = "{
30 .enable = 1,
31 .ocpin = OC1,
32 .tx_bias = USB2_BIAS_0MV,
33 .tx_emp_enable = USB2_PRE_EMP_ON,
34 .pre_emp_bias = USB2_BIAS_28P15MV,
35 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP,
36 }" # Type-A Port 1
37 register "usb2_ports[2]" = "{
38 .enable = 1,
39 .ocpin = OC3,
40 .tx_bias = USB2_BIAS_0MV,
41 .tx_emp_enable = USB2_PRE_EMP_ON,
42 .pre_emp_bias = USB2_BIAS_28P15MV,
43 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP,
44 }" # Type-A Port 3
Kenneth Chan1d3cff32021-12-15 14:05:40 +080045 register "usb2_ports[3]" = "{
46 .enable = 1,
47 .ocpin = OC_SKIP,
48 .tx_bias = USB2_BIAS_0MV,
49 .tx_emp_enable = USB2_PRE_EMP_ON,
50 .pre_emp_bias = USB2_BIAS_28P15MV,
51 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP,
52 }" # Type-C Port
Jeff Chase444c24a2021-06-03 16:43:20 -040053 register "usb2_ports[4]" = "{
54 .enable = 1,
55 .ocpin = OC_SKIP,
56 .tx_bias = USB2_BIAS_0MV,
57 .tx_emp_enable = USB2_PRE_EMP_ON,
58 .pre_emp_bias = USB2_BIAS_28P15MV,
59 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP,
60 }" # Type-A Port 4
61 register "usb2_ports[5]" = "{
62 .enable = 1,
63 .ocpin = OC0,
64 .tx_bias = USB2_BIAS_0MV,
65 .tx_emp_enable = USB2_PRE_EMP_ON,
66 .pre_emp_bias = USB2_BIAS_28P15MV,
67 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP,
68 }" # Type-A port 0
69 register "usb2_ports[6]" = "USB2_PORT_EMPTY"
70 register "usb2_ports[7]" = "USB2_PORT_EMPTY"
71 register "usb2_ports[8]" = "USB2_PORT_EMPTY"
72 register "usb2_ports[9]" = "{
73 .enable = 1,
74 .ocpin = OC_SKIP,
75 .tx_bias = USB2_BIAS_0MV,
76 .tx_emp_enable = USB2_PRE_EMP_ON,
77 .pre_emp_bias = USB2_BIAS_28P15MV,
78 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP,
79 }" # BT
80
81 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC2)" # Type-A Port 2
82 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC3)" # Type-A Port 3
83 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC1)" # Type-A Port 1
84 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-C
85 register "usb3_ports[4]" = "USB3_PORT_DEFAULT(OC0)" # Type-A Port 0
86 register "usb3_ports[5]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A Port 4
87
88 # Bitmap for Wake Enable on USB attach/detach
89 register "usb2_wake_enable_bitmap" = "USB_PORT_WAKE_ENABLE(1) | \
90 USB_PORT_WAKE_ENABLE(2) | \
91 USB_PORT_WAKE_ENABLE(3) | \
92 USB_PORT_WAKE_ENABLE(5) | \
93 USB_PORT_WAKE_ENABLE(6)"
94 register "usb3_wake_enable_bitmap" = "USB_PORT_WAKE_ENABLE(1) | \
95 USB_PORT_WAKE_ENABLE(2) | \
96 USB_PORT_WAKE_ENABLE(3) | \
97 USB_PORT_WAKE_ENABLE(5) | \
98 USB_PORT_WAKE_ENABLE(6)"
99
100 # Enable eMMC HS400
101 register "ScsEmmcHs400Enabled" = "1"
102
103 # EMMC Tx CMD Delay
104 # Refer to EDS-Vol2-14.3.7.
105 # [14:8] steps of delay for DDR mode, each 125ps, range: 0 - 39.
106 # [6:0] steps of delay for SDR mode, each 125ps, range: 0 - 39.
107 register "common_soc_config.emmc_dll.emmc_tx_cmd_cntl" = "0x505"
108
109 # EMMC TX DATA Delay 1
110 # Refer to EDS-Vol2-14.3.8.
111 # [14:8] steps of delay for HS400, each 125ps, range: 0 - 78.
112 # [6:0] steps of delay for SDR104/HS200, each 125ps, range: 0 - 79.
113 register "common_soc_config.emmc_dll.emmc_tx_data_cntl1" = "0x911"
114
115 # EMMC TX DATA Delay 2
116 # Refer to EDS-Vol2-14.3.9.
117 # [30:24] steps of delay for SDR50, each 125ps, range: 0 - 79.
118 # [22:16] steps of delay for DDR50, each 125ps, range: 0 - 78.
119 # [14:8] steps of delay for SDR25/HS50, each 125ps, range: 0 -79.
120 # [6:0] steps of delay for SDR12, each 125ps. Range: 0 - 79.
121 register "common_soc_config.emmc_dll.emmc_tx_data_cntl2" = "0x1C262828"
122
123 # EMMC RX CMD/DATA Delay 1
124 # Refer to EDS-Vol2-14.3.10.
125 # [30:24] steps of delay for SDR50, each 125ps, range: 0 - 119.
126 # [22:16] steps of delay for DDR50, each 125ps, range: 0 - 78.
127 # [14:8] steps of delay for SDR25/HS50, each 125ps, range: 0 - 119.
128 # [6:0] steps of delay for SDR12, each 125ps, range: 0 - 119.
129 register "common_soc_config.emmc_dll.emmc_rx_cmd_data_cntl1" = "0x1C16583b"
130
131 # EMMC RX CMD/DATA Delay 2
132 # Refer to EDS-Vol2-14.3.12.
133 # [17:16] stands for Rx Clock before Output Buffer,
134 # 00: Rx clock after output buffer,
135 # 01: Rx clock before output buffer,
136 # 10: Automatic selection based on working mode.
137 # 11: Reserved
138 # [14:8] steps of delay for Auto Tuning Mode, each 125ps, range: 0 - 39.
139 # [6:0] steps of delay for HS200, each 125ps, range: 0 - 79.
140 register "common_soc_config.emmc_dll.emmc_rx_cmd_data_cntl2" = "0x1001D"
141
142 # EMMC Rx Strobe Delay
143 # Refer to EDS-Vol2-14.3.11.
144 # [14:8] Rx Strobe Delay DLL 1(HS400 Mode), each 125ps, range: 0 - 39.
145 # [6:0] Rx Strobe Delay DLL 2(HS400 Mode), each 125ps, range: 0 - 39.
146 register "common_soc_config.emmc_dll.emmc_rx_strobe_cntl" = "0x1515"
147
148 # Intel HDA - disable I2S Audio SSP1 and DMIC0 as puff variant does not have them.
149 register "PchHdaAudioLinkSsp1" = "0"
150 register "PchHdaAudioLinkDmic0" = "0"
151
152 # Intel Common SoC Config
153 #+-------------------+---------------------------+
154 #| Field | Value |
155 #+-------------------+---------------------------+
156 #| GSPI0 | cr50 TPM. Early init is |
157 #| | required to set up a BAR |
158 #| | for TPM communication |
159 #| | before memory is up |
Matt Ziegelbaumba358a72021-10-11 23:44:44 -0400160 #| I2C1 | USI (Touch screen) |
161 #| I2C2 | SCALER |
162 #| I2C3 | TPU |
Jeff Chase444c24a2021-06-03 16:43:20 -0400163 #+-------------------+---------------------------+
164 register "common_soc_config" = "{
165 .gspi[0] = {
166 .speed_mhz = 1,
167 .early_init = 1,
168 },
Matt Ziegelbaumba358a72021-10-11 23:44:44 -0400169 .i2c[1] = {
Jeff Chase444c24a2021-06-03 16:43:20 -0400170 .speed = I2C_SPEED_FAST,
Matt Ziegelbaumba358a72021-10-11 23:44:44 -0400171 .rise_time_ns = 60,
172 .fall_time_ns = 60,
Jeff Chase444c24a2021-06-03 16:43:20 -0400173 },
174 .i2c[2] = {
175 .speed = I2C_SPEED_FAST,
176 .rise_time_ns = 60,
177 .fall_time_ns = 60,
178 },
179 .i2c[3] = {
180 .speed = I2C_SPEED_FAST,
181 .rise_time_ns = 60,
182 .fall_time_ns = 60,
183 },
Jeff Chase444c24a2021-06-03 16:43:20 -0400184 }"
185
Jeff Chased9b714d2021-06-28 17:53:01 -0400186 # PCIe root port 7 for LAN
Jeff Chase444c24a2021-06-03 16:43:20 -0400187 register "PcieRpEnable[6]" = "1"
188 register "PcieRpLtrEnable[6]" = "1"
Jeff Chase444c24a2021-06-03 16:43:20 -0400189 # Uses CLK SRC 0
190 register "PcieClkSrcUsage[0]" = "6"
191 register "PcieClkSrcClkReq[0]" = "0"
192
Jeff Chased9b714d2021-06-28 17:53:01 -0400193 # PCIe root port 8 for WLAN
194 register "PcieRpEnable[7]" = "1"
195 register "PcieRpLtrEnable[7]" = "1"
196 # Uses CLK SRC 3
197 register "PcieClkSrcUsage[3]" = "7"
198 register "PcieClkSrcClkReq[3]" = "3"
199
200 # PCIe root port 9 for SSD (PCIe Lanes 9-12)
201 register "PcieRpEnable[8]" = "1"
202 register "PcieRpLtrEnable[8]" = "1"
203 # RP 9 uses CLK SRC 1
204 register "PcieClkSrcUsage[1]" = "8"
205 register "PcieClkSrcClkReq[1]" = "1"
206
207 # PCIe root port 10-12 disabled
208 register "PcieRpEnable[9]" = "0"
209 register "PcieRpEnable[10]" = "0"
210 register "PcieRpEnable[11]" = "0"
211
212 # PCIe root port 13 TPU0
213 register "PcieRpEnable[12]" = "1"
214 register "PcieRpLtrEnable[12]" = "1"
215 # RP 13 uses CLK SRC 2
216 register "PcieClkSrcUsage[2]" = "12"
217 register "PcieClkSrcClkReq[2]" = "2"
218
219 # PCIe root port 14 TPU1
220 register "PcieRpEnable[13]" = "1"
221 register "PcieRpLtrEnable[13]" = "1"
222 # RP 14 uses CLK SRC 4
223 register "PcieClkSrcUsage[4]" = "13"
224 register "PcieClkSrcClkReq[4]" = "4"
225
226 register "PcieRpEnable[14]" = "0"
227 register "PcieRpEnable[15]" = "0"
228
Jeff Chase444c24a2021-06-03 16:43:20 -0400229 # GPIO for SD card detect
230 register "sdcard_cd_gpio" = "vSD3_CD_B"
231
232 # SATA port 1 Gen3 Strength
233 # Port1 Tx De-Emphasis = 20*log(0x20/64) = -6dB
234 register "sata_port[1].TxGen3DeEmphEnable" = "1"
235 register "sata_port[1].TxGen3DeEmph" = "0x20"
236
237 device domain 0 on
238 device pci 04.0 on
239 chip drivers/intel/dptf
240 ## Active Policy
241 register "policies.active[0]" = "{.target=DPTF_CPU,
Jeff Chased9b714d2021-06-28 17:53:01 -0400242 .thresholds={TEMP_PCT(94, 0),}}"
Jeff Chase444c24a2021-06-03 16:43:20 -0400243 register "policies.active[1]" = "{.target=DPTF_TEMP_SENSOR_0,
Kenneth Chan9b9fe922022-01-06 16:42:48 +0800244 .thresholds={TEMP_PCT(82, 80),
Kenneth Chanbde3c562021-08-05 11:32:15 +0800245 TEMP_PCT(80, 70),
Kenneth Chan9b9fe922022-01-06 16:42:48 +0800246 TEMP_PCT(78, 60),
247 TEMP_PCT(75, 50),
248 TEMP_PCT(73, 40),
249 TEMP_PCT(35, 30),}}"
Jeff Chase444c24a2021-06-03 16:43:20 -0400250
251 ## Passive Policy
Jeff Chased9b714d2021-06-28 17:53:01 -0400252 register "policies.passive[0]" = "DPTF_PASSIVE(CPU, CPU, 95, 5000)"
Kenneth Chanbde3c562021-08-05 11:32:15 +0800253 register "policies.passive[1]" = "DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 85, 5000)"
254 register "policies.passive[2]" = "DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 85, 5000)"
Jeff Chase444c24a2021-06-03 16:43:20 -0400255
256 ## Critical Policy
257 register "policies.critical[0]" = "DPTF_CRITICAL(CPU, 100, SHUTDOWN)"
Kenneth Chanbde3c562021-08-05 11:32:15 +0800258 register "policies.critical[1]" = "DPTF_CRITICAL(TEMP_SENSOR_0, 90, SHUTDOWN)"
259 register "policies.critical[2]" = "DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN)"
Jeff Chase444c24a2021-06-03 16:43:20 -0400260
261 ## Power Limits Control
262 # PL1 is fixed at 15W, avg over 28-32s interval
Jeff Chased9b714d2021-06-28 17:53:01 -0400263 # 51-51W PL2 in 1000mW increments, avg over 28-32s interval
Jeff Chase444c24a2021-06-03 16:43:20 -0400264 register "controls.power_limits.pl1" = "{
265 .min_power = 15000,
266 .max_power = 15000,
267 .time_window_min = 28 * MSECS_PER_SEC,
268 .time_window_max = 32 * MSECS_PER_SEC,
Jeff Chased9b714d2021-06-28 17:53:01 -0400269 .granularity = 125,}"
Jeff Chase444c24a2021-06-03 16:43:20 -0400270 register "controls.power_limits.pl2" = "{
Jeff Chased9b714d2021-06-28 17:53:01 -0400271 .min_power = 51000,
272 .max_power = 51000,
Jeff Chase444c24a2021-06-03 16:43:20 -0400273 .time_window_min = 28 * MSECS_PER_SEC,
274 .time_window_max = 32 * MSECS_PER_SEC,
275 .granularity = 1000,}"
276
277 ## Charger Performance Control (Control, mA)
278 register "controls.charger_perf[0]" = "{ 255, 1700 }"
279 register "controls.charger_perf[1]" = "{ 24, 1500 }"
280 register "controls.charger_perf[2]" = "{ 16, 1000 }"
281 register "controls.charger_perf[3]" = "{ 8, 500 }"
282
283 ## Fan Performance Control (Percent, Speed, Noise, Power)
284 register "controls.fan_perf[0]" = "{ 90, 6700, 220, 2200, }"
285 register "controls.fan_perf[1]" = "{ 80, 5800, 180, 1800, }"
286 register "controls.fan_perf[2]" = "{ 70, 5000, 145, 1450, }"
287 register "controls.fan_perf[3]" = "{ 60, 4900, 115, 1150, }"
288 register "controls.fan_perf[4]" = "{ 50, 3838, 90, 900, }"
289 register "controls.fan_perf[5]" = "{ 40, 2904, 55, 550, }"
290 register "controls.fan_perf[6]" = "{ 30, 2337, 30, 300, }"
291 register "controls.fan_perf[7]" = "{ 20, 1608, 15, 150, }"
292 register "controls.fan_perf[8]" = "{ 10, 800, 10, 100, }"
293 register "controls.fan_perf[9]" = "{ 0, 0, 0, 50, }"
294
295 # Fan options
296 register "options.fan.fine_grained_control" = "1"
297 register "options.fan.step_size" = "2"
298
299 device generic 0 on end
300 end
301 end # DPTF 0x1903
302 device pci 14.0 on
303 chip drivers/usb/acpi
304 device usb 0.0 on
305 chip drivers/usb/acpi
306 register "desc" = ""USB2 Type-A Front Left""
307 register "type" = "UPC_TYPE_A"
308 register "group" = "ACPI_PLD_GROUP(0, 0)"
309 device usb 2.0 on end
310 end
311 chip drivers/usb/acpi
312 register "desc" = ""USB2 Type-C Port Rear""
313 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
314 register "group" = "ACPI_PLD_GROUP(1, 3)"
315 device usb 2.1 on end
316 end
317 chip drivers/usb/acpi
318 register "desc" = ""USB2 Type-A Front Right""
319 register "type" = "UPC_TYPE_A"
320 register "group" = "ACPI_PLD_GROUP(0, 1)"
321 device usb 2.2 on end
322 end
323 chip drivers/usb/acpi
324 register "desc" = ""USB2 Type-A Rear Right""
325 register "type" = "UPC_TYPE_A"
326 register "group" = "ACPI_PLD_GROUP(1, 2)"
327 device usb 2.3 on end
328 end
329 chip drivers/usb/acpi
330 register "desc" = ""USB2 Type-A Rear Middle""
331 register "type" = "UPC_TYPE_A"
332 register "group" = "ACPI_PLD_GROUP(1, 1)"
333 device usb 2.4 on end
334 end
335 chip drivers/usb/acpi
336 register "desc" = ""USB2 Type-A Rear Left""
337 register "type" = "UPC_TYPE_A"
338 register "group" = "ACPI_PLD_GROUP(1, 0)"
339 device usb 2.5 on end
340 end
341 chip drivers/usb/acpi
342 device usb 2.6 off end
343 end
344 chip drivers/usb/acpi
345 register "desc" = ""USB3 Type-A Front Left""
346 register "type" = "UPC_TYPE_USB3_A"
347 register "group" = "ACPI_PLD_GROUP(0, 0)"
348 device usb 3.0 on end
349 end
350 chip drivers/usb/acpi
351 register "desc" = ""USB3 Type-A Front Right""
352 register "type" = "UPC_TYPE_USB3_A"
353 register "group" = "ACPI_PLD_GROUP(0, 1)"
354 device usb 3.1 on end
355 end
356 chip drivers/usb/acpi
357 register "desc" = ""USB3 Type-A Rear Right""
358 register "type" = "UPC_TYPE_USB3_A"
359 register "group" = "ACPI_PLD_GROUP(1, 2)"
360 device usb 3.2 on end
361 end
362 chip drivers/usb/acpi
363 register "desc" = ""USB3 Type-C Rear""
364 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
365 register "group" = "ACPI_PLD_GROUP(1, 3)"
366 device usb 3.3 on end
367 end
368 chip drivers/usb/acpi
Jeff Chased9b714d2021-06-28 17:53:01 -0400369 # USB3 Port 5 is not populated
370 device usb 3.4 off end
Jeff Chase444c24a2021-06-03 16:43:20 -0400371 end
372 chip drivers/usb/acpi
Jeff Chased9b714d2021-06-28 17:53:01 -0400373 register "desc" = ""USB3 M.2 HDMI-to-USB""
Jeff Chase444c24a2021-06-03 16:43:20 -0400374 register "type" = "UPC_TYPE_USB3_A"
Jeff Chased9b714d2021-06-28 17:53:01 -0400375 register "group" = "ACPI_PLD_GROUP(2, 0)"
Jeff Chase444c24a2021-06-03 16:43:20 -0400376 device usb 3.5 on end
377 end
378 end
379 end
380 end # USB xHCI
381 device pci 15.0 off
382 # RFU - Reserved for Future Use.
383 end # I2C #0
Rehan Ghori3fe76532022-03-02 20:06:59 -0500384 device pci 15.1 on # I2C #1, USI (Touch screen)
385 chip drivers/i2c/hid
386 register "generic.hid" = ""ILTK0001""
387 register "generic.desc" = ""ILITEK Touchscreen""
388 register "generic.irq" = "ACPI_IRQ_EDGE_LOW(GPP_D16_IRQ)"
389 register "generic.probed" = "1"
390 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D15)"
391 register "generic.reset_delay_ms" = "600"
392 register "generic.wake" = "GPE0_DW2_16"
393 register "generic.has_power_resource" = "1"
394 register "generic.disable_gpio_export_in_crs" = "1"
395 register "hid_desc_reg_offset" = "0x01"
396 device i2c 41 on end
397 end
398 end
Matt Ziegelbaumba358a72021-10-11 23:44:44 -0400399 device pci 15.2 on end # I2C #2, SCALER
400 device pci 15.3 on end # I2C #3, TPU
Jeff Chased9b714d2021-06-28 17:53:01 -0400401 device pci 16.0 on end # Management Engine Interface 1
Matt Ziegelbaumba358a72021-10-11 23:44:44 -0400402 device pci 19.0 off end # I2C #4
Jeff Chased9b714d2021-06-28 17:53:01 -0400403 device pci 1a.0 on end # eMMC
404 device pci 1c.6 on # PCI Root Port 7 (LAN)
405 chip drivers/net # RTL8111H Ethernet NIC
Jeff Chase444c24a2021-06-03 16:43:20 -0400406 register "customized_leds" = "0x05af"
407 register "wake" = "GPE0_DW1_07" # GPP_C7
408 register "stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A18)"
409 register "stop_delay_ms" = "12" # NIC needs time to quiesce
410 register "stop_off_delay_ms" = "1"
411 register "has_power_resource" = "1"
412 register "device_index" = "0"
413 device pci 00.0 on end
414 end
Jeff Chased9b714d2021-06-28 17:53:01 -0400415 end
416 device pci 1c.7 on # PCI Root Port 8 (WLAN)
417 register "PcieRpSlotImplemented[7]" = "1" # M.2 Slot
418 end
419 device pci 1d.0 on # PCI Root Port 9 (SSD)
420 register "PcieRpSlotImplemented[8]" = "1" # M.2 Slot
421 end
422 device pci 1d.1 off end # PCI Root Port 10 (Not connected)
423 device pci 1d.2 off end # PCI Root Port 11 (Not connected)
424 device pci 1d.3 off end # PCI Root Port 12 (Not connected)
425 device pci 1d.4 on # PCI Root Port 13 (TPU0)
426 register "PcieRpSlotImplemented[12]" = "1" # M.2 Slot
427 end
428 device pci 1d.5 on # PCI Root Port 14 (TPU1)
429 register "PcieRpSlotImplemented[13]" = "1" # M.2 Slot
430 end
431 device pci 1d.6 on end # PCI Root Port 15 (non-root)
432 device pci 1d.7 on end # PCI Root Port 16 (non-root)
433 device pci 1e.0 on end # UART #0
434 device pci 1e.1 on end # UART #1
Jeff Chase444c24a2021-06-03 16:43:20 -0400435 device pci 1e.3 off end # GSPI #1
436 end
437
438 # VR Settings Configuration for 4 Domains
439 #+----------------+-------+-------+-------+-------+
440 #| Domain/Setting | SA | IA | GTUS | GTS |
441 #+----------------+-------+-------+-------+-------+
442 #| Psi1Threshold | 20A | 20A | 20A | 20A |
443 #| Psi2Threshold | 5A | 5A | 5A | 5A |
444 #| Psi3Threshold | 1A | 1A | 1A | 1A |
445 #| Psi3Enable | 1 | 1 | 1 | 1 |
446 #| Psi4Enable | 1 | 1 | 1 | 1 |
447 #| ImonSlope | 0 | 0 | 0 | 0 |
448 #| ImonOffset | 0 | 0 | 0 | 0 |
449 #| VrVoltageLimit | 1.52V | 1.52V | 1.52V | 1.52V |
450 #| AcLoadline | 10.04 | 1.81 | 3.19 | 3.19 |
451 #| DcLoadline | 10.04 | 1.81 | 3.19 | 3.19 |
452 #+----------------+-------+-------+-------+-------+
453 #Note: IccMax settings are moved to SoC code
454 register "domain_vr_config[VR_SYSTEM_AGENT]" = "{
455 .vr_config_enable = 1,
456 .psi1threshold = VR_CFG_AMP(20),
457 .psi2threshold = VR_CFG_AMP(5),
458 .psi3threshold = VR_CFG_AMP(1),
459 .psi3enable = 1,
460 .psi4enable = 1,
461 .imon_slope = 0x0,
462 .imon_offset = 0x0,
463 .icc_max = 0,
464 .voltage_limit = 1520,
465 .ac_loadline = 1004,
466 .dc_loadline = 1004,
467 }"
468
469 register "domain_vr_config[VR_IA_CORE]" = "{
470 .vr_config_enable = 1,
471 .psi1threshold = VR_CFG_AMP(20),
472 .psi2threshold = VR_CFG_AMP(5),
473 .psi3threshold = VR_CFG_AMP(1),
474 .psi3enable = 1,
475 .psi4enable = 1,
476 .imon_slope = 0x0,
477 .imon_offset = 0x0,
478 .icc_max = 0,
479 .voltage_limit = 1520,
480 .ac_loadline = 181,
481 .dc_loadline = 181,
482 }"
483
484 register "domain_vr_config[VR_GT_UNSLICED]" = "{
485 .vr_config_enable = 1,
486 .psi1threshold = VR_CFG_AMP(20),
487 .psi2threshold = VR_CFG_AMP(5),
488 .psi3threshold = VR_CFG_AMP(1),
489 .psi3enable = 1,
490 .psi4enable = 1,
491 .imon_slope = 0x0,
492 .imon_offset = 0x0,
493 .icc_max = 0,
494 .voltage_limit = 1520,
495 .ac_loadline = 319,
496 .dc_loadline = 319,
497 }"
498
499 register "domain_vr_config[VR_GT_SLICED]" = "{
500 .vr_config_enable = 1,
501 .psi1threshold = VR_CFG_AMP(20),
502 .psi2threshold = VR_CFG_AMP(5),
503 .psi3threshold = VR_CFG_AMP(1),
504 .psi3enable = 1,
505 .psi4enable = 1,
506 .imon_slope = 0x0,
507 .imon_offset = 0x0,
508 .icc_max = 0,
509 .voltage_limit = 1520,
510 .ac_loadline = 319,
511 .dc_loadline = 319,
512 }"
513
514end