blob: 6e002157ccbba038768c73386f614509b0154131 [file] [log] [blame]
YH Lin6ba7bee2021-11-29 09:44:01 -08001fw_config
2 field DB_SD 0 1
3 option SD_ABSENT 0
4 option SD_GL9755S 1
5 end
6 field KB_BL 2 2
7 option KB_BL_ABSENT 0
8 option KB_BL_PRESENT 1
9 end
10 field AUDIO 3 5
11 option AUDIO_UNKNOWN 0
12 option MAX98390_ALC5682I_I2S_4SPK 1
13 end
14 field DB_LTE 6 7
15 option LTE_ABSENT 0
16 option LTE_USB 1
17 option LTE_PCIE 2
18 end
19 field EPS 10 10
20 option PRIVACY_SCREEN_ABSENT 0
21 option PRIVACY_SCREEN 1
22 end
23 field CAMERA_UFC 38 39
24 option CAMERA_NONE 0
25 option CAMERA_OV5675 1
26 option CAMERA_HI556 2
27 end
28 field TP_SOURCE 40 41
29 option ELAN0000 0
30 option ELAN2703 1
31 end
32end
33chip soc/intel/alderlake
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053034 register "sagv" = "SaGv_Enabled"
35 register "cnvi_bt_audio_offload" = "true"
YH Lin6ba7bee2021-11-29 09:44:01 -080036 # FIVR RFI Spread Spectrum 6%
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053037 register "fivr_spread_spectrum" = "FIVR_SS_6"
YH Lin6ba7bee2021-11-29 09:44:01 -080038
39 # Acoustic settings
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053040 register "acoustic_noise_mitigation" = "1"
41 register "slow_slew_rate[VR_DOMAIN_IA]" = "SLEW_FAST_8"
42 register "slow_slew_rate[VR_DOMAIN_GT]" = "SLEW_FAST_8"
43 register "fast_pkg_c_ramp_disable[VR_DOMAIN_IA]" = "1"
44 register "fast_pkg_c_ramp_disable[VR_DOMAIN_GT]" = "1"
YH Lin6ba7bee2021-11-29 09:44:01 -080045
Wisley Chen03c08532022-02-17 15:53:06 +060046 register "usb2_ports[1]" = "USB2_PORT_EMPTY"
47 register "usb2_ports[5]" = "USB2_PORT_EMPTY"
Wisley Chen03c08532022-02-17 15:53:06 +060048 register "tcss_ports[1]" = "TCSS_PORT_EMPTY"
49
YH Lin6ba7bee2021-11-29 09:44:01 -080050 # Intel Common SoC Config
51 #+-------------------+---------------------------+
52 #| Field | Value |
53 #+-------------------+---------------------------+
54 #| GSPI1 | Fingerprint MCU |
55 #| I2C0 | Audio |
56 #| I2C1 | Touchscreen |
57 #| I2C2 | |
58 #| I2C3 | cr50 TPM. Early init is |
59 #| | required to set up a BAR |
60 #| | for TPM communication |
61 #| I2C5 | Trackpad |
62 #+-------------------+---------------------------+
63 register "common_soc_config" = "{
64 .i2c[0] = {
65 .speed = I2C_SPEED_FAST,
66 },
67 .i2c[1] = {
68 .speed = I2C_SPEED_FAST,
69 },
70 .i2c[2] = {
71 .speed = I2C_SPEED_FAST,
72 },
73 .i2c[3] = {
74 .early_init = 1,
75 .speed = I2C_SPEED_FAST,
76 },
77 .i2c[5] = {
78 .speed = I2C_SPEED_FAST,
79 },
80 }"
Wisley Chendc6071d2022-01-11 18:07:20 +060081 register "tcc_offset" = "3" # TCC of 97C
Cliff Huang20ee22c2022-02-11 18:08:32 -080082
YH Lin6ba7bee2021-11-29 09:44:01 -080083 device domain 0 on
84 device ref igpu on
85 chip drivers/gfx/generic
Won Chung2c06ef92023-07-06 16:49:50 +000086 register "device_count" = "6"
Won Chungd6a17e22023-05-31 20:47:02 +000087 # DDIA for eDP
YH Lin6ba7bee2021-11-29 09:44:01 -080088 register "device[0].name" = ""LCD""
Jon Murphyc4e90452022-06-28 10:36:23 -060089 # Use ChromeOS privacy screen _HID
YH Linb0db7552021-12-08 13:43:11 -080090 register "device[0].hid" = ""GOOG0010""
YH Lin6ba7bee2021-11-29 09:44:01 -080091 # Internal panel on the first port of the graphics chip
92 register "device[0].addr" = "0x80010400"
93 register "device[0].privacy.enabled" = "1"
94 register "device[0].privacy.gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H21)"
Won Chung2c06ef92023-07-06 16:49:50 +000095 # DDIB for HDMI
96 register "device[1].name" = ""DD01""
97 # TCP0 (DP-1) for port C0
98 register "device[2].name" = ""DD02""
99 register "device[2].use_pld" = "true"
100 register "device[2].pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
Won Chungbc1533e2023-07-27 20:10:25 +0000101 # TCP1 (DP-2) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP1
Won Chung2c06ef92023-07-06 16:49:50 +0000102 register "device[3].name" = ""DD03""
103 # TCP2 (DP-3) for port C2
104 register "device[4].name" = ""DD04""
105 register "device[4].use_pld" = "true"
106 register "device[4].pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
Won Chungbc1533e2023-07-27 20:10:25 +0000107 # TCP3 (DP-4) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP3
Won Chung2c06ef92023-07-06 16:49:50 +0000108 register "device[5].name" = ""DD05""
YH Lin6ba7bee2021-11-29 09:44:01 -0800109 device generic 0 on
110 probe EPS PRIVACY_SCREEN
111 end
112 end
Won Chungd6a17e22023-05-31 20:47:02 +0000113 chip drivers/gfx/generic
Won Chung2c06ef92023-07-06 16:49:50 +0000114 register "device_count" = "6"
Won Chungd6a17e22023-05-31 20:47:02 +0000115 # DDIA for eDP
116 register "device[0].name" = ""LCD""
Matt DeVilliercf29efa2024-01-16 18:46:20 -0600117 # Internal panel on the first port of the graphics chip
118 register "device[0].addr" = "0x80010400"
Won Chung2c06ef92023-07-06 16:49:50 +0000119 # DDIB for HDMI
120 register "device[1].name" = ""DD01""
121 # TCP0 (DP-1) for port C0
122 register "device[2].name" = ""DD02""
123 register "device[2].use_pld" = "true"
124 register "device[2].pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
Won Chungbc1533e2023-07-27 20:10:25 +0000125 # TCP1 (DP-2) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP1
Won Chung2c06ef92023-07-06 16:49:50 +0000126 register "device[3].name" = ""DD03""
127 # TCP2 (DP-3) for port C2
128 register "device[4].name" = ""DD04""
129 register "device[4].use_pld" = "true"
130 register "device[4].pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
Won Chungbc1533e2023-07-27 20:10:25 +0000131 # TCP3 (DP-4) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP3
Won Chung2c06ef92023-07-06 16:49:50 +0000132 register "device[5].name" = ""DD05""
Won Chungd6a17e22023-05-31 20:47:02 +0000133 device generic 0 on
134 probe EPS PRIVACY_SCREEN_ABSENT
135 end
136 end
YH Lin6ba7bee2021-11-29 09:44:01 -0800137 end # Integrated Graphics Device
138 device ref dtt on
139 chip drivers/intel/dptf
140 ## sensor information
141 register "options.tsr[0].desc" = ""DRAM""
142 register "options.tsr[1].desc" = ""SOC""
143 register "options.tsr[2].desc" = ""Charger""
144 register "options.tsr[3].desc" = ""5V regulator""
145
146 # TODO: below values are initial reference values only
147 ## Passive Policy
148 register "policies.passive" = "{
149 [0] = DPTF_PASSIVE(CPU, CPU, 55, 5000),
150 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 45, 5000),
151 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 51, 5000),
152 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 51, 5000),
153 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 51, 5000),
154 }"
155 register "controls.power_limits" = "{
156 .pl1 = {
157 .min_power = 13000,
158 .max_power = 15000,
159 .time_window_min = 42 * MSECS_PER_SEC,
160 .time_window_max = 42 * MSECS_PER_SEC,
161 .granularity = 200,
162 },
163 .pl2 = {
164 .min_power = 35000,
165 .max_power = 35000,
166 .time_window_min = 42 * MSECS_PER_SEC,
167 .time_window_max = 42 * MSECS_PER_SEC,
168 .granularity = 1000,
169 }
170 }"
171 ## Charger Performance Control (Control, mA)
172 register "controls.charger_perf" = "{
173 [0] = { 255, 1700 },
174 [1] = { 24, 1500 },
175 [2] = { 16, 1000 },
176 [3] = { 8, 500 }
177 }"
178 device generic 0 alias dptf_policy on end
179 end
180 end
Wisley Chen18972f82022-03-04 15:33:15 +0600181 device ref tbt_pcie_rp1 off end
YH Lin6ba7bee2021-11-29 09:44:01 -0800182 device ref ipu on
183 chip drivers/intel/mipi_camera
184 register "acpi_uid" = "0x50000"
185 register "acpi_name" = ""IPU0""
186 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
187
188 register "cio2_num_ports" = "1"
189 register "cio2_lanes_used" = "{2}" # 2 CSI Camera lanes are used
190 register "cio2_lane_endpoint[0]" = ""^I2C2.CAM0""
191 register "cio2_prt[0]" = "2"
192 device generic 0 on end
193 end
194 end
195 device ref cnvi_wifi on
196 chip drivers/wifi/generic
197 register "wake" = "GPE0_PME_B0"
198 device generic 0 on end
199 end
200 end
201 device ref pcie_rp6 on
Cliff Huang27547872022-02-23 23:45:14 -0800202 # Enable WWAN PCIE 6 using clk 5
203 register "pch_pcie_rp[PCH_RP(6)]" = "{
204 .clk_src = 5,
205 .clk_req = 5,
206 .flags = PCIE_RP_LTR | PCIE_RP_AER,
207 }"
208 chip soc/intel/common/block/pcie/rtd3
209 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
210 register "reset_off_delay_ms" = "20"
211 # register "reset_delay_ms" = "1000"
212 register "srcclk_pin" = "5"
213 register "ext_pm_support" = "ACPI_PCIE_RP_EMIT_ALL"
214 register "skip_on_off_support" = "true"
Cliff Huangdaeb7812023-03-02 10:17:50 -0800215 register "use_rp_mutex" = "true"
Cliff Huang27547872022-02-23 23:45:14 -0800216 device generic 0 alias rp6_rtd3 on
217 probe DB_LTE LTE_PCIE
218 end
219 end
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800220 chip drivers/wwan/fm
221 register "fcpo_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F21)"
222 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E16)"
223 register "perst_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
224 register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A7)"
Tim Wawrzynczak8dc28c42022-02-28 08:59:10 -0700225 register "add_acpi_dma_property" = "true"
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800226 use rp6_rtd3 as rtd3dev
Cliff Huang27547872022-02-23 23:45:14 -0800227 device generic 0 on
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800228 probe DB_LTE LTE_PCIE
229 end
230 end
Cliff Huang27547872022-02-23 23:45:14 -0800231 probe DB_LTE LTE_PCIE
YH Lin6ba7bee2021-11-29 09:44:01 -0800232 end
233 device ref tcss_dma0 on
234 chip drivers/intel/usb4/retimer
235 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
236 use tcss_usb3_port1 as dfp[0].typec_port
237 device generic 0 on end
238 end
239 end
240 device ref tcss_dma1 on
241 chip drivers/intel/usb4/retimer
242 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
243 use tcss_usb3_port3 as dfp[0].typec_port
244 device generic 0 on end
245 end
246 end
247 device ref pcie_rp8 on
248 chip soc/intel/common/block/pcie/rtd3
249 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H13)"
250 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D18)"
251 register "srcclk_pin" = "3"
252 device generic 0 on end
253 end
254 end #PCIE8 SD card
255 device ref i2c0 on
256 chip drivers/i2c/generic
257 register "hid" = ""RTL5682""
258 register "name" = ""RT58""
259 register "desc" = ""Headset Codec""
260 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
261 # Set the jd_src to RT5668_JD1 for jack detection
262 register "property_count" = "1"
263 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
264 register "property_list[0].name" = ""realtek,jd-src""
265 register "property_list[0].integer" = "1"
266 device i2c 1a on
267 probe AUDIO MAX98390_ALC5682I_I2S_4SPK
268 end
269 end
270 chip drivers/i2c/max98390
271 register "desc" = ""MAX98390 Speaker Amp 0""
272 register "uid" = "0"
273 register "name" = ""MXW0""
274 register "r0_calib_key" = ""dsm_calib_r0_0""
275 register "temperature_calib_key" = ""dsm_calib_temp_0""
276 register "dsm_param_file_name" = ""dsm_param_R""
277 register "vmon_slot_no" = "0"
278 register "imon_slot_no" = "1"
279 device i2c 0x3a on
280 probe AUDIO MAX98390_ALC5682I_I2S_4SPK
281 end
282 end
283 chip drivers/i2c/max98390
284 register "desc" = ""MAX98390 Speaker Amp 1""
285 register "uid" = "1"
286 register "name" = ""MXW1""
287 register "r0_calib_key" = ""dsm_calib_r0_1""
288 register "temperature_calib_key" = ""dsm_calib_temp_1""
289 register "dsm_param_file_name" = ""dsm_param_L""
290 register "vmon_slot_no" = "1"
291 register "imon_slot_no" = "0"
292 device i2c 0x3b on
293 probe AUDIO MAX98390_ALC5682I_I2S_4SPK
294 end
295 end
296 chip drivers/i2c/max98390
297 register "desc" = ""MAX98390 Speaker Amp 2""
298 register "uid" = "2"
299 register "name" = ""MXW2""
300 register "r0_calib_key" = ""dsm_calib_r0_2""
301 register "temperature_calib_key" = ""dsm_calib_temp_2""
302 register "dsm_param_file_name" = ""dsm_param_tt_R""
303 register "vmon_slot_no" = "2"
304 register "imon_slot_no" = "3"
305 device i2c 0x38 on
306 probe AUDIO MAX98390_ALC5682I_I2S_4SPK
307 end
308 end
309 chip drivers/i2c/max98390
310 register "desc" = ""MAX98390 Speaker Amp 3""
311 register "uid" = "3"
312 register "name" = ""MXW3""
313 register "r0_calib_key" = ""dsm_calib_r0_3""
314 register "temperature_calib_key" = ""dsm_calib_temp_3""
315 register "dsm_param_file_name" = ""dsm_param_tt_L""
316 register "vmon_slot_no" = "3"
317 register "imon_slot_no" = "2"
318 device i2c 0x39 on
319 probe AUDIO MAX98390_ALC5682I_I2S_4SPK
320 end
321 end
322 end #I2C0
323 device ref i2c1 on
324 chip drivers/i2c/hid
325 register "generic.hid" = ""ELAN2513""
326 register "generic.desc" = ""ELAN Touchscreen""
327 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
Matt DeVillier8a0e6b52023-04-27 10:04:27 -0500328 register "generic.detect" = "1"
YH Lin6ba7bee2021-11-29 09:44:01 -0800329 register "generic.reset_gpio" =
330 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
331 register "generic.reset_delay_ms" = "300"
332 register "generic.reset_off_delay_ms" = "1"
333 register "generic.enable_gpio" =
334 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
335 register "generic.enable_delay_ms" = "6"
336 register "generic.stop_gpio" =
337 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
338 register "generic.stop_off_delay_ms" = "1"
339 register "generic.has_power_resource" = "1"
YH Lin6ba7bee2021-11-29 09:44:01 -0800340 register "hid_desc_reg_offset" = "0x01"
341 device i2c 0x15 on end
342 end
343 end
344 device ref i2c2 on
345 chip drivers/intel/mipi_camera
346 register "acpi_hid" = ""OVTI5675""
347 register "acpi_uid" = "0"
348 register "acpi_name" = ""CAM0""
349 register "chip_name" = ""Ov 5675 Camera""
350 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
351
352 register "ssdb.lanes_used" = "2"
353 register "ssdb.link_used" = "1"
354 register "num_freq_entries" = "1"
355 register "link_freq[0]" = "DEFAULT_LINK_FREQ"
356 register "remote_name" = ""IPU0""
357 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
358
359 register "has_power_resource" = "1"
360 #Controls
361 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_3"
362 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
363
364 register "gpio_panel.gpio[0].gpio_num" = "GPP_D15" #EN_UCAM_LED_PWR
365 register "gpio_panel.gpio[1].gpio_num" = "GPP_D16" #EN_UCAM_PWR
366 register "gpio_panel.gpio[2].gpio_num" = "GPP_D3" #reset
367
368 #_ON
369 register "on_seq.ops_cnt" = "5"
370 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
371 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
372 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
373 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
374 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
375
376 #_OFF
377 register "off_seq.ops_cnt" = "4"
378 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
379 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
380 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
381 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
382 device i2c 36 on
383 probe CAMERA_UFC CAMERA_NONE
384 probe CAMERA_UFC CAMERA_OV5675
385 end
386 end
387 chip drivers/intel/mipi_camera
388 register "acpi_hid" = ""INT3537""
389 register "acpi_uid" = "0"
390 register "acpi_name" = ""CAM0""
391 register "chip_name" = ""Hi-556 Camera""
392 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
393 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
394
395 register "ssdb.lanes_used" = "2"
396 register "ssdb.link_used" = "1"
397 register "num_freq_entries" = "1"
398 register "link_freq[0]" = "437000000"
399 register "remote_name" = ""IPU0""
400
401 register "has_power_resource" = "1"
402 #Controls
403 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_3"
404 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
405
406 register "gpio_panel.gpio[0].gpio_num" = "GPP_D15" #EN_UCAM_LED_PWR
407 register "gpio_panel.gpio[1].gpio_num" = "GPP_D16" #EN_UCAM_PWR
408 register "gpio_panel.gpio[2].gpio_num" = "GPP_D3" #reset
409
410 #_ON
411 register "on_seq.ops_cnt" = "5"
412 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
413 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
414 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
415 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
416 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
417
418 #_OFF
419 register "off_seq.ops_cnt" = "4"
420 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
421 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
422 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
423 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
424 device i2c 20 on
425 probe CAMERA_UFC CAMERA_HI556
426 end
427 end
428 chip drivers/intel/mipi_camera
429 register "acpi_hid" = "ACPI_DT_NAMESPACE_HID"
430 register "acpi_uid" = "1"
431 register "acpi_name" = ""NVM0""
432 register "chip_name" = ""M24C64X""
433 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
434 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
435
436 register "has_power_resource" = "1"
437 #Controls
438 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_UCAM_PWR
439
440 #_ON
441 register "on_seq.ops_cnt" = "1"
442 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
443
444 #_OFF
445 register "off_seq.ops_cnt" = "1"
446 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
447
448 register "nvm_size" = "0x2000"
449 register "nvm_pagesize" = "1"
450 register "nvm_readonly" = "1"
451 register "nvm_width" = "0x10"
452 register "nvm_compat" = ""atmel,24c64""
453 device i2c 50 on end
454 end
455
456 end
457 device ref i2c3 on
458 chip drivers/i2c/tpm
459 register "hid" = ""GOOG0005""
460 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
461 device i2c 50 on end
462 end
463 end
464 device ref i2c5 on
465 chip drivers/i2c/generic
466 register "hid" = ""ELAN0000""
467 register "desc" = ""ELAN Touchpad""
468 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
469 register "wake" = "GPE0_DW2_14"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500470 register "detect" = "1"
YH Lin6ba7bee2021-11-29 09:44:01 -0800471 device i2c 15 on
472 probe TP_SOURCE ELAN0000
473 end
474 end
475 chip drivers/i2c/hid
476 register "generic.hid" = ""ELAN2703""
477 register "generic.desc" = ""ELAN Touchpad""
478 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
479 register "generic.wake" = "GPE0_DW2_14"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500480 register "generic.detect" = "1"
YH Lin6ba7bee2021-11-29 09:44:01 -0800481 register "hid_desc_reg_offset" = "0x01"
482 device i2c 15 on
483 probe TP_SOURCE ELAN2703
484 end
485 end
486 end
487 device ref gspi1 on
488 chip drivers/spi/acpi
489 register "name" = ""CRFP""
490 register "hid" = "ACPI_DT_NAMESPACE_HID"
491 register "uid" = "1"
492 register "compat_string" = ""google,cros-ec-spi""
493 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F15_IRQ)"
494 register "wake" = "GPE0_DW2_15"
Tarun Tuli2b523ce2022-08-29 13:39:58 -0400495 register "has_power_resource" = "1"
496 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D1)"
497 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D2)"
498 register "enable_delay_ms" = "3"
Matt DeVillieraf46b472023-10-28 11:16:14 -0500499 device spi 0 hidden end
YH Lin6ba7bee2021-11-29 09:44:01 -0800500 end # FPMCU
501 end
502 device ref pch_espi on
503 chip ec/google/chromeec
504 use conn0 as mux_conn[0]
505 use conn1 as mux_conn[1]
506 device pnp 0c09.0 on end
507 end
508 end
509 device ref pmc hidden
510 chip drivers/intel/pmc_mux
511 device generic 0 on
512 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100513 use usb2_port1 as usb2_port
514 use tcss_usb3_port1 as usb3_port
YH Lin6ba7bee2021-11-29 09:44:01 -0800515 device generic 0 alias conn0 on end
516 end
517 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100518 use usb2_port3 as usb2_port
519 use tcss_usb3_port3 as usb3_port
YH Lin6ba7bee2021-11-29 09:44:01 -0800520 device generic 1 alias conn1 on end
521 end
522 end
523 end
524 end
525 device ref tcss_xhci on
526 chip drivers/usb/acpi
527 device ref tcss_root_hub on
528 chip drivers/usb/acpi
529 register "desc" = ""USB3 Type-C Port C0 (MLB)""
530 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000531 register "use_custom_pld" = "true"
Subrata Banikef472122022-02-16 18:44:09 +0530532 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800533 device ref tcss_usb3_port1 on end
534 end
535 chip drivers/usb/acpi
536 register "desc" = ""USB3 Type-C Port C2 (MLB)""
537 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000538 register "use_custom_pld" = "true"
Subrata Banikef472122022-02-16 18:44:09 +0530539 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800540 device ref tcss_usb3_port3 on end
541 end
542 end
543 end
544 end
545 device ref xhci on
546 chip drivers/usb/acpi
547 device ref xhci_root_hub on
548 chip drivers/usb/acpi
549 register "desc" = ""USB2 Type-C Port C0 (MLB)""
550 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000551 register "use_custom_pld" = "true"
Subrata Banikef472122022-02-16 18:44:09 +0530552 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800553 device ref usb2_port1 on end
554 end
555 chip drivers/usb/acpi
556 register "desc" = ""USB2 Type-C Port C2 (MLB)""
557 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung9c5a1072022-02-02 22:30:53 +0000558 register "use_custom_pld" = "true"
Subrata Banikef472122022-02-16 18:44:09 +0530559 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800560 device ref usb2_port3 on end
561 end
562 chip drivers/usb/acpi
563 register "desc" = ""USB2 WWAN""
564 register "type" = "UPC_TYPE_INTERNAL"
565 device ref usb2_port4 on end
566 end
567 chip drivers/usb/acpi
568 register "desc" = ""USB2 Camera""
569 register "type" = "UPC_TYPE_INTERNAL"
570 device ref usb2_port6 on end
571 end
572 chip drivers/usb/acpi
573 register "desc" = ""USB2 Type-A Port (MLB)""
574 register "type" = "UPC_TYPE_A"
Won Chung9c5a1072022-02-02 22:30:53 +0000575 register "use_custom_pld" = "true"
Subrata Banikef472122022-02-16 18:44:09 +0530576 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(3, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800577 device ref usb2_port9 on end
578 end
579 chip drivers/usb/acpi
580 register "desc" = ""USB2 Bluetooth""
581 register "type" = "UPC_TYPE_INTERNAL"
582 register "reset_gpio" =
583 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
584 device ref usb2_port10 on end
585 end
586 chip drivers/usb/acpi
587 register "desc" = ""USB3 Type-A Port (MLB)""
588 register "type" = "UPC_TYPE_USB3_A"
Won Chung9c5a1072022-02-02 22:30:53 +0000589 register "use_custom_pld" = "true"
Subrata Banikef472122022-02-16 18:44:09 +0530590 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(3, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800591 device ref usb3_port1 on end
592 end
593 chip drivers/usb/acpi
594 register "desc" = ""USB3 WWAN""
595 register "type" = "UPC_TYPE_INTERNAL"
596 device ref usb3_port4 on end
597 end
598 end
599 end
600 end
601 end
602end