blob: d7eadbe4be0b8087fe9b1edafa91a117ccbb2d7c [file] [log] [blame]
Tim Wawrzynczak1a9c6272021-04-23 15:11:48 -06001fw_config
2 field DB_USB 0 3
3 option USB_ABSENT 0
4 option USB3_PS8815 1
5 end
6 field DB_SD 4 5
7 option SD_ABSENT 0
8 option SD_GL9755S 1
9 end
Tim Wawrzynczak1a9c6272021-04-23 15:11:48 -060010 field KB_BL 7 7
11 option KB_BL_ABSENT 0
12 option KB_BL_PRESENT 1
13 end
14 field AUDIO 8 10
Amanda Huang651b7652022-03-23 00:25:07 +080015 option AUDIO_UNKNOWN 0
16 option MAX98357_ALC5682I_I2S 1
17 option MAX98373_ALC5682_SNDW 2
18 option MAX98373_NAU88L25B_I2S 3
19 option ALC1019_NAU88L25B_I2S 4
Amanda Huange7a14cf2022-04-08 17:52:29 +080020 option MAX98360_ALC5682I_I2S 5
Mac Chiangeefdfb52023-06-20 04:30:40 -040021 option NAU8318_NAU88L25B_I2S 6
22
Tim Wawrzynczak1a9c6272021-04-23 15:11:48 -060023 end
24 field DB_LTE 11 12
25 option LTE_ABSENT 0
26 option LTE_USB 1
27 option LTE_PCIE 2
28 end
Varshit B Pandya70d07952021-06-23 12:13:16 +053029 field UFC 13 14
30 option UFC_USB 0
Varshit B Pandya5d719942021-07-27 09:39:31 +053031 option UFC_MIPI_IMX208 1
Varshit B Pandya70d07952021-06-23 12:13:16 +053032 end
Nick Vaccaro912fea62022-07-19 14:31:52 -070033 field WFC 15 16
34 option WFC_ABSENT 0
Nick Vaccaro01ab9b12022-09-30 16:17:28 -070035 option WFC_MIPI_OVTI8856 1
36 option WFC_MIPI_KBAE350 2
Nick Vaccaro912fea62022-07-19 14:31:52 -070037 end
Dan Callaghan4e6c9152021-10-28 21:22:22 +110038 field HPS 17 17
39 option HPS_ABSENT 0
40 option HPS_PRESENT 1
41 end
Nick Vaccaro0c84a992022-09-30 17:20:09 -070042 field THERMAL 18 18
43 option THERMAL_28W 0
44 option THERMAL_15W 1
45 end
Tim Wawrzynczak1a9c6272021-04-23 15:11:48 -060046end
47
Eric Lai2bec7f02020-12-21 17:28:31 +080048chip soc/intel/alderlake
Jeremy Compostella54a6b1f2022-11-14 10:28:27 -080049 register "domain_vr_config[VR_DOMAIN_IA]" = "{
50 .enable_fast_vmode = 1,
51 }"
52
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053053 register "sagv" = "SaGv_Enabled"
Eric Lai2bec7f02020-12-21 17:28:31 +080054
Selma Bensaida10a86d2022-10-20 18:24:39 -070055 # As per Intel Advisory doc#723158, the change is required to prevent possible
56 # display flickering issue.
57 register "disable_dynamic_tccold_handshake" = "true"
58
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053059 register "platform_pmax" = "145"
Ryan Lina45377e2021-10-05 11:38:22 +080060
Tim Wawrzynczak20919652021-02-16 15:17:48 -070061 register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # Type-A MLB Port
62
63 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # USB3/2 Type A MLB port
64
Eric Lai6296ae02021-11-15 12:24:12 +080065 register "typec_aux_bias_pads[0]" = "{.pad_auxp_dc = GPP_E22, .pad_auxn_dc = GPP_E23}"
66
V Sowmyad5ab1632021-06-21 09:50:47 +053067 # FIVR configurations for brya are disabled since the board doesn't have V1p05 and Vnn
68 # bypass rails implemented.
69 register "ext_fivr_settings" = "{
70 .configure_ext_fivr = 1,
71 }"
72
Amanda Huang0c962912022-04-19 17:21:17 +080073 # Intel Common SoC Config
74 #+-------------------+---------------------------+
75 #| Field | Value |
76 #+-------------------+---------------------------+
77 #| GSPI1 | Fingerprint MCU |
78 #| I2C0 | Audio |
79 #| I2C1 | cr50 TPM. Early init is |
80 #| | required to set up a BAR |
81 #| | for TPM communication |
82 #| I2C2 | SAR |
83 #| I2C3 | TouchScreen |
84 #| I2C5 | Trackpad |
85 #+-------------------+---------------------------+
86 register "common_soc_config" = "{
87 .i2c[0] = {
88 .speed = I2C_SPEED_FAST,
89 .rise_time_ns = 650,
90 .fall_time_ns = 400,
91 .data_hold_time_ns = 50,
92 },
93 .i2c[1] = {
94 .early_init = 1,
95 .speed = I2C_SPEED_FAST,
96 .rise_time_ns = 600,
97 .fall_time_ns = 400,
98 .data_hold_time_ns = 50,
99 },
100 .i2c[2] = {
101 .speed = I2C_SPEED_FAST,
102 .rise_time_ns = 900,
103 .fall_time_ns = 400,
104 .data_hold_time_ns = 50,
105 },
106 .i2c[3] = {
107 .speed = I2C_SPEED_FAST,
108 .rise_time_ns = 650,
109 .fall_time_ns = 400,
110 .data_hold_time_ns = 50,
111 },
112 .i2c[5] = {
113 .speed = I2C_SPEED_FAST,
114 .rise_time_ns = 650,
115 .fall_time_ns = 400,
116 .data_hold_time_ns = 50,
117 },
118 }"
119
Eric Lai2bec7f02020-12-21 17:28:31 +0800120 device domain 0 on
Won Chung1491ad52023-04-12 19:53:09 +0000121 device ref igpu on
122 chip drivers/gfx/generic
123 register "device_count" = "6"
124 # DDIA for eDP
125 register "device[0].name" = ""LCD""
126 # DDIB for HDMI
Won Chungbc1533e2023-07-27 20:10:25 +0000127 # If HDMI is not enumerated in the kernel, then no GFX device should be added for DDIB
Won Chung1491ad52023-04-12 19:53:09 +0000128 register "device[1].name" = ""DD01""
129 # TCP0 (DP-1) for port C0
130 register "device[2].name" = ""DD02""
131 register "device[2].use_pld" = "true"
132 register "device[2].pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
133 # TCP1 (DP-2) for port C1
134 register "device[3].name" = ""DD03""
135 register "device[3].use_pld" = "true"
136 register "device[3].pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
137 # TCP2 (DP-3) for port C2
138 register "device[4].name" = ""DD04""
139 register "device[4].use_pld" = "true"
140 register "device[4].pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
Won Chungbc1533e2023-07-27 20:10:25 +0000141 # TCP3 (DP-4) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP3
Won Chung1491ad52023-04-12 19:53:09 +0000142 register "device[5].name" = ""DD05""
143 device generic 0 on end
144 end
145 end # Integrated Graphics Device
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530146 device ref dtt on
147 chip drivers/intel/dptf
148 ## sensor information
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530149 register "options.tsr[0].desc" = ""DRAM_SOC""
150 register "options.tsr[1].desc" = ""Ambient""
151 register "options.tsr[2].desc" = ""Charger""
152 register "options.tsr[3].desc" = ""WWAN""
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530153
154 # TODO: below values are initial reference values only
155 ## Active Policy
156 register "policies.active" = "{
157 [0] = {
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530158 .target = DPTF_TEMP_SENSOR_0,
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530159 .thresholds = {
Sumeet Pawnikarf5a1ad12023-02-08 17:52:42 +0530160 TEMP_PCT(75, 95),
161 TEMP_PCT(70, 90),
162 TEMP_PCT(65, 80),
163 TEMP_PCT(60, 70),
164 TEMP_PCT(55, 60),
165 TEMP_PCT(50, 50),
166 TEMP_PCT(45, 40),
167 TEMP_PCT(40, 30),
168 }
169 },
170 [1] = {
171 .target = DPTF_TEMP_SENSOR_1,
172 .thresholds = {
173 TEMP_PCT(75, 95),
174 TEMP_PCT(70, 90),
175 TEMP_PCT(65, 80),
176 TEMP_PCT(60, 70),
177 TEMP_PCT(55, 60),
178 TEMP_PCT(50, 50),
179 TEMP_PCT(45, 40),
180 TEMP_PCT(40, 30),
181 }
182 },
183 [2] = {
184 .target = DPTF_TEMP_SENSOR_2,
185 .thresholds = {
186 TEMP_PCT(82, 97),
187 TEMP_PCT(78, 93),
188 TEMP_PCT(72, 86),
189 TEMP_PCT(66, 60),
190 TEMP_PCT(60, 40),
191 }
192 },
193 [3] = {
194 .target = DPTF_TEMP_SENSOR_3,
195 .thresholds = {
196 TEMP_PCT(75, 95),
197 TEMP_PCT(70, 90),
198 TEMP_PCT(65, 80),
199 TEMP_PCT(60, 70),
200 TEMP_PCT(55, 60),
201 TEMP_PCT(50, 50),
202 TEMP_PCT(45, 40),
203 TEMP_PCT(40, 30),
204 }
205 }
206 }"
207
208 ## Passive Policy
209 register "policies.passive" = "{
210 [0] = DPTF_PASSIVE(CPU, CPU, 97, 5000),
211 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 85, 5000),
212 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 85, 5000),
213 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 80, 5000),
214 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 85, 5000),
215 }"
216
217 ## Critical Policy
218 register "policies.critical" = "{
219 [0] = DPTF_CRITICAL(CPU, 115, SHUTDOWN),
220 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 90, SHUTDOWN),
221 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN),
222 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 90, SHUTDOWN),
223 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 90, SHUTDOWN),
224 }"
225
226 register "controls.power_limits" = "{
227 .pl1 = {
228 .min_power = 28000,
229 .max_power = 28000,
230 .time_window_min = 28 * MSECS_PER_SEC,
231 .time_window_max = 32 * MSECS_PER_SEC,
232 .granularity = 200,
233 },
234 .pl2 = {
235 .min_power = 64000,
236 .max_power = 64000,
237 .time_window_min = 28 * MSECS_PER_SEC,
238 .time_window_max = 32 * MSECS_PER_SEC,
239 .granularity = 1000,
240 }
241 }"
242
243 ## Charger Performance Control (Control, mA)
244 register "controls.charger_perf" = "{
245 [0] = { 255, 1700 },
246 [1] = { 24, 1500 },
247 [2] = { 16, 1000 },
248 [3] = { 8, 500 }
249 }"
250
251 ## Fan Performance Control (Percent, Speed, Noise, Power)
252 register "controls.fan_perf" = "{
253 [0] = { 90, 6700, 220, 2200, },
254 [1] = { 80, 5800, 180, 1800, },
255 [2] = { 70, 5000, 145, 1450, },
256 [3] = { 60, 4900, 115, 1150, },
257 [4] = { 50, 3838, 90, 900, },
258 [5] = { 40, 2904, 55, 550, },
259 [6] = { 30, 2337, 30, 300, },
260 [7] = { 20, 1608, 15, 150, },
261 [8] = { 10, 800, 10, 100, },
262 [9] = { 0, 0, 0, 50, }
263 }"
264
265 ## Fan options
266 register "options.fan.fine_grained_control" = "1"
267 register "options.fan.step_size" = "2"
268
269 device generic 0 on
270 probe THERMAL THERMAL_28W
271 end
272 end
273 chip drivers/intel/dptf
274 ## sensor information
275 register "options.tsr[0].desc" = ""DRAM_SOC""
276 register "options.tsr[1].desc" = ""Ambient""
277 register "options.tsr[2].desc" = ""Charger""
278 register "options.tsr[3].desc" = ""WWAN""
279
280 # TODO: below values are initial reference values only
281 ## Active Policy
282 register "policies.active" = "{
283 [0] = {
284 .target = DPTF_TEMP_SENSOR_0,
285 .thresholds = {
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530286 TEMP_PCT(75, 97),
287 TEMP_PCT(70, 93),
288 TEMP_PCT(60, 86),
289 TEMP_PCT(52, 80),
290 TEMP_PCT(47, 64),
291 TEMP_PCT(43, 52),
292 TEMP_PCT(40, 40),
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530293 }
294 },
295 [1] = {
296 .target = DPTF_TEMP_SENSOR_1,
297 .thresholds = {
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530298 TEMP_PCT(75, 97),
299 TEMP_PCT(70, 93),
300 TEMP_PCT(60, 86),
301 TEMP_PCT(52, 80),
302 TEMP_PCT(47, 64),
303 TEMP_PCT(43, 52),
304 TEMP_PCT(40, 40),
305 }
306 },
307 [2] = {
308 .target = DPTF_TEMP_SENSOR_2,
309 .thresholds = {
310 TEMP_PCT(82, 97),
311 TEMP_PCT(78, 93),
312 TEMP_PCT(72, 86),
313 TEMP_PCT(60, 80),
314 }
315 },
316 [3] = {
317 .target = DPTF_TEMP_SENSOR_3,
318 .thresholds = {
319 TEMP_PCT(75, 97),
320 TEMP_PCT(70, 93),
321 TEMP_PCT(60, 86),
322 TEMP_PCT(52, 80),
323 TEMP_PCT(47, 64),
324 TEMP_PCT(43, 52),
325 TEMP_PCT(40, 40),
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530326 }
327 }
328 }"
329
330 ## Passive Policy
331 register "policies.passive" = "{
332 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530333 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 80, 5000),
334 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 80, 5000),
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530335 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 75, 5000),
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530336 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 80, 5000),
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530337 }"
338
339 ## Critical Policy
340 register "policies.critical" = "{
341 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
342 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 85, SHUTDOWN),
343 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 85, SHUTDOWN),
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530344 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 85, SHUTDOWN),
345 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 85, SHUTDOWN),
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530346 }"
347
348 register "controls.power_limits" = "{
349 .pl1 = {
Sumeet Pawnikara2e0c3d2023-02-07 12:57:30 +0530350 .min_power = 15000,
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530351 .max_power = 15000,
352 .time_window_min = 28 * MSECS_PER_SEC,
353 .time_window_max = 32 * MSECS_PER_SEC,
354 .granularity = 200,
355 },
356 .pl2 = {
357 .min_power = 55000,
358 .max_power = 55000,
359 .time_window_min = 28 * MSECS_PER_SEC,
360 .time_window_max = 32 * MSECS_PER_SEC,
361 .granularity = 1000,
362 }
363 }"
364
365 ## Charger Performance Control (Control, mA)
366 register "controls.charger_perf" = "{
367 [0] = { 255, 1700 },
368 [1] = { 24, 1500 },
369 [2] = { 16, 1000 },
370 [3] = { 8, 500 }
371 }"
372
373 ## Fan Performance Control (Percent, Speed, Noise, Power)
374 register "controls.fan_perf" = "{
375 [0] = { 90, 6700, 220, 2200, },
376 [1] = { 80, 5800, 180, 1800, },
377 [2] = { 70, 5000, 145, 1450, },
378 [3] = { 60, 4900, 115, 1150, },
379 [4] = { 50, 3838, 90, 900, },
380 [5] = { 40, 2904, 55, 550, },
381 [6] = { 30, 2337, 30, 300, },
382 [7] = { 20, 1608, 15, 150, },
383 [8] = { 10, 800, 10, 100, },
384 [9] = { 0, 0, 0, 50, }
385 }"
386
387 ## Fan options
388 register "options.fan.fine_grained_control" = "1"
389 register "options.fan.step_size" = "2"
390
Sumeet Pawnikarf5a1ad12023-02-08 17:52:42 +0530391 device generic 1 on
392 probe THERMAL THERMAL_15W
393 end
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530394 end
395 end
Scott Chao890702f2021-06-02 14:32:27 +0800396 device ref ipu on
397 chip drivers/intel/mipi_camera
398 register "acpi_uid" = "0x50000"
399 register "acpi_name" = ""IPU0""
400 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
401
402 register "cio2_num_ports" = "1"
403 register "cio2_lanes_used" = "{4}" # 4 CSI Camera lanes are used
404 register "cio2_lane_endpoint[0]" = ""^I2C0.CAM0""
405 register "cio2_prt[0]" = "2"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530406 device generic 0 on
407 # MIPI lanes are split between UFC and WFC depending on
408 # whether the UFC is USB or MIPI hence probing UFC_USB
409 probe UFC UFC_USB
410 end
411 end
412 chip drivers/intel/mipi_camera
413 register "acpi_uid" = "0x50000"
414 register "acpi_name" = ""IPU0""
415 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
416
417 register "cio2_num_ports" = "2"
418 register "cio2_lanes_used" = "{4,2}" # 4 and 2 CSI Camera lanes are used
419 register "cio2_lane_endpoint[0]" = ""^I2C0.CAM0""
420 register "cio2_lane_endpoint[1]" = ""^I2C2.CAM1""
421 register "cio2_prt[0]" = "2"
422 register "cio2_prt[1]" = "1"
Varshit B Pandyaf48eecb2021-07-08 21:13:31 +0530423 device generic 1 on
Varshit B Pandya5d719942021-07-27 09:39:31 +0530424 probe UFC UFC_MIPI_IMX208
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530425 end
Scott Chao890702f2021-06-02 14:32:27 +0800426 end
427 end
Eric Lai2bec7f02020-12-21 17:28:31 +0800428 device ref cnvi_wifi on
429 chip drivers/wifi/generic
430 register "wake" = "GPE0_PME_B0"
Tim Wawrzynczak6f73a202022-02-04 12:45:37 -0700431 register "enable_cnvi_ddr_rfim" = "true"
Eric Lai2bec7f02020-12-21 17:28:31 +0800432 device generic 0 on end
433 end
434 end
Tim Wawrzynczak71f69dd2021-05-21 19:34:38 +0000435 device ref pcie_rp6 on
Cliff Huang27547872022-02-23 23:45:14 -0800436 # Enable WWAN PCIE 6 using clk 5
437 register "pch_pcie_rp[PCH_RP(6)]" = "{
438 .clk_src = 5,
439 .clk_req = 5,
440 .flags = PCIE_RP_LTR | PCIE_RP_AER,
441 }"
442 chip soc/intel/common/block/pcie/rtd3
443 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
444 register "reset_off_delay_ms" = "20"
445 # register "reset_delay_ms" = "1000"
446 register "srcclk_pin" = "5"
447 register "ext_pm_support" = "ACPI_PCIE_RP_EMIT_ALL"
448 register "skip_on_off_support" = "true"
Cliff Huangdaeb7812023-03-02 10:17:50 -0800449 register "use_rp_mutex" = "true"
Cliff Huang27547872022-02-23 23:45:14 -0800450 device generic 0 alias rp6_rtd3 on
451 probe DB_LTE LTE_PCIE
452 end
453 end
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800454 chip drivers/wwan/fm
455 register "fcpo_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F21)"
456 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E16)"
457 register "perst_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
458 register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A7)"
Tim Wawrzynczak8dc28c42022-02-28 08:59:10 -0700459 register "add_acpi_dma_property" = "true"
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800460 use rp6_rtd3 as rtd3dev
Cliff Huang27547872022-02-23 23:45:14 -0800461 device generic 0 on
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800462 probe DB_LTE LTE_PCIE
463 end
464 end
Cliff Huang27547872022-02-23 23:45:14 -0800465 probe DB_LTE LTE_PCIE
Tim Wawrzynczak71f69dd2021-05-21 19:34:38 +0000466 end
Maulik V Vaghela9e23d012021-06-09 14:03:08 +0530467 device ref tcss_dma0 on
468 chip drivers/intel/usb4/retimer
Maulik V Vaghela91c38c82021-06-29 18:07:55 +0530469 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
470 use tcss_usb3_port1 as dfp[0].typec_port
Maulik V Vaghela9e23d012021-06-09 14:03:08 +0530471 device generic 0 on end
472 end
473 end
474 device ref tcss_dma1 on
475 chip drivers/intel/usb4/retimer
Maulik V Vaghela91c38c82021-06-29 18:07:55 +0530476 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
477 use tcss_usb3_port3 as dfp[0].typec_port
Maulik V Vaghela9e23d012021-06-09 14:03:08 +0530478 device generic 0 on end
479 end
480 end
Eric Laib1e8a8a2021-04-23 14:34:57 +0800481 device ref pcie_rp8 on
482 chip soc/intel/common/block/pcie/rtd3
483 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H13)"
484 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D18)"
485 register "srcclk_pin" = "3"
486 device generic 0 on end
487 end
488 end #PCIE8 SD card
Eric Lai2bec7f02020-12-21 17:28:31 +0800489 device ref i2c0 on
490 chip drivers/i2c/generic
491 register "hid" = ""10EC5682""
492 register "name" = ""RT58""
493 register "desc" = ""Headset Codec""
494 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
495 # Set the jd_src to RT5668_JD1 for jack detection
496 register "property_count" = "1"
497 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
498 register "property_list[0].name" = ""realtek,jd-src""
499 register "property_list[0].integer" = "1"
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +0530500 device i2c 1a on
501 probe AUDIO MAX98357_ALC5682I_I2S
Amanda Huange7a14cf2022-04-08 17:52:29 +0800502 probe AUDIO MAX98360_ALC5682I_I2S
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +0530503 end
Eric Lai2bec7f02020-12-21 17:28:31 +0800504 end
Eric Lai312fb712021-08-18 15:47:20 +0800505 chip drivers/i2c/nau8825
506 register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPP_A23)"
507 register "jkdet_enable" = "1"
508 register "jkdet_pull_enable" = "0"
Paul Menzela3ce81d2021-08-21 09:20:47 +0200509 register "jkdet_polarity" = "1" # ActiveLow
510 register "vref_impedance" = "2" # 125kOhm
511 register "micbias_voltage" = "6" # 2.754
Eric Lai312fb712021-08-18 15:47:20 +0800512 register "sar_threshold_num" = "4"
513 register "sar_threshold[0]" = "0x0c"
514 register "sar_threshold[1]" = "0x1c"
515 register "sar_threshold[2]" = "0x38"
516 register "sar_threshold[3]" = "0x60"
517 register "sar_hysteresis" = "1"
Paul Menzela3ce81d2021-08-21 09:20:47 +0200518 register "sar_voltage" = "0" # VDDA
519 register "sar_compare_time" = "0" # 500ns
520 register "sar_sampling_time" = "0" # 2us
521 register "short_key_debounce" = "2" # 100ms
522 register "jack_insert_debounce" = "7" # 512ms
523 register "jack_eject_debounce" = "7" # 512ms
Eric Lai312fb712021-08-18 15:47:20 +0800524 device i2c 1a on
525 probe AUDIO ALC1019_NAU88L25B_I2S
Mac Chiangeefdfb52023-06-20 04:30:40 -0400526 probe AUDIO NAU8318_NAU88L25B_I2S
Eric Lai312fb712021-08-18 15:47:20 +0800527 end
528 end
529 chip drivers/generic/alc1015
530 register "hid" = ""RTL1019""
531 register "sdb" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
532 device generic 1 on
533 probe AUDIO ALC1019_NAU88L25B_I2S
534 end
535 end
Scott Chao890702f2021-06-02 14:32:27 +0800536 chip drivers/intel/mipi_camera
537 register "acpi_hid" = ""OVTI8856""
538 register "acpi_uid" = "0"
539 register "acpi_name" = ""CAM0""
540 register "chip_name" = ""Ov 8856 Camera""
541 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
542
543 register "ssdb.lanes_used" = "4"
544 register "ssdb.link_used" = "0"
545 register "ssdb.vcm_type" = "0x0C"
546 register "vcm_name" = ""VCM0""
547 register "num_freq_entries" = "2"
548 register "link_freq[0]" = "360 * MHz" # 360 MHz
549 register "link_freq[1]" = "180 * MHz" # 180 MHz
550 register "remote_name" = ""IPU0""
551
Bora Guvendik489da322023-03-09 14:48:12 -0800552 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
Scott Chao890702f2021-06-02 14:32:27 +0800553 register "has_power_resource" = "1"
Bora Guvendik489da322023-03-09 14:48:12 -0800554
Scott Chao890702f2021-06-02 14:32:27 +0800555 #Controls
556 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_3"
557 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
558
559 register "gpio_panel.gpio[0].gpio_num" = "GPP_D15" #power_enable_2p8
560 register "gpio_panel.gpio[1].gpio_num" = "GPP_D16" #power_enable_1p2
561 register "gpio_panel.gpio[2].gpio_num" = "GPP_D3" #reset
562
563 #_ON
564 register "on_seq.ops_cnt" = "5"
565 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
566 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
567 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
568 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
569 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
570
571 #_OFF
572 register "off_seq.ops_cnt" = "4"
573 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
574 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
575 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
576 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
577
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700578 device i2c 10 on
579 probe WFC WFC_MIPI_OVTI8856
580 end
Scott Chao890702f2021-06-02 14:32:27 +0800581 end
582 chip drivers/intel/mipi_camera
583 register "acpi_uid" = "2"
584 register "acpi_name" = ""VCM0""
585 register "chip_name" = ""DW9768 VCM""
586 register "device_type" = "INTEL_ACPI_CAMERA_VCM"
587
Scott Chao890702f2021-06-02 14:32:27 +0800588 register "vcm_compat" = ""dongwoon,dw9768""
589
Bora Guvendik489da322023-03-09 14:48:12 -0800590 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
591
592 register "has_power_resource" = "1"
593
594 #Controls
595 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
596
597 #_ON
598 register "on_seq.ops_cnt" = "1"
599 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
600
601 #_OFF
602 register "off_seq.ops_cnt" = "1"
603 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
604
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700605 device i2c 0C on
606 probe WFC WFC_MIPI_OVTI8856
607 end
Scott Chao890702f2021-06-02 14:32:27 +0800608 end
609 chip drivers/intel/mipi_camera
610 register "acpi_uid" = "1"
611 register "acpi_name" = ""NVM0""
612 register "chip_name" = ""AT24 EEPROM""
613 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
614
Scott Chao890702f2021-06-02 14:32:27 +0800615 register "nvm_compat" = ""atmel,24c1024""
616
617 register "nvm_size" = "0x2800"
618 register "nvm_pagesize" = "0x01"
619 register "nvm_readonly" = "0x01"
Varshit B Pandya73161c62021-10-30 15:37:28 +0530620 register "nvm_width" = "0x10"
Scott Chao890702f2021-06-02 14:32:27 +0800621
Bora Guvendik489da322023-03-09 14:48:12 -0800622 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
623
624 register "has_power_resource" = "1"
625
626 #Controls
627 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
628
629 #_ON
630 register "on_seq.ops_cnt" = "1"
631 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
632
633 #_OFF
634 register "off_seq.ops_cnt" = "1"
635 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
636
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700637 device i2c 58 on
638 probe WFC WFC_MIPI_OVTI8856
639 end
640 end
641 chip drivers/intel/mipi_camera
642 register "acpi_hid" = ""OVTI8856""
643 register "acpi_uid" = "0"
644 register "acpi_name" = ""CAM0""
645 register "chip_name" = ""Ov 8856 Camera""
646 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
647
648 register "ssdb.lanes_used" = "4"
649 register "ssdb.link_used" = "0"
650 register "ssdb.vcm_type" = "0x0C"
651 register "vcm_name" = ""VCM0""
652 register "num_freq_entries" = "2"
653 register "link_freq[0]" = "360 * MHz" # 360 MHz
654 register "link_freq[1]" = "180 * MHz" # 180 MHz
655 register "remote_name" = ""IPU0""
656
Bora Guvendik489da322023-03-09 14:48:12 -0800657 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
658
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700659 register "has_power_resource" = "1"
660 #Controls
661 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_3"
662 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
663
664 register "gpio_panel.gpio[0].gpio_num" = "GPP_D15" #power_enable_2p8
665 register "gpio_panel.gpio[1].gpio_num" = "GPP_D16" #power_enable_1p2
666 register "gpio_panel.gpio[2].gpio_num" = "GPP_D3" #reset
667
668 #_ON
669 register "on_seq.ops_cnt" = "5"
670 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
671 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
672 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
673 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
674 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
675
676 #_OFF
677 register "off_seq.ops_cnt" = "4"
678 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
679 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
680 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
681 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
682
683 device i2c 36 on
684 probe WFC WFC_MIPI_KBAE350
685 end
686 end
687 chip drivers/intel/mipi_camera
688 register "acpi_uid" = "2"
689 register "acpi_name" = ""VCM0""
690 register "chip_name" = ""DW AF DAC""
691 register "device_type" = "INTEL_ACPI_CAMERA_VCM"
692
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700693 register "vcm_compat" = ""dongwoon,dw9714""
694
Bora Guvendik489da322023-03-09 14:48:12 -0800695 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
696
697 register "has_power_resource" = "1"
698
699 #Controls
700 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
701
702 #_ON
703 register "on_seq.ops_cnt" = "1"
704 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
705
706 #_OFF
707 register "off_seq.ops_cnt" = "1"
708 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
709
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700710 device i2c 0C on
711 probe WFC WFC_MIPI_KBAE350
712 end
713 end
714 chip drivers/intel/mipi_camera
715 register "acpi_uid" = "1"
716 register "acpi_name" = ""NVM0""
717 register "chip_name" = ""GT24C08""
718 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
719
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700720 register "nvm_compat" = ""atmel,24c08""
721
722 register "nvm_size" = "0x2000"
723 register "nvm_pagesize" = "0x01"
724 register "nvm_readonly" = "0x01"
725 register "nvm_width" = "0x10"
726
Bora Guvendik489da322023-03-09 14:48:12 -0800727 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
728
729 register "has_power_resource" = "1"
730
731 #Controls
732 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
733
734 #_ON
735 register "on_seq.ops_cnt" = "1"
736 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
737
738 #_OFF
739 register "off_seq.ops_cnt" = "1"
740 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
741
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700742 device i2c 50 on
743 probe WFC WFC_MIPI_KBAE350
744 end
Scott Chao890702f2021-06-02 14:32:27 +0800745 end
746 end #I2C0
Eric Lai2bec7f02020-12-21 17:28:31 +0800747 device ref i2c1 on
Amanda Huang0c962912022-04-19 17:21:17 +0800748 chip drivers/i2c/tpm
749 register "hid" = ""GOOG0005""
750 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
751 device i2c 50 on end
Eric Laibd9d6ab2021-04-26 13:58:17 +0800752 end
Amanda Huang0c962912022-04-19 17:21:17 +0800753 end #I2C1
Eric Lai2bec7f02020-12-21 17:28:31 +0800754 device ref i2c2 on
755 chip drivers/i2c/sx9324
756 register "desc" = ""SAR1 Proximity Sensor""
Eric Laicf6e4572021-06-30 14:09:22 +0800757 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_B3_IRQ)"
Eric Lai2bec7f02020-12-21 17:28:31 +0800758 register "speed" = "I2C_SPEED_FAST"
Tim Wawrzynczak37c33272021-03-01 08:24:52 -0700759 register "uid" = "1"
Eric Lai2bec7f02020-12-21 17:28:31 +0800760 register "reg_gnrl_ctrl0" = "0x16"
761 register "reg_gnrl_ctrl1" = "0x21"
762 register "reg_afe_ctrl0" = "0x00"
763 register "reg_afe_ctrl1" = "0x10"
764 register "reg_afe_ctrl2" = "0x00"
765 register "reg_afe_ctrl3" = "0x00"
766 register "reg_afe_ctrl4" = "0x07"
767 register "reg_afe_ctrl5" = "0x00"
768 register "reg_afe_ctrl6" = "0x00"
769 register "reg_afe_ctrl7" = "0x07"
770 register "reg_afe_ctrl8" = "0x12"
771 register "reg_afe_ctrl9" = "0x0f"
772 register "reg_prox_ctrl0" = "0x12"
773 register "reg_prox_ctrl1" = "0x12"
774 register "reg_prox_ctrl2" = "0x90"
775 register "reg_prox_ctrl3" = "0x60"
776 register "reg_prox_ctrl4" = "0x0c"
777 register "reg_prox_ctrl5" = "0x12"
778 register "reg_prox_ctrl6" = "0x3c"
779 register "reg_prox_ctrl7" = "0x58"
780 register "reg_adv_ctrl0" = "0x00"
781 register "reg_adv_ctrl1" = "0x00"
782 register "reg_adv_ctrl2" = "0x00"
783 register "reg_adv_ctrl3" = "0x00"
784 register "reg_adv_ctrl4" = "0x00"
785 register "reg_adv_ctrl5" = "0x05"
786 register "reg_adv_ctrl6" = "0x00"
787 register "reg_adv_ctrl7" = "0x00"
788 register "reg_adv_ctrl8" = "0x00"
789 register "reg_adv_ctrl9" = "0x00"
790 register "reg_adv_ctrl10" = "0x5c"
791 register "reg_adv_ctrl11" = "0x52"
792 register "reg_adv_ctrl12" = "0xb5"
793 register "reg_adv_ctrl13" = "0x00"
794 register "reg_adv_ctrl14" = "0x80"
795 register "reg_adv_ctrl15" = "0x0c"
796 register "reg_adv_ctrl16" = "0x38"
797 register "reg_adv_ctrl17" = "0x56"
798 register "reg_adv_ctrl18" = "0x33"
799 register "reg_adv_ctrl19" = "0xf0"
800 register "reg_adv_ctrl20" = "0xf0"
801 device i2c 28 on end
802 end
803 chip drivers/i2c/sx9324
804 register "desc" = ""SAR2 Proximity Sensor""
Eric Laicf6e4572021-06-30 14:09:22 +0800805 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_H19_IRQ)"
Eric Lai2bec7f02020-12-21 17:28:31 +0800806 register "speed" = "I2C_SPEED_FAST"
807 register "uid" = "2"
808 register "reg_gnrl_ctrl0" = "0x16"
809 register "reg_gnrl_ctrl1" = "0x21"
810 register "reg_afe_ctrl0" = "0x00"
811 register "reg_afe_ctrl1" = "0x10"
812 register "reg_afe_ctrl2" = "0x00"
813 register "reg_afe_ctrl3" = "0x00"
814 register "reg_afe_ctrl4" = "0x07"
815 register "reg_afe_ctrl5" = "0x00"
816 register "reg_afe_ctrl6" = "0x00"
817 register "reg_afe_ctrl7" = "0x07"
818 register "reg_afe_ctrl8" = "0x12"
819 register "reg_afe_ctrl9" = "0x0f"
820 register "reg_prox_ctrl0" = "0x12"
821 register "reg_prox_ctrl1" = "0x12"
822 register "reg_prox_ctrl2" = "0x90"
823 register "reg_prox_ctrl3" = "0x60"
824 register "reg_prox_ctrl4" = "0x0c"
825 register "reg_prox_ctrl5" = "0x12"
826 register "reg_prox_ctrl6" = "0x3c"
827 register "reg_prox_ctrl7" = "0x58"
828 register "reg_adv_ctrl0" = "0x00"
829 register "reg_adv_ctrl1" = "0x00"
830 register "reg_adv_ctrl2" = "0x00"
831 register "reg_adv_ctrl3" = "0x00"
832 register "reg_adv_ctrl4" = "0x00"
833 register "reg_adv_ctrl5" = "0x05"
834 register "reg_adv_ctrl6" = "0x00"
835 register "reg_adv_ctrl7" = "0x00"
836 register "reg_adv_ctrl8" = "0x00"
837 register "reg_adv_ctrl9" = "0x00"
838 register "reg_adv_ctrl10" = "0x5c"
839 register "reg_adv_ctrl11" = "0x52"
840 register "reg_adv_ctrl12" = "0xb5"
841 register "reg_adv_ctrl13" = "0x00"
842 register "reg_adv_ctrl14" = "0x80"
843 register "reg_adv_ctrl15" = "0x0c"
844 register "reg_adv_ctrl16" = "0x38"
845 register "reg_adv_ctrl17" = "0x56"
846 register "reg_adv_ctrl18" = "0x33"
847 register "reg_adv_ctrl19" = "0xf0"
848 register "reg_adv_ctrl20" = "0xf0"
849 device i2c 2C on end
850 end
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530851 chip drivers/intel/mipi_camera
Varshit B Pandya5d719942021-07-27 09:39:31 +0530852 register "acpi_hid" = ""INT3478""
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530853 register "acpi_uid" = "0"
854 register "acpi_name" = ""CAM1""
Varshit B Pandya5d719942021-07-27 09:39:31 +0530855 register "chip_name" = ""imx 208 Camera""
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530856 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
857
858 register "ssdb.lanes_used" = "2"
859 register "ssdb.link_used" = "1"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530860 register "num_freq_entries" = "2"
861 register "link_freq[0]" = "384 * MHz" # 384 MHz
862 register "link_freq[1]" = "96 * MHz" # 96 MHz
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530863 register "remote_name" = ""IPU0""
Bora Guvendik489da322023-03-09 14:48:12 -0800864 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530865
866 register "has_power_resource" = "1"
867 #Controls
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530868 register "gpio_panel.gpio[0].gpio_num" = "GPP_C3" #PP3300_FCAM_X
869 register "gpio_panel.gpio[1].gpio_num" = "GPP_A17" #EN_UCAM_PWR
870 register "gpio_panel.gpio[2].gpio_num" = "GPP_F20" #reset
Varshit B Pandya5d719942021-07-27 09:39:31 +0530871 register "gpio_panel.gpio[3].gpio_num" = "GPP_H21" #CLK_EN
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530872
873 #_ON
874 register "on_seq.ops_cnt" = "5"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530875 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(3, 0)"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530876 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
877 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
878 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
879 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
880
881 #_OFF
882 register "off_seq.ops_cnt" = "4"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530883 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(3, 0)"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530884 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
885 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
886 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
887
Varshit B Pandya5d719942021-07-27 09:39:31 +0530888 device i2c 10 on
889 probe UFC UFC_MIPI_IMX208
890 end
891 end
892 chip drivers/intel/mipi_camera
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700893 register "acpi_hid" = ""ACPI_DT_NAMESPACE_HID""
Varshit B Pandya5d719942021-07-27 09:39:31 +0530894 register "acpi_uid" = "1"
895 register "acpi_name" = ""NVM1""
896 register "chip_name" = ""GT24C16S""
897 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
898
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700899 register "nvm_compat" = ""atmel,24c1024""
Varshit B Pandya5d719942021-07-27 09:39:31 +0530900
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700901 register "nvm_size" = "0x800"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530902 register "nvm_pagesize" = "0x01"
903 register "nvm_readonly" = "0x01"
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700904 register "nvm_width" = "0x08"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530905
Bora Guvendik489da322023-03-09 14:48:12 -0800906 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
907
908 register "has_power_resource" = "1"
909
910 #Controls
911 register "gpio_panel.gpio[0].gpio_num" = "GPP_C3" #PP3300_FCAM_X
912
913 #_ON
914 register "on_seq.ops_cnt" = "1"
915 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
916
917 #_OFF
918 register "off_seq.ops_cnt" = "1"
919 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
920
Varshit B Pandya5d719942021-07-27 09:39:31 +0530921 device i2c 50 on
922 probe UFC UFC_MIPI_IMX208
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530923 end
924 end
Dan Callaghan4e6c9152021-10-28 21:22:22 +1100925 chip drivers/i2c/generic
926 register "hid" = ""GOOG0020""
Jon Murphyc4e90452022-06-28 10:36:23 -0600927 register "desc" = ""ChromeOS HPS""
Dan Callaghan4e6c9152021-10-28 21:22:22 +1100928 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E7)" # EN_HPS_PWR
929 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E3_IRQ)" # HPS_INT_ODL
930 # HPS uses I2C addresses 0x30 and 0x51.
931 # The address we provide here is not significant because
932 # neither coreboot nor Linux have a driver for HPS,
933 # it's only used from userspace.
934 device i2c 30 on
935 probe HPS HPS_PRESENT
936 end
937 end
Amanda Huang0c962912022-04-19 17:21:17 +0800938 end #I2C2
David Wu6de48982021-11-18 21:22:33 +0800939 device ref i2c3 on
Amanda Huang0c962912022-04-19 17:21:17 +0800940 chip drivers/i2c/hid
941 register "generic.hid" = ""ELAN9050""
942 register "generic.desc" = ""ELAN Touchscreen""
943 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
Matt DeVillier8a0e6b52023-04-27 10:04:27 -0500944 register "generic.detect" = "1"
Amanda Huang0c962912022-04-19 17:21:17 +0800945 register "generic.reset_gpio" =
946 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
947 register "generic.reset_delay_ms" = "300"
948 register "generic.reset_off_delay_ms" = "1"
949 register "generic.enable_gpio" =
950 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
951 register "generic.enable_delay_ms" = "6"
952 register "generic.stop_gpio" =
953 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
954 register "generic.stop_off_delay_ms" = "1"
955 register "generic.has_power_resource" = "1"
956 register "hid_desc_reg_offset" = "0x01"
957 device i2c 0x10 on end
David Wu6de48982021-11-18 21:22:33 +0800958 end
Amanda Huang0c962912022-04-19 17:21:17 +0800959 chip drivers/i2c/hid
960 register "generic.hid" = ""GDIX0000""
961 register "generic.desc" = ""Goodix Touchscreen""
962 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
Matt DeVillier8a0e6b52023-04-27 10:04:27 -0500963 register "generic.detect" = "1"
Amanda Huang0c962912022-04-19 17:21:17 +0800964 register "generic.reset_gpio" =
965 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
966 register "generic.reset_delay_ms" = "120"
967 register "generic.reset_off_delay_ms" = "3"
968 register "generic.enable_gpio" =
969 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
970 register "generic.enable_delay_ms" = "12"
971 register "generic.stop_gpio" =
972 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
973 register "generic.stop_off_delay_ms" = "1"
974 register "generic.has_power_resource" = "1"
975 register "hid_desc_reg_offset" = "0x01"
976 device i2c 0x5d on end
977 end
978 chip drivers/i2c/hid
979 register "generic.hid" = ""SIS9815""
980 register "generic.desc" = ""SIS Touchscreen""
981 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
Matt DeVillier8a0e6b52023-04-27 10:04:27 -0500982 register "generic.detect" = "1"
Amanda Huang0c962912022-04-19 17:21:17 +0800983 register "generic.reset_gpio" =
984 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
985 register "generic.stop_gpio" =
986 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
987 register "generic.stop_delay_ms" = "100"
988 register "generic.enable_gpio" =
989 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
990 register "generic.enable_delay_ms" = "7"
991 register "generic.has_power_resource" = "1"
992 register "hid_desc_reg_offset" = "0x00"
993 device i2c 5c on end
994 end
995 end #I2C3
Eric Lai2bec7f02020-12-21 17:28:31 +0800996 device ref i2c5 on
997 chip drivers/i2c/generic
998 register "hid" = ""ELAN0000""
999 register "desc" = ""ELAN Touchpad""
1000 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
1001 register "wake" = "GPE0_DW2_14"
Matt DeVillier2cf52d82022-09-01 15:09:24 -05001002 register "detect" = "1"
Eric Lai2bec7f02020-12-21 17:28:31 +08001003 device i2c 15 on end
1004 end
Amanda Huang0c962912022-04-19 17:21:17 +08001005 end #I2C5
Eric Lai2bec7f02020-12-21 17:28:31 +08001006 device ref hda on
1007 chip drivers/generic/max98357a
1008 register "hid" = ""MX98357A""
1009 register "sdmode_gpio" =
1010 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
1011 register "sdmode_delay" = "5"
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +05301012 device generic 0 on
1013 probe AUDIO MAX98357_ALC5682I_I2S
1014 end
1015 end
1016
Amanda Huang651b7652022-03-23 00:25:07 +08001017 chip drivers/generic/max98357a
1018 register "hid" = ""MX98360A""
1019 register "sdmode_gpio" =
1020 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
1021 register "sdmode_delay" = "5"
1022 device generic 0 on
Amanda Huange7a14cf2022-04-08 17:52:29 +08001023 probe AUDIO MAX98360_ALC5682I_I2S
Amanda Huang651b7652022-03-23 00:25:07 +08001024 end
1025 end
1026
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +05301027 chip drivers/intel/soundwire
1028 device generic 0 on
1029 probe AUDIO MAX98373_ALC5682_SNDW
1030 chip drivers/soundwire/alc5682
1031 # SoundWire Link 0 ID 1
1032 register "desc" = ""Headset Codec""
1033 device generic 0.1 on end
1034 end
1035 chip drivers/soundwire/max98373
1036 # SoundWire Link 2 ID 3
1037 register "desc" = ""Left Speaker Amp""
1038 device generic 2.3 on end
1039 end
1040 chip drivers/soundwire/max98373
1041 # SoundWire Link 2 ID 7
1042 register "desc" = ""Right Speaker Amp""
1043 device generic 2.7 on end
1044 end
1045 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001046 end
Mac Chiangeefdfb52023-06-20 04:30:40 -04001047
1048 chip drivers/generic/nau8315
1049 register "hid" = "NAU8318"
1050 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
1051 device generic 0 on
1052 probe AUDIO NAU8318_NAU88L25B_I2S
1053 end
1054 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001055 end
1056 device ref gspi1 on
1057 chip drivers/spi/acpi
1058 register "name" = ""CRFP""
1059 register "hid" = "ACPI_DT_NAMESPACE_HID"
1060 register "uid" = "1"
1061 register "compat_string" = ""google,cros-ec-spi""
Tim Wawrzynczak0b7bc802021-06-02 16:29:01 -06001062 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F15_IRQ)"
Eric Lai2bec7f02020-12-21 17:28:31 +08001063 register "wake" = "GPE0_DW2_15"
Tarun Tuli2b523ce2022-08-29 13:39:58 -04001064 register "has_power_resource" = "1"
1065 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D1)"
1066 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D2)"
1067 register "enable_delay_ms" = "3"
Matt DeVillieraf46b472023-10-28 11:16:14 -05001068 device spi 0 hidden end
Eric Lai2bec7f02020-12-21 17:28:31 +08001069 end # FPMCU
1070 end
1071 device ref pch_espi on
1072 chip ec/google/chromeec
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001073 use conn0 as mux_conn[0]
1074 use conn1 as mux_conn[1]
1075 use conn2 as mux_conn[2]
Anil Kumara98d7a92023-01-18 11:56:36 -08001076 device pnp 0c09.0 on end
Eric Lai2bec7f02020-12-21 17:28:31 +08001077 end
1078 end
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001079 device ref pmc hidden
1080 chip drivers/intel/pmc_mux
1081 device generic 0 on
1082 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +11001083 use usb2_port1 as usb2_port
1084 use tcss_usb3_port1 as usb3_port
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001085 device generic 0 alias conn0 on end
1086 end
1087 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +11001088 use usb2_port2 as usb2_port
1089 use tcss_usb3_port2 as usb3_port
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001090 device generic 1 alias conn1 on end
1091 end
1092 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +11001093 use usb2_port3 as usb2_port
1094 use tcss_usb3_port3 as usb3_port
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001095 device generic 2 alias conn2 on end
1096 end
1097 end
1098 end
1099 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001100 device ref tcss_xhci on
1101 chip drivers/usb/acpi
1102 device ref tcss_root_hub on
1103 chip drivers/usb/acpi
1104 register "desc" = ""USB3 Type-C Port C0 (MLB)""
1105 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001106 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001107 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001108 device ref tcss_usb3_port1 on end
1109 end
1110 chip drivers/usb/acpi
1111 register "desc" = ""USB3 Type-C Port C1 (DB)""
1112 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001113 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301114 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
Ron Lee558952a2022-12-13 19:48:59 +08001115 register "usb_lpm_incapable" = "true"
Eric Lai2bec7f02020-12-21 17:28:31 +08001116 device ref tcss_usb3_port2 on end
1117 end
1118 chip drivers/usb/acpi
1119 register "desc" = ""USB3 Type-C Port C2 (MLB)""
1120 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001121 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001122 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001123 device ref tcss_usb3_port3 on end
1124 end
1125 end
1126 end
1127 end
1128 device ref xhci on
1129 chip drivers/usb/acpi
1130 device ref xhci_root_hub on
1131 chip drivers/usb/acpi
1132 register "desc" = ""USB2 Type-C Port C0 (MLB)""
1133 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001134 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001135 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001136 device ref usb2_port1 on end
1137 end
1138 chip drivers/usb/acpi
1139 register "desc" = ""USB2 Type-C Port C1 (DB)""
1140 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001141 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301142 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001143 device ref usb2_port2 on end
1144 end
1145 chip drivers/usb/acpi
1146 register "desc" = ""USB2 Type-C Port C2 (MLB)""
1147 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001148 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001149 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001150 device ref usb2_port3 on end
1151 end
1152 chip drivers/usb/acpi
1153 register "desc" = ""USB2 WWAN""
1154 register "type" = "UPC_TYPE_INTERNAL"
1155 device ref usb2_port4 on end
1156 end
1157 chip drivers/usb/acpi
1158 register "desc" = ""USB2 Camera""
1159 register "type" = "UPC_TYPE_INTERNAL"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +05301160 device ref usb2_port6 on
1161 probe UFC UFC_USB
1162 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001163 end
1164 chip drivers/usb/acpi
Tim Wawrzynczak20919652021-02-16 15:17:48 -07001165 register "desc" = ""USB2 Type-A Port A0 (DB)""
Eric Lai2bec7f02020-12-21 17:28:31 +08001166 register "type" = "UPC_TYPE_A"
Won Chungf1a3f182022-01-25 22:30:12 +00001167 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301168 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001169 device ref usb2_port9 on end
1170 end
1171 chip drivers/usb/acpi
1172 register "desc" = ""USB2 Bluetooth""
1173 register "type" = "UPC_TYPE_INTERNAL"
1174 register "reset_gpio" =
Aamir Bohra1d14ef22021-03-02 19:18:30 +05301175 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
Eric Lai2bec7f02020-12-21 17:28:31 +08001176 device ref usb2_port10 on end
1177 end
1178 chip drivers/usb/acpi
Tim Wawrzynczak20919652021-02-16 15:17:48 -07001179 register "desc" = ""USB3 Type-A Port A0 (DB)""
Eric Lai2bec7f02020-12-21 17:28:31 +08001180 register "type" = "UPC_TYPE_USB3_A"
Won Chungf1a3f182022-01-25 22:30:12 +00001181 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301182 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001183 device ref usb3_port1 on end
1184 end
1185 chip drivers/usb/acpi
1186 register "desc" = ""USB3 WWAN""
1187 register "type" = "UPC_TYPE_INTERNAL"
Tim Wawrzynczak20919652021-02-16 15:17:48 -07001188 device ref usb3_port4 on end
Eric Lai2bec7f02020-12-21 17:28:31 +08001189 end
1190 end
1191 end
1192 end
1193 end
1194end