blob: 20f78b446c61bf0d0a76634cc60e9dde0131c549 [file] [log] [blame]
Joey Pengfe2d0ec2021-09-02 14:19:37 +08001fw_config
2 field DB_USB 0 1
3 option DB_USB_ABSENT 0
4 option DB_USB3_NO_A 1
Joey Pengefe0fe22022-01-27 10:59:38 +08005 option DB_USB3_1C_1A 2
Joey Pengfe2d0ec2021-09-02 14:19:37 +08006 end
7 field DB_SD 2 3
8 option DB_SD_ABSENT 0
9 option DB_SD_OZ711LV2LN 1
10 end
11 field KB_BL 4
12 option KB_BL_ABSENT 0
13 option KB_BL_PRESENT 1
14 end
15 field AUDIO 5 7
16 option AUDIO_UNKNOWN 0
17 option AUDIO_MAX98357_ALC5682I_I2S 1
Joey Penge8743752021-10-13 15:46:02 +080018 option AUDIO_MAX98357_ALC5682I_VS_I2S 2
Joey Pengfe2d0ec2021-09-02 14:19:37 +080019 end
20 field KB_LAYOUT 8 9
21 option KB_LAYOUT_DEFAULT 0
22 end
23 field WIFI_SAR_ID 10 11
24 option WIFI_SAR_ID_0 0
25 option WIFI_SAR_ID_1 1
26 option WIFI_SAR_ID_2 2
27 option WIFI_SAR_ID_3 3
28 end
29 field BOOT_NVME_MASK 12
30 option BOOT_NVME_DISABLED 0
31 option BOOT_NVME_ENABLED 1
32 end
33 field BOOT_EMMC_MASK 13
34 option BOOT_EMMC_DISABLED 0
35 option BOOT_EMMC_ENABLED 1
36 end
Joey Peng51a43f92022-03-21 16:58:23 +080037 field THERMAL 16
38 option THERMAL_FAN_TABLE_0 0
39 option THERMAL_FAN_TABLE_1 1
40 end
Dan Callaghanb00bfd02021-10-28 21:26:12 +110041 field HPS 17
42 option HPS_ABSENT 0
43 option HPS_PRESENT 1
44 end
Joey Pengfe2d0ec2021-09-02 14:19:37 +080045end
Kevin Chang819afd82021-07-16 19:37:06 +080046chip soc/intel/alderlake
Kevin Changccd09052022-01-20 14:39:54 +080047 # Acoustic settings
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053048 register "acoustic_noise_mitigation" = "1"
49 register "slow_slew_rate[VR_DOMAIN_IA]" = "SLEW_FAST_8"
50 register "slow_slew_rate[VR_DOMAIN_GT]" = "SLEW_FAST_8"
51 register "fast_pkg_c_ramp_disable[VR_DOMAIN_IA]" = "1"
52 register "fast_pkg_c_ramp_disable[VR_DOMAIN_GT]" = "1"
leo.chou616c07c2022-05-18 09:11:31 +080053 register "PreWake" = "100"
Kevin Chang70701eb2021-11-04 19:35:31 +080054 register "ext_fivr_settings" = "{
55 .configure_ext_fivr = 1,
56 .v1p05_enable_bitmap = FIVR_ENABLE_ALL_SX,
57 .vnn_enable_bitmap = FIVR_ENABLE_ALL_SX,
58 .v1p05_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL |
59 FIVR_VOLTAGE_MIN_ACTIVE |
60 FIVR_VOLTAGE_MIN_RETENTION,
61 .vnn_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL |
62 FIVR_VOLTAGE_MIN_ACTIVE |
63 FIVR_VOLTAGE_MIN_RETENTION,
64 .v1p05_icc_max_ma = 500,
65 .vnn_sx_voltage_mv = 1250,
66 }"
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053067 register "tcss_aux_ori" = "1"
Joey Peng46f769d2021-09-14 22:06:34 +080068 register "typec_aux_bias_pads[0]" = "{.pad_auxp_dc = GPP_E22, .pad_auxn_dc = GPP_E23}"
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053069 register "sagv" = "SaGv_Enabled"
Joey Peng46f769d2021-09-14 22:06:34 +080070
Joey Penge0260352021-08-04 17:44:18 +080071 register "usb2_ports[1]" = "USB2_PORT_EMPTY" # Disable Port 1
72 register "usb2_ports[2]" = "USB2_PORT_TYPE_C(OC2)" # DB USB2_C1
73 register "usb2_ports[3]" = "USB2_PORT_EMPTY" # Disable M.2 WWAN
Joey Pengefe0fe22022-01-27 10:59:38 +080074 register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # DB Type-A Port A1
75
76 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC3)" # USB3/2 Type A port A1
Joey Penge0260352021-08-04 17:44:18 +080077 register "usb3_ports[3]" = "USB3_PORT_EMPTY" # Disable M.2 WWAN
Kevin Chang819afd82021-07-16 19:37:06 +080078
Joey Penge0260352021-08-04 17:44:18 +080079 # Intel Common SoC Config
80 #+-------------------+---------------------------+
81 #| Field | Value |
82 #+-------------------+---------------------------+
Joey Penge0260352021-08-04 17:44:18 +080083 #| GSPI1 | Fingerprint MCU |
84 #| I2C0 | Audio |
Kevin Chang8550fbc2021-12-24 10:28:59 +080085 #| I2C1 | cr50 TPM. Early init is |
Joey Penge0260352021-08-04 17:44:18 +080086 #| | required to set up a BAR |
87 #| | for TPM communication |
Kevin Chang8550fbc2021-12-24 10:28:59 +080088 #| I2C2 | HPS |
89 #| I2C3 | Touchscreen |
Joey Penge0260352021-08-04 17:44:18 +080090 #| I2C5 | Trackpad |
91 #+-------------------+---------------------------+
Joey Penge0260352021-08-04 17:44:18 +080092 register "common_soc_config" = "{
93 .i2c[0] = {
94 .speed = I2C_SPEED_FAST,
95 },
96 .i2c[1] = {
Kevin Chang8550fbc2021-12-24 10:28:59 +080097 .early_init = 1,
Joey Penge0260352021-08-04 17:44:18 +080098 .speed = I2C_SPEED_FAST,
Kevin Chang8550fbc2021-12-24 10:28:59 +080099 .rise_time_ns = 600,
100 .fall_time_ns = 400,
101 .data_hold_time_ns = 50,
Joey Penge0260352021-08-04 17:44:18 +0800102 },
103 .i2c[2] = {
104 .speed = I2C_SPEED_FAST,
105 },
106 .i2c[3] = {
107 .early_init = 1,
108 .speed = I2C_SPEED_FAST,
109 },
110 .i2c[5] = {
Joey Peng43373492022-01-20 18:50:43 +0800111 .rise_time_ns = 650,
112 .fall_time_ns = 400,
113 .data_hold_time_ns = 500,
114 .speed_config[0] = {
115 .speed = I2C_SPEED_FAST,
116 .scl_lcnt = 160,
117 .scl_hcnt = 70,
118 .sda_hold = 40,
119 }
Joey Penge0260352021-08-04 17:44:18 +0800120 },
121 }"
122 # I2C Port Config
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +0530123 register "serial_io_i2c_mode" = "{
Joey Penge0260352021-08-04 17:44:18 +0800124 [PchSerialIoIndexI2C0] = PchSerialIoPci,
125 [PchSerialIoIndexI2C1] = PchSerialIoPci,
126 [PchSerialIoIndexI2C2] = PchSerialIoPci,
127 [PchSerialIoIndexI2C3] = PchSerialIoPci,
128 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
129 [PchSerialIoIndexI2C5] = PchSerialIoPci,
130 }"
131 device domain 0 on
Kevin Change3bb49e2021-10-15 13:51:49 +0800132 device ref dtt on
133 chip drivers/intel/dptf
134 ## sensor information
135 register "options.tsr[0].desc" = ""DRAM_SOC""
136 register "options.tsr[1].desc" = ""Ambient""
137 register "options.tsr[2].desc" = ""Charger""
138 register "options.tsr[3].desc" = ""WWAN""
139
140 # TODO: below values are initial reference values only
141 ## Active Policy
142 register "policies.active" = "{
143 [0] = {
144 .target = DPTF_CPU,
145 .thresholds = {
146 TEMP_PCT(85, 90),
147 TEMP_PCT(80, 74),
148 TEMP_PCT(75, 74),
149 TEMP_PCT(70, 74),
150 TEMP_PCT(65, 74),
151 }
152 },
153 [1] = {
154 .target = DPTF_TEMP_SENSOR_1,
155 .thresholds = {
Kevin Chang219bda72021-12-27 20:05:40 +0800156 TEMP_PCT(50, 70),
157 TEMP_PCT(47, 58),
158 TEMP_PCT(45, 47),
Kevin Change3bb49e2021-10-15 13:51:49 +0800159 TEMP_PCT(42, 45),
Kevin Chang219bda72021-12-27 20:05:40 +0800160 TEMP_PCT(39, 39),
Kevin Change3bb49e2021-10-15 13:51:49 +0800161 }
162 },
163 [2] = {
164 .target = DPTF_TEMP_SENSOR_2,
165 .thresholds = {
Kevin Chang219bda72021-12-27 20:05:40 +0800166 TEMP_PCT(50, 70),
167 TEMP_PCT(47, 58),
168 TEMP_PCT(45, 47),
Kevin Change3bb49e2021-10-15 13:51:49 +0800169 TEMP_PCT(42, 45),
Kevin Chang219bda72021-12-27 20:05:40 +0800170 TEMP_PCT(39, 39),
Kevin Change3bb49e2021-10-15 13:51:49 +0800171 }
172 },
173 [3] = {
174 .target = DPTF_TEMP_SENSOR_3,
175 .thresholds = {
Kevin Chang219bda72021-12-27 20:05:40 +0800176 TEMP_PCT(50, 70),
177 TEMP_PCT(47, 58),
178 TEMP_PCT(45, 47),
Kevin Change3bb49e2021-10-15 13:51:49 +0800179 TEMP_PCT(42, 45),
Kevin Chang219bda72021-12-27 20:05:40 +0800180 TEMP_PCT(39, 39),
Kevin Change3bb49e2021-10-15 13:51:49 +0800181 }
182 }
183 }"
184
185 ## Passive Policy
186 register "policies.passive" = "{
187 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
188 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 90, 6000),
189 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 90, 6000),
190 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 90, 6000),
191 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 90, 6000),
192 }"
193
194 ## Critical Policy
195 register "policies.critical" = "{
196 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
197 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 100, SHUTDOWN),
198 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 100, SHUTDOWN),
199 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 100, SHUTDOWN),
200 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 100, SHUTDOWN),
201 }"
202
203 register "controls.power_limits" = "{
204 .pl1 = {
205 .min_power = 3000,
Kevin Chang219bda72021-12-27 20:05:40 +0800206 .max_power = 15000,
Kevin Change3bb49e2021-10-15 13:51:49 +0800207 .time_window_min = 28 * MSECS_PER_SEC,
208 .time_window_max = 32 * MSECS_PER_SEC,
209 .granularity = 200,
210 },
211 .pl2 = {
212 .min_power = 55000,
213 .max_power = 55000,
214 .time_window_min = 28 * MSECS_PER_SEC,
215 .time_window_max = 32 * MSECS_PER_SEC,
216 .granularity = 1000,
217 }
218 }"
219
220 ## Charger Performance Control (Control, mA)
221 register "controls.charger_perf" = "{
222 [0] = { 255, 1700 },
223 [1] = { 24, 1500 },
224 [2] = { 16, 1000 },
225 [3] = { 8, 500 }
226 }"
227
228 ## Fan Performance Control (Percent, Speed, Noise, Power)
229 register "controls.fan_perf" = "{
230 [0] = { 100, 6000, 220, 2200, },
231 [1] = { 92, 5500, 180, 1800, },
232 [2] = { 85, 5000, 145, 1450, },
Kevin Chang219bda72021-12-27 20:05:40 +0800233 [3] = { 70, 4400, 115, 1150, },
234 [4] = { 56, 3900, 90, 900, },
235 [5] = { 45, 3300, 55, 550, },
236 [6] = { 38, 3000, 30, 300, },
237 [7] = { 33, 2900, 15, 150, },
Kevin Change3bb49e2021-10-15 13:51:49 +0800238 [8] = { 10, 800, 10, 100, },
239 [9] = { 0, 0, 0, 50, }
240 }"
241
242 ## Fan options
243 register "options.fan.fine_grained_control" = "1"
244 register "options.fan.step_size" = "2"
245
Joey Peng51a43f92022-03-21 16:58:23 +0800246 device generic 0 on
247 probe THERMAL THERMAL_FAN_TABLE_0
248 end
249 end
250 chip drivers/intel/dptf
251 ## sensor information
252 register "options.tsr[0].desc" = ""DRAM_SOC""
253 register "options.tsr[1].desc" = ""Ambient""
254 register "options.tsr[2].desc" = ""Charger""
255 register "options.tsr[3].desc" = ""WWAN""
256
257 ## Active Policy
258 register "policies.active" = "{
259 [0] = {
260 .target = DPTF_CPU,
261 .thresholds = {
262 TEMP_PCT(85, 90),
263 TEMP_PCT(80, 74),
264 TEMP_PCT(75, 74),
265 TEMP_PCT(70, 74),
266 TEMP_PCT(65, 74),
267 }
268 },
269 [1] = {
270 .target = DPTF_TEMP_SENSOR_1,
271 .thresholds = {
272 TEMP_PCT(57, 70),
273 TEMP_PCT(54, 60),
274 TEMP_PCT(48, 60),
275 TEMP_PCT(45, 45),
276 TEMP_PCT(42, 39),
277 }
278 },
279 [2] = {
280 .target = DPTF_TEMP_SENSOR_2,
281 .thresholds = {
282 TEMP_PCT(57, 70),
283 TEMP_PCT(54, 50),
284 TEMP_PCT(48, 60),
285 TEMP_PCT(45, 45),
286 TEMP_PCT(42, 39),
287 }
288 },
289 [3] = {
290 .target = DPTF_TEMP_SENSOR_3,
291 .thresholds = {
292 TEMP_PCT(57, 70),
293 TEMP_PCT(54, 60),
294 TEMP_PCT(48, 60),
295 TEMP_PCT(45, 45),
296 TEMP_PCT(42, 39),
297 }
298 }
299 }"
300
301 ## Passive Policy
302 register "policies.passive" = "{
303 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
304 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 90, 6000),
305 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 90, 6000),
306 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 90, 6000),
307 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 90, 6000),
308 }"
309
310 ## Critical Policy
311 register "policies.critical" = "{
312 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
313 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 100, SHUTDOWN),
314 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 100, SHUTDOWN),
315 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 100, SHUTDOWN),
316 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 100, SHUTDOWN),
317 }"
318
319 register "controls.power_limits" = "{
320 .pl1 = {
321 .min_power = 3000,
322 .max_power = 15000,
323 .time_window_min = 28 * MSECS_PER_SEC,
324 .time_window_max = 32 * MSECS_PER_SEC,
325 .granularity = 200,
326 },
327 .pl2 = {
328 .min_power = 55000,
329 .max_power = 55000,
330 .time_window_min = 28 * MSECS_PER_SEC,
331 .time_window_max = 32 * MSECS_PER_SEC,
332 .granularity = 1000,
333 }
334 }"
335
336 ## Charger Performance Control (Control, mA)
337 register "controls.charger_perf" = "{
338 [0] = { 255, 1700 },
339 [1] = { 24, 1500 },
340 [2] = { 16, 1000 },
341 [3] = { 8, 500 }
342 }"
343
344 ## Fan Performance Control (Percent, Speed, Noise, Power)
345 register "controls.fan_perf" = "{
346 [0] = { 100, 6000, 220, 2200, },
347 [1] = { 92, 5500, 180, 1800, },
348 [2] = { 85, 5000, 145, 1450, },
349 [3] = { 70, 4400, 115, 1150, },
350 [4] = { 56, 3900, 90, 900, },
351 [5] = { 45, 3300, 55, 550, },
352 [6] = { 38, 3000, 30, 300, },
353 [7] = { 33, 2900, 15, 150, },
354 [8] = { 10, 800, 10, 100, },
355 [9] = { 0, 0, 0, 50, }
356 }"
357
358 ## Fan options
359 register "options.fan.fine_grained_control" = "1"
360 register "options.fan.step_size" = "2"
361
362 device generic 1 on
363 probe THERMAL THERMAL_FAN_TABLE_1
364 end
Kevin Change3bb49e2021-10-15 13:51:49 +0800365 end
366 end
Joey Peng7bca1e42021-11-08 15:21:32 +0800367 device ref pcie4_0 on
368 # Enable CPU PCIE RP 1 using CLK 0
369 register "cpu_pcie_rp[CPU_RP(1)]" = "{
370 .clk_req = 0,
371 .clk_src = 0,
Tracy Wuec877d62022-01-13 21:53:02 +0800372 .flags = PCIE_RP_LTR | PCIE_RP_AER,
Joey Peng7bca1e42021-11-08 15:21:32 +0800373 }"
Kevin Changf1edd4f2021-12-24 20:45:00 +0800374 probe BOOT_NVME_MASK BOOT_NVME_ENABLED
Joey Peng7bca1e42021-11-08 15:21:32 +0800375 end
Joey Penge0260352021-08-04 17:44:18 +0800376 device ref tbt_pcie_rp0 off end
377 device ref tbt_pcie_rp1 off end
378 device ref tbt_pcie_rp2 off end
379 device ref i2c0 on
380 chip drivers/i2c/generic
381 register "hid" = ""10EC5682""
382 register "name" = ""RT58""
383 register "desc" = ""Headset Codec""
384 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
385 # Set the jd_src to RT5668_JD1 for jack detection
386 register "property_count" = "1"
387 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
388 register "property_list[0].name" = ""realtek,jd-src""
389 register "property_list[0].integer" = "1"
390 device i2c 1a on
Joey Pengfe2d0ec2021-09-02 14:19:37 +0800391 probe AUDIO AUDIO_MAX98357_ALC5682I_I2S
Joey Penge0260352021-08-04 17:44:18 +0800392 end
393 end
Joey Penge8743752021-10-13 15:46:02 +0800394 chip drivers/i2c/generic
395 register "hid" = ""RTL5682""
396 register "name" = ""RT58""
397 register "desc" = ""Headset Codec""
398 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
399 # Set the jd_src to RT5668_JD1 for jack detection
400 register "property_count" = "1"
401 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
402 register "property_list[0].name" = ""realtek,jd-src""
403 register "property_list[0].integer" = "1"
404 device i2c 1a on
405 probe AUDIO AUDIO_MAX98357_ALC5682I_VS_I2S
406 end
407 end
Joey Penge0260352021-08-04 17:44:18 +0800408 end
409 device ref i2c1 on
Kevin Chang8550fbc2021-12-24 10:28:59 +0800410 chip drivers/i2c/tpm
411 register "hid" = ""GOOG0005""
412 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
413 device i2c 50 on end
414 end
415 end
416 device ref i2c2 on
417 chip drivers/i2c/generic
418 register "hid" = ""GOOG0020""
419 register "desc" = ""Chrome OS HPS""
420 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E7)" # EN_HPS_PWR
421 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E3_IRQ)" # HPS_INT_ODL
422 # HPS uses I2C addresses 0x30 and 0x51.
423 # The address we provide here is not significant because
424 # neither coreboot nor Linux have a driver for HPS,
425 # it's only used from userspace.
426 device i2c 30 on
427 probe HPS HPS_PRESENT
428 end
429 end
430 end
431 device ref i2c3 on
Joey Penge0260352021-08-04 17:44:18 +0800432 chip drivers/i2c/hid
433 register "generic.hid" = ""GDIX0000""
434 register "generic.desc" = ""Goodix Touchscreen""
435 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
436 register "generic.probed" = "1"
437 register "generic.reset_gpio" =
438 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
439 # Parameter T5 >= 180ms
440 register "generic.reset_delay_ms" = "180"
441 # Parameter T2 >= 1ms
442 register "generic.reset_off_delay_ms" = "3"
443 register "generic.enable_gpio" =
444 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
445 # Parameter T1 >= 20ms
446 register "generic.enable_delay_ms" = "20"
447 register "generic.stop_gpio" =
448 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E3)"
449 # Parameter T4 >= 1ms
450 register "generic.stop_off_delay_ms" = "1"
451 register "generic.has_power_resource" = "1"
Tim Wawrzynczaka7e85d42021-12-16 11:17:07 -0700452 register "generic.disable_gpio_export_in_crs" = "1"
Joey Penge0260352021-08-04 17:44:18 +0800453 register "hid_desc_reg_offset" = "0x01"
454 device i2c 5d on end
455 end
456 chip drivers/i2c/generic
457 register "hid" = ""ELAN0001""
458 register "desc" = ""ELAN Touchscreen""
459 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
460 register "probed" = "1"
461 register "reset_gpio" =
462 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
463 register "reset_delay_ms" = "20"
464 register "enable_gpio" =
465 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
466 register "enable_delay_ms" = "1"
467 register "has_power_resource" = "1"
Tim Wawrzynczaka7e85d42021-12-16 11:17:07 -0700468 register "disable_gpio_export_in_crs" = "1"
Joey Penge0260352021-08-04 17:44:18 +0800469 device i2c 10 on end
470 end
471 end
472 device ref i2c5 on
473 chip drivers/i2c/generic
474 register "hid" = ""ELAN0000""
475 register "desc" = ""ELAN Touchpad""
476 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
Joey Peng0087de82021-11-16 13:51:12 +0800477 register "wake" = "GPE0_DW2_14"
Joey Penge0260352021-08-04 17:44:18 +0800478 register "probed" = "1"
479 device i2c 15 on end
480 end
481 chip drivers/i2c/hid
482 register "generic.hid" = ""PNP0C50""
483 register "generic.desc" = ""Synaptics Touchpad""
484 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
Joey Peng0087de82021-11-16 13:51:12 +0800485 register "generic.wake" = "GPE0_DW2_14"
Joey Penge0260352021-08-04 17:44:18 +0800486 register "generic.probed" = "1"
487 register "hid_desc_reg_offset" = "0x20"
488 device i2c 2c on end
489 end
490 end
491 device ref hda on
492 chip drivers/generic/max98357a
493 register "hid" = ""MX98357A""
494 register "sdmode_gpio" =
495 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
496 register "sdmode_delay" = "5"
Joey Penge0260352021-08-04 17:44:18 +0800497 device generic 0 on
Joey Pengfe2d0ec2021-09-02 14:19:37 +0800498 probe AUDIO AUDIO_MAX98357_ALC5682I_I2S
Joey Pengb0c1e732021-10-27 15:38:08 +0800499 probe AUDIO AUDIO_MAX98357_ALC5682I_VS_I2S
Joey Penge0260352021-08-04 17:44:18 +0800500 end
501 end
502 end
503 device ref pcie_rp5 on
504 chip soc/intel/common/block/pcie/rtd3
505 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B11)"
506 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_H20)"
507 register "srcclk_pin" = "2"
508 device generic 0 on end
509 end
510 register "pch_pcie_rp[PCH_RP(5)]" = "{
511 .clk_src = 2,
512 .clk_req = 2,
513 .flags = PCIE_RP_LTR | PCIE_RP_AER,
514 }"
515 end
516 device ref pcie_rp6 off end
517 device ref pcie_rp8 on
518 chip soc/intel/common/block/pcie/rtd3
519 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H13)"
520 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D18)"
521 register "srcclk_pin" = "3"
Joey Pengfe2d0ec2021-09-02 14:19:37 +0800522 device generic 0 on
523 probe DB_SD DB_SD_OZ711LV2LN
524 end
Joey Penge0260352021-08-04 17:44:18 +0800525 end
526 end
527 device ref pcie_rp9 on
Kevin Changf1edd4f2021-12-24 20:45:00 +0800528 # Enable NVMe PCIE 9 using clk 0
529 register "pch_pcie_rp[PCH_RP(9)]" = "{
530 .clk_src = 0,
531 .clk_req = 0,
532 .flags = PCIE_RP_LTR | PCIE_RP_AER,
Kevin Chang1f545992022-03-22 11:22:02 +0800533 .pcie_rp_aspm = ASPM_L1,
Kevin Changf1edd4f2021-12-24 20:45:00 +0800534 }"
Joey Penge0260352021-08-04 17:44:18 +0800535 chip soc/intel/common/block/pcie/rtd3
536 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D11)"
537 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_B4)"
Kevin Changf1edd4f2021-12-24 20:45:00 +0800538 register "srcclk_pin" = "0"
Subrata Banikf8878792022-06-20 06:46:03 +0000539 register "ext_pm_support" = "ACPI_PCIE_RP_EMIT_ALL"
Kevin Changf1edd4f2021-12-24 20:45:00 +0800540 device generic 0 on
541 probe BOOT_EMMC_MASK BOOT_EMMC_ENABLED
542 end
Joey Penge0260352021-08-04 17:44:18 +0800543 end
Kevin Changf1edd4f2021-12-24 20:45:00 +0800544 probe BOOT_EMMC_MASK BOOT_EMMC_ENABLED
Joey Penge0260352021-08-04 17:44:18 +0800545 end
546 device ref gspi1 on
547 chip drivers/spi/acpi
548 register "name" = ""CRFP""
549 register "hid" = "ACPI_DT_NAMESPACE_HID"
550 register "uid" = "1"
551 register "compat_string" = ""google,cros-ec-spi""
552 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F15_IRQ)"
553 register "wake" = "GPE0_DW2_15"
554 device spi 0 on end
555 end # FPMCU
556 end
557 device ref pch_espi on
558 chip ec/google/chromeec
559 use conn0 as mux_conn[0]
560 use conn1 as mux_conn[1]
561 device pnp 0c09.0 on end
562 end
563 end
564 device ref pmc hidden
565 chip drivers/intel/pmc_mux
566 device generic 0 on
567 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100568 use usb2_port1 as usb2_port
569 use tcss_usb3_port1 as usb3_port
Joey Penge0260352021-08-04 17:44:18 +0800570 device generic 0 alias conn0 on end
571 end
572 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100573 use usb2_port3 as usb2_port
574 use tcss_usb3_port3 as usb3_port
Joey Penge0260352021-08-04 17:44:18 +0800575 device generic 2 alias conn1 on end
576 end
577 end
578 end
579 end
580 device ref tcss_xhci on
581 chip drivers/usb/acpi
582 device ref tcss_root_hub on
583 chip drivers/usb/acpi
584 register "desc" = ""USB3 Type-C Port C0 (MLB)""
585 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000586 register "use_custom_pld" = "true"
Subrata Banikf04faa12022-02-16 19:17:29 +0530587 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
Joey Penge0260352021-08-04 17:44:18 +0800588 device ref tcss_usb3_port1 on end
589 end
590 chip drivers/usb/acpi
591 register "desc" = ""USB3 Type-C Port C1 (DB)""
592 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000593 register "use_custom_pld" = "true"
Won Chung0d303392022-05-23 22:57:55 +0000594 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(3, 1))"
Joey Pengfe2d0ec2021-09-02 14:19:37 +0800595 device ref tcss_usb3_port3 on
596 probe DB_USB DB_USB3_NO_A
Joey Pengefe0fe22022-01-27 10:59:38 +0800597 probe DB_USB DB_USB3_1C_1A
Joey Pengfe2d0ec2021-09-02 14:19:37 +0800598 end
Joey Penge0260352021-08-04 17:44:18 +0800599 end
600 end
601 end
602 end
603 device ref xhci on
604 chip drivers/usb/acpi
605 device ref xhci_root_hub on
606 chip drivers/usb/acpi
607 register "desc" = ""USB2 Type-C Port C0 (MLB)""
608 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000609 register "use_custom_pld" = "true"
Subrata Banikf04faa12022-02-16 19:17:29 +0530610 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
Joey Penge0260352021-08-04 17:44:18 +0800611 device ref usb2_port1 on end
612 end
613 chip drivers/usb/acpi
614 register "desc" = ""USB2 Type-C Port C1 (DB)""
615 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000616 register "use_custom_pld" = "true"
Won Chung0d303392022-05-23 22:57:55 +0000617 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(3, 1))"
Joey Pengfe2d0ec2021-09-02 14:19:37 +0800618 device ref usb2_port3 on
619 probe DB_USB DB_USB3_NO_A
Joey Pengefe0fe22022-01-27 10:59:38 +0800620 probe DB_USB DB_USB3_1C_1A
Joey Pengfe2d0ec2021-09-02 14:19:37 +0800621 end
Joey Penge0260352021-08-04 17:44:18 +0800622 end
623 chip drivers/usb/acpi
624 register "desc" = ""USB2 Camera""
625 register "type" = "UPC_TYPE_INTERNAL"
626 device ref usb2_port6 on
627 end
628 end
629 chip drivers/usb/acpi
Joey Pengefe0fe22022-01-27 10:59:38 +0800630 register "desc" = ""USB2 Type-A Port (DB)""
631 register "type" = "UPC_TYPE_A"
Subrata Banikf04faa12022-02-16 19:17:29 +0530632 register "use_custom_pld" = "true"
Won Chung0d303392022-05-23 22:57:55 +0000633 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(3, 1))"
Joey Pengefe0fe22022-01-27 10:59:38 +0800634 register "group" = "ACPI_PLD_GROUP(3, 1)"
635 device ref usb2_port7 on
636 probe DB_USB DB_USB3_1C_1A
637 end
638 end
639 chip drivers/usb/acpi
Joey Penge0260352021-08-04 17:44:18 +0800640 register "desc" = ""USB2 Type-A Port (MLB)""
641 register "type" = "UPC_TYPE_A"
Won Chung9c5a1072022-02-02 22:30:53 +0000642 register "use_custom_pld" = "true"
Subrata Banikf04faa12022-02-16 19:17:29 +0530643 register "custom_pld" = "ACPI_PLD_TYPE_A(LEFT, RIGHT, ACPI_PLD_GROUP(4, 1))"
Joey Penge0260352021-08-04 17:44:18 +0800644 device ref usb2_port9 on end
645 end
646 chip drivers/usb/acpi
647 register "desc" = ""USB2 Bluetooth""
648 register "type" = "UPC_TYPE_INTERNAL"
649 register "reset_gpio" =
650 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
651 device ref usb2_port10 on end
652 end
653 chip drivers/usb/acpi
654 register "desc" = ""USB3 Type-A Port (MLB)""
655 register "type" = "UPC_TYPE_USB3_A"
Won Chung9c5a1072022-02-02 22:30:53 +0000656 register "use_custom_pld" = "true"
Subrata Banikf04faa12022-02-16 19:17:29 +0530657 register "custom_pld" = "ACPI_PLD_TYPE_A(LEFT, RIGHT, ACPI_PLD_GROUP(4, 1))"
Joey Penge0260352021-08-04 17:44:18 +0800658 device ref usb3_port1 on end
659 end
Joey Pengefe0fe22022-01-27 10:59:38 +0800660 chip drivers/usb/acpi
661 register "desc" = ""USB3 Type-A Port (DB)""
662 register "type" = "UPC_TYPE_USB3_A"
Subrata Banikf04faa12022-02-16 19:17:29 +0530663 register "use_custom_pld" = "true"
Won Chung0d303392022-05-23 22:57:55 +0000664 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(3, 1))"
Joey Pengefe0fe22022-01-27 10:59:38 +0800665 device ref usb3_port3 on
666 probe DB_USB DB_USB3_1C_1A
667 end
668 end
Joey Penge0260352021-08-04 17:44:18 +0800669 end
670 end
671 end
672 end
Kevin Chang819afd82021-07-16 19:37:06 +0800673end