blob: f15525b9e14cc3d744f1b854a973ff8677518a14 [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
Matt DeVillier4e685bf2024-01-19 20:37:58 -0600125 register "device[0].name" = ""LCD0""
Matt DeVilliercf29efa2024-01-16 18:46:20 -0600126 # Internal panel on the first port of the graphics chip
Matt DeVillier1810a182024-01-26 16:09:42 -0600127 register "device[0].type" = "panel"
Won Chung1491ad52023-04-12 19:53:09 +0000128 # DDIB for HDMI
Won Chungbc1533e2023-07-27 20:10:25 +0000129 # If HDMI is not enumerated in the kernel, then no GFX device should be added for DDIB
Won Chung1491ad52023-04-12 19:53:09 +0000130 register "device[1].name" = ""DD01""
131 # TCP0 (DP-1) for port C0
132 register "device[2].name" = ""DD02""
133 register "device[2].use_pld" = "true"
134 register "device[2].pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
135 # TCP1 (DP-2) for port C1
136 register "device[3].name" = ""DD03""
137 register "device[3].use_pld" = "true"
138 register "device[3].pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
139 # TCP2 (DP-3) for port C2
140 register "device[4].name" = ""DD04""
141 register "device[4].use_pld" = "true"
142 register "device[4].pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
Won Chungbc1533e2023-07-27 20:10:25 +0000143 # 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 +0000144 register "device[5].name" = ""DD05""
145 device generic 0 on end
146 end
147 end # Integrated Graphics Device
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530148 device ref dtt on
149 chip drivers/intel/dptf
150 ## sensor information
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530151 register "options.tsr[0].desc" = ""DRAM_SOC""
152 register "options.tsr[1].desc" = ""Ambient""
153 register "options.tsr[2].desc" = ""Charger""
154 register "options.tsr[3].desc" = ""WWAN""
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530155
156 # TODO: below values are initial reference values only
157 ## Active Policy
158 register "policies.active" = "{
159 [0] = {
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530160 .target = DPTF_TEMP_SENSOR_0,
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530161 .thresholds = {
Sumeet Pawnikarf5a1ad12023-02-08 17:52:42 +0530162 TEMP_PCT(75, 95),
163 TEMP_PCT(70, 90),
164 TEMP_PCT(65, 80),
165 TEMP_PCT(60, 70),
166 TEMP_PCT(55, 60),
167 TEMP_PCT(50, 50),
168 TEMP_PCT(45, 40),
169 TEMP_PCT(40, 30),
170 }
171 },
172 [1] = {
173 .target = DPTF_TEMP_SENSOR_1,
174 .thresholds = {
175 TEMP_PCT(75, 95),
176 TEMP_PCT(70, 90),
177 TEMP_PCT(65, 80),
178 TEMP_PCT(60, 70),
179 TEMP_PCT(55, 60),
180 TEMP_PCT(50, 50),
181 TEMP_PCT(45, 40),
182 TEMP_PCT(40, 30),
183 }
184 },
185 [2] = {
186 .target = DPTF_TEMP_SENSOR_2,
187 .thresholds = {
188 TEMP_PCT(82, 97),
189 TEMP_PCT(78, 93),
190 TEMP_PCT(72, 86),
191 TEMP_PCT(66, 60),
192 TEMP_PCT(60, 40),
193 }
194 },
195 [3] = {
196 .target = DPTF_TEMP_SENSOR_3,
197 .thresholds = {
198 TEMP_PCT(75, 95),
199 TEMP_PCT(70, 90),
200 TEMP_PCT(65, 80),
201 TEMP_PCT(60, 70),
202 TEMP_PCT(55, 60),
203 TEMP_PCT(50, 50),
204 TEMP_PCT(45, 40),
205 TEMP_PCT(40, 30),
206 }
207 }
208 }"
209
210 ## Passive Policy
211 register "policies.passive" = "{
212 [0] = DPTF_PASSIVE(CPU, CPU, 97, 5000),
213 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 85, 5000),
214 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 85, 5000),
215 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 80, 5000),
216 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 85, 5000),
217 }"
218
219 ## Critical Policy
220 register "policies.critical" = "{
221 [0] = DPTF_CRITICAL(CPU, 115, SHUTDOWN),
222 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 90, SHUTDOWN),
223 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN),
224 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 90, SHUTDOWN),
225 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 90, SHUTDOWN),
226 }"
227
228 register "controls.power_limits" = "{
229 .pl1 = {
230 .min_power = 28000,
231 .max_power = 28000,
232 .time_window_min = 28 * MSECS_PER_SEC,
233 .time_window_max = 32 * MSECS_PER_SEC,
234 .granularity = 200,
235 },
236 .pl2 = {
237 .min_power = 64000,
238 .max_power = 64000,
239 .time_window_min = 28 * MSECS_PER_SEC,
240 .time_window_max = 32 * MSECS_PER_SEC,
241 .granularity = 1000,
242 }
243 }"
244
245 ## Charger Performance Control (Control, mA)
246 register "controls.charger_perf" = "{
247 [0] = { 255, 1700 },
248 [1] = { 24, 1500 },
249 [2] = { 16, 1000 },
250 [3] = { 8, 500 }
251 }"
252
253 ## Fan Performance Control (Percent, Speed, Noise, Power)
254 register "controls.fan_perf" = "{
255 [0] = { 90, 6700, 220, 2200, },
256 [1] = { 80, 5800, 180, 1800, },
257 [2] = { 70, 5000, 145, 1450, },
258 [3] = { 60, 4900, 115, 1150, },
259 [4] = { 50, 3838, 90, 900, },
260 [5] = { 40, 2904, 55, 550, },
261 [6] = { 30, 2337, 30, 300, },
262 [7] = { 20, 1608, 15, 150, },
263 [8] = { 10, 800, 10, 100, },
264 [9] = { 0, 0, 0, 50, }
265 }"
266
267 ## Fan options
268 register "options.fan.fine_grained_control" = "1"
269 register "options.fan.step_size" = "2"
270
271 device generic 0 on
272 probe THERMAL THERMAL_28W
273 end
274 end
275 chip drivers/intel/dptf
276 ## sensor information
277 register "options.tsr[0].desc" = ""DRAM_SOC""
278 register "options.tsr[1].desc" = ""Ambient""
279 register "options.tsr[2].desc" = ""Charger""
280 register "options.tsr[3].desc" = ""WWAN""
281
282 # TODO: below values are initial reference values only
283 ## Active Policy
284 register "policies.active" = "{
285 [0] = {
286 .target = DPTF_TEMP_SENSOR_0,
287 .thresholds = {
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530288 TEMP_PCT(75, 97),
289 TEMP_PCT(70, 93),
290 TEMP_PCT(60, 86),
291 TEMP_PCT(52, 80),
292 TEMP_PCT(47, 64),
293 TEMP_PCT(43, 52),
294 TEMP_PCT(40, 40),
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530295 }
296 },
297 [1] = {
298 .target = DPTF_TEMP_SENSOR_1,
299 .thresholds = {
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530300 TEMP_PCT(75, 97),
301 TEMP_PCT(70, 93),
302 TEMP_PCT(60, 86),
303 TEMP_PCT(52, 80),
304 TEMP_PCT(47, 64),
305 TEMP_PCT(43, 52),
306 TEMP_PCT(40, 40),
307 }
308 },
309 [2] = {
310 .target = DPTF_TEMP_SENSOR_2,
311 .thresholds = {
312 TEMP_PCT(82, 97),
313 TEMP_PCT(78, 93),
314 TEMP_PCT(72, 86),
315 TEMP_PCT(60, 80),
316 }
317 },
318 [3] = {
319 .target = DPTF_TEMP_SENSOR_3,
320 .thresholds = {
321 TEMP_PCT(75, 97),
322 TEMP_PCT(70, 93),
323 TEMP_PCT(60, 86),
324 TEMP_PCT(52, 80),
325 TEMP_PCT(47, 64),
326 TEMP_PCT(43, 52),
327 TEMP_PCT(40, 40),
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530328 }
329 }
330 }"
331
332 ## Passive Policy
333 register "policies.passive" = "{
334 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530335 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 80, 5000),
336 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 80, 5000),
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530337 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 75, 5000),
Sumeet Pawnikara6f01932023-02-07 12:54:27 +0530338 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 80, 5000),
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530339 }"
340
341 ## Critical Policy
342 register "policies.critical" = "{
343 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
344 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 85, SHUTDOWN),
345 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 85, SHUTDOWN),
Sumeet Pawnikarf0322212021-05-20 18:16:34 +0530346 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 85, SHUTDOWN),
347 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 85, SHUTDOWN),
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530348 }"
349
350 register "controls.power_limits" = "{
351 .pl1 = {
Sumeet Pawnikara2e0c3d2023-02-07 12:57:30 +0530352 .min_power = 15000,
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530353 .max_power = 15000,
354 .time_window_min = 28 * MSECS_PER_SEC,
355 .time_window_max = 32 * MSECS_PER_SEC,
356 .granularity = 200,
357 },
358 .pl2 = {
359 .min_power = 55000,
360 .max_power = 55000,
361 .time_window_min = 28 * MSECS_PER_SEC,
362 .time_window_max = 32 * MSECS_PER_SEC,
363 .granularity = 1000,
364 }
365 }"
366
367 ## Charger Performance Control (Control, mA)
368 register "controls.charger_perf" = "{
369 [0] = { 255, 1700 },
370 [1] = { 24, 1500 },
371 [2] = { 16, 1000 },
372 [3] = { 8, 500 }
373 }"
374
375 ## Fan Performance Control (Percent, Speed, Noise, Power)
376 register "controls.fan_perf" = "{
377 [0] = { 90, 6700, 220, 2200, },
378 [1] = { 80, 5800, 180, 1800, },
379 [2] = { 70, 5000, 145, 1450, },
380 [3] = { 60, 4900, 115, 1150, },
381 [4] = { 50, 3838, 90, 900, },
382 [5] = { 40, 2904, 55, 550, },
383 [6] = { 30, 2337, 30, 300, },
384 [7] = { 20, 1608, 15, 150, },
385 [8] = { 10, 800, 10, 100, },
386 [9] = { 0, 0, 0, 50, }
387 }"
388
389 ## Fan options
390 register "options.fan.fine_grained_control" = "1"
391 register "options.fan.step_size" = "2"
392
Sumeet Pawnikarf5a1ad12023-02-08 17:52:42 +0530393 device generic 1 on
394 probe THERMAL THERMAL_15W
395 end
Sumeet R Pawnikar0d37fcb2021-05-03 22:46:34 +0530396 end
397 end
Scott Chao890702f2021-06-02 14:32:27 +0800398 device ref ipu on
399 chip drivers/intel/mipi_camera
400 register "acpi_uid" = "0x50000"
401 register "acpi_name" = ""IPU0""
402 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
403
404 register "cio2_num_ports" = "1"
405 register "cio2_lanes_used" = "{4}" # 4 CSI Camera lanes are used
406 register "cio2_lane_endpoint[0]" = ""^I2C0.CAM0""
407 register "cio2_prt[0]" = "2"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530408 device generic 0 on
409 # MIPI lanes are split between UFC and WFC depending on
410 # whether the UFC is USB or MIPI hence probing UFC_USB
411 probe UFC UFC_USB
412 end
413 end
414 chip drivers/intel/mipi_camera
415 register "acpi_uid" = "0x50000"
416 register "acpi_name" = ""IPU0""
417 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
418
419 register "cio2_num_ports" = "2"
420 register "cio2_lanes_used" = "{4,2}" # 4 and 2 CSI Camera lanes are used
421 register "cio2_lane_endpoint[0]" = ""^I2C0.CAM0""
422 register "cio2_lane_endpoint[1]" = ""^I2C2.CAM1""
423 register "cio2_prt[0]" = "2"
424 register "cio2_prt[1]" = "1"
Varshit B Pandyaf48eecb2021-07-08 21:13:31 +0530425 device generic 1 on
Varshit B Pandya5d719942021-07-27 09:39:31 +0530426 probe UFC UFC_MIPI_IMX208
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530427 end
Scott Chao890702f2021-06-02 14:32:27 +0800428 end
429 end
Eric Lai2bec7f02020-12-21 17:28:31 +0800430 device ref cnvi_wifi on
431 chip drivers/wifi/generic
432 register "wake" = "GPE0_PME_B0"
Tim Wawrzynczak6f73a202022-02-04 12:45:37 -0700433 register "enable_cnvi_ddr_rfim" = "true"
Eric Lai2bec7f02020-12-21 17:28:31 +0800434 device generic 0 on end
435 end
436 end
Tim Wawrzynczak71f69dd2021-05-21 19:34:38 +0000437 device ref pcie_rp6 on
Cliff Huang27547872022-02-23 23:45:14 -0800438 # Enable WWAN PCIE 6 using clk 5
439 register "pch_pcie_rp[PCH_RP(6)]" = "{
440 .clk_src = 5,
441 .clk_req = 5,
442 .flags = PCIE_RP_LTR | PCIE_RP_AER,
443 }"
444 chip soc/intel/common/block/pcie/rtd3
445 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
446 register "reset_off_delay_ms" = "20"
447 # register "reset_delay_ms" = "1000"
448 register "srcclk_pin" = "5"
449 register "ext_pm_support" = "ACPI_PCIE_RP_EMIT_ALL"
450 register "skip_on_off_support" = "true"
Cliff Huangdaeb7812023-03-02 10:17:50 -0800451 register "use_rp_mutex" = "true"
Cliff Huang27547872022-02-23 23:45:14 -0800452 device generic 0 alias rp6_rtd3 on
453 probe DB_LTE LTE_PCIE
454 end
455 end
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800456 chip drivers/wwan/fm
457 register "fcpo_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F21)"
458 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E16)"
459 register "perst_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
460 register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A7)"
Tim Wawrzynczak8dc28c42022-02-28 08:59:10 -0700461 register "add_acpi_dma_property" = "true"
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800462 use rp6_rtd3 as rtd3dev
Cliff Huang27547872022-02-23 23:45:14 -0800463 device generic 0 on
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800464 probe DB_LTE LTE_PCIE
465 end
466 end
Cliff Huang27547872022-02-23 23:45:14 -0800467 probe DB_LTE LTE_PCIE
Tim Wawrzynczak71f69dd2021-05-21 19:34:38 +0000468 end
Maulik V Vaghela9e23d012021-06-09 14:03:08 +0530469 device ref tcss_dma0 on
470 chip drivers/intel/usb4/retimer
Maulik V Vaghela91c38c82021-06-29 18:07:55 +0530471 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
472 use tcss_usb3_port1 as dfp[0].typec_port
Maulik V Vaghela9e23d012021-06-09 14:03:08 +0530473 device generic 0 on end
474 end
475 end
476 device ref tcss_dma1 on
477 chip drivers/intel/usb4/retimer
Maulik V Vaghela91c38c82021-06-29 18:07:55 +0530478 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
479 use tcss_usb3_port3 as dfp[0].typec_port
Maulik V Vaghela9e23d012021-06-09 14:03:08 +0530480 device generic 0 on end
481 end
482 end
Eric Laib1e8a8a2021-04-23 14:34:57 +0800483 device ref pcie_rp8 on
484 chip soc/intel/common/block/pcie/rtd3
485 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H13)"
486 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D18)"
487 register "srcclk_pin" = "3"
488 device generic 0 on end
489 end
490 end #PCIE8 SD card
Eric Lai2bec7f02020-12-21 17:28:31 +0800491 device ref i2c0 on
492 chip drivers/i2c/generic
493 register "hid" = ""10EC5682""
494 register "name" = ""RT58""
495 register "desc" = ""Headset Codec""
496 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
497 # Set the jd_src to RT5668_JD1 for jack detection
498 register "property_count" = "1"
499 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
500 register "property_list[0].name" = ""realtek,jd-src""
501 register "property_list[0].integer" = "1"
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +0530502 device i2c 1a on
503 probe AUDIO MAX98357_ALC5682I_I2S
Amanda Huange7a14cf2022-04-08 17:52:29 +0800504 probe AUDIO MAX98360_ALC5682I_I2S
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +0530505 end
Eric Lai2bec7f02020-12-21 17:28:31 +0800506 end
Eric Lai312fb712021-08-18 15:47:20 +0800507 chip drivers/i2c/nau8825
508 register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPP_A23)"
509 register "jkdet_enable" = "1"
510 register "jkdet_pull_enable" = "0"
Paul Menzela3ce81d2021-08-21 09:20:47 +0200511 register "jkdet_polarity" = "1" # ActiveLow
512 register "vref_impedance" = "2" # 125kOhm
513 register "micbias_voltage" = "6" # 2.754
Eric Lai312fb712021-08-18 15:47:20 +0800514 register "sar_threshold_num" = "4"
515 register "sar_threshold[0]" = "0x0c"
516 register "sar_threshold[1]" = "0x1c"
517 register "sar_threshold[2]" = "0x38"
518 register "sar_threshold[3]" = "0x60"
519 register "sar_hysteresis" = "1"
Paul Menzela3ce81d2021-08-21 09:20:47 +0200520 register "sar_voltage" = "0" # VDDA
521 register "sar_compare_time" = "0" # 500ns
522 register "sar_sampling_time" = "0" # 2us
523 register "short_key_debounce" = "2" # 100ms
524 register "jack_insert_debounce" = "7" # 512ms
525 register "jack_eject_debounce" = "7" # 512ms
Eric Lai312fb712021-08-18 15:47:20 +0800526 device i2c 1a on
527 probe AUDIO ALC1019_NAU88L25B_I2S
Mac Chiangeefdfb52023-06-20 04:30:40 -0400528 probe AUDIO NAU8318_NAU88L25B_I2S
Eric Lai312fb712021-08-18 15:47:20 +0800529 end
530 end
531 chip drivers/generic/alc1015
532 register "hid" = ""RTL1019""
533 register "sdb" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
534 device generic 1 on
535 probe AUDIO ALC1019_NAU88L25B_I2S
536 end
537 end
Scott Chao890702f2021-06-02 14:32:27 +0800538 chip drivers/intel/mipi_camera
539 register "acpi_hid" = ""OVTI8856""
540 register "acpi_uid" = "0"
541 register "acpi_name" = ""CAM0""
542 register "chip_name" = ""Ov 8856 Camera""
543 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
544
545 register "ssdb.lanes_used" = "4"
546 register "ssdb.link_used" = "0"
547 register "ssdb.vcm_type" = "0x0C"
548 register "vcm_name" = ""VCM0""
549 register "num_freq_entries" = "2"
550 register "link_freq[0]" = "360 * MHz" # 360 MHz
551 register "link_freq[1]" = "180 * MHz" # 180 MHz
552 register "remote_name" = ""IPU0""
553
Bora Guvendik489da322023-03-09 14:48:12 -0800554 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
Scott Chao890702f2021-06-02 14:32:27 +0800555 register "has_power_resource" = "1"
Bora Guvendik489da322023-03-09 14:48:12 -0800556
Scott Chao890702f2021-06-02 14:32:27 +0800557 #Controls
558 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_3"
559 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
560
561 register "gpio_panel.gpio[0].gpio_num" = "GPP_D15" #power_enable_2p8
562 register "gpio_panel.gpio[1].gpio_num" = "GPP_D16" #power_enable_1p2
563 register "gpio_panel.gpio[2].gpio_num" = "GPP_D3" #reset
564
565 #_ON
566 register "on_seq.ops_cnt" = "5"
567 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
568 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
569 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
570 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
571 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
572
573 #_OFF
574 register "off_seq.ops_cnt" = "4"
575 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
576 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
577 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
578 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
579
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700580 device i2c 10 on
581 probe WFC WFC_MIPI_OVTI8856
582 end
Scott Chao890702f2021-06-02 14:32:27 +0800583 end
584 chip drivers/intel/mipi_camera
585 register "acpi_uid" = "2"
586 register "acpi_name" = ""VCM0""
587 register "chip_name" = ""DW9768 VCM""
588 register "device_type" = "INTEL_ACPI_CAMERA_VCM"
589
Scott Chao890702f2021-06-02 14:32:27 +0800590 register "vcm_compat" = ""dongwoon,dw9768""
591
Bora Guvendik489da322023-03-09 14:48:12 -0800592 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
593
594 register "has_power_resource" = "1"
595
596 #Controls
597 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
598
599 #_ON
600 register "on_seq.ops_cnt" = "1"
601 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
602
603 #_OFF
604 register "off_seq.ops_cnt" = "1"
605 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
606
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700607 device i2c 0C on
608 probe WFC WFC_MIPI_OVTI8856
609 end
Scott Chao890702f2021-06-02 14:32:27 +0800610 end
611 chip drivers/intel/mipi_camera
612 register "acpi_uid" = "1"
613 register "acpi_name" = ""NVM0""
614 register "chip_name" = ""AT24 EEPROM""
615 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
616
Scott Chao890702f2021-06-02 14:32:27 +0800617 register "nvm_compat" = ""atmel,24c1024""
618
619 register "nvm_size" = "0x2800"
620 register "nvm_pagesize" = "0x01"
621 register "nvm_readonly" = "0x01"
Varshit B Pandya73161c62021-10-30 15:37:28 +0530622 register "nvm_width" = "0x10"
Scott Chao890702f2021-06-02 14:32:27 +0800623
Bora Guvendik489da322023-03-09 14:48:12 -0800624 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
625
626 register "has_power_resource" = "1"
627
628 #Controls
629 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
630
631 #_ON
632 register "on_seq.ops_cnt" = "1"
633 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
634
635 #_OFF
636 register "off_seq.ops_cnt" = "1"
637 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
638
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700639 device i2c 58 on
640 probe WFC WFC_MIPI_OVTI8856
641 end
642 end
643 chip drivers/intel/mipi_camera
644 register "acpi_hid" = ""OVTI8856""
645 register "acpi_uid" = "0"
646 register "acpi_name" = ""CAM0""
647 register "chip_name" = ""Ov 8856 Camera""
648 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
649
650 register "ssdb.lanes_used" = "4"
651 register "ssdb.link_used" = "0"
652 register "ssdb.vcm_type" = "0x0C"
653 register "vcm_name" = ""VCM0""
654 register "num_freq_entries" = "2"
655 register "link_freq[0]" = "360 * MHz" # 360 MHz
656 register "link_freq[1]" = "180 * MHz" # 180 MHz
657 register "remote_name" = ""IPU0""
658
Bora Guvendik489da322023-03-09 14:48:12 -0800659 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
660
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700661 register "has_power_resource" = "1"
662 #Controls
663 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_3"
664 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
665
666 register "gpio_panel.gpio[0].gpio_num" = "GPP_D15" #power_enable_2p8
667 register "gpio_panel.gpio[1].gpio_num" = "GPP_D16" #power_enable_1p2
668 register "gpio_panel.gpio[2].gpio_num" = "GPP_D3" #reset
669
670 #_ON
671 register "on_seq.ops_cnt" = "5"
672 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
673 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
674 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
675 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
676 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
677
678 #_OFF
679 register "off_seq.ops_cnt" = "4"
680 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
681 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
682 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
683 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
684
685 device i2c 36 on
686 probe WFC WFC_MIPI_KBAE350
687 end
688 end
689 chip drivers/intel/mipi_camera
690 register "acpi_uid" = "2"
691 register "acpi_name" = ""VCM0""
692 register "chip_name" = ""DW AF DAC""
693 register "device_type" = "INTEL_ACPI_CAMERA_VCM"
694
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700695 register "vcm_compat" = ""dongwoon,dw9714""
696
Bora Guvendik489da322023-03-09 14:48:12 -0800697 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
698
699 register "has_power_resource" = "1"
700
701 #Controls
702 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
703
704 #_ON
705 register "on_seq.ops_cnt" = "1"
706 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
707
708 #_OFF
709 register "off_seq.ops_cnt" = "1"
710 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
711
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700712 device i2c 0C on
713 probe WFC WFC_MIPI_KBAE350
714 end
715 end
716 chip drivers/intel/mipi_camera
717 register "acpi_uid" = "1"
718 register "acpi_name" = ""NVM0""
719 register "chip_name" = ""GT24C08""
720 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
721
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700722 register "nvm_compat" = ""atmel,24c08""
723
724 register "nvm_size" = "0x2000"
725 register "nvm_pagesize" = "0x01"
726 register "nvm_readonly" = "0x01"
727 register "nvm_width" = "0x10"
728
Bora Guvendik489da322023-03-09 14:48:12 -0800729 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
730
731 register "has_power_resource" = "1"
732
733 #Controls
734 register "gpio_panel.gpio[0].gpio_num" = "GPP_D16" #EN_WCAM_PWR
735
736 #_ON
737 register "on_seq.ops_cnt" = "1"
738 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
739
740 #_OFF
741 register "off_seq.ops_cnt" = "1"
742 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
743
Nick Vaccaro01ab9b12022-09-30 16:17:28 -0700744 device i2c 50 on
745 probe WFC WFC_MIPI_KBAE350
746 end
Scott Chao890702f2021-06-02 14:32:27 +0800747 end
748 end #I2C0
Eric Lai2bec7f02020-12-21 17:28:31 +0800749 device ref i2c1 on
Amanda Huang0c962912022-04-19 17:21:17 +0800750 chip drivers/i2c/tpm
751 register "hid" = ""GOOG0005""
752 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
753 device i2c 50 on end
Eric Laibd9d6ab2021-04-26 13:58:17 +0800754 end
Amanda Huang0c962912022-04-19 17:21:17 +0800755 end #I2C1
Eric Lai2bec7f02020-12-21 17:28:31 +0800756 device ref i2c2 on
757 chip drivers/i2c/sx9324
758 register "desc" = ""SAR1 Proximity Sensor""
Eric Laicf6e4572021-06-30 14:09:22 +0800759 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_B3_IRQ)"
Eric Lai2bec7f02020-12-21 17:28:31 +0800760 register "speed" = "I2C_SPEED_FAST"
Tim Wawrzynczak37c33272021-03-01 08:24:52 -0700761 register "uid" = "1"
Eric Lai2bec7f02020-12-21 17:28:31 +0800762 register "reg_gnrl_ctrl0" = "0x16"
763 register "reg_gnrl_ctrl1" = "0x21"
764 register "reg_afe_ctrl0" = "0x00"
765 register "reg_afe_ctrl1" = "0x10"
766 register "reg_afe_ctrl2" = "0x00"
767 register "reg_afe_ctrl3" = "0x00"
768 register "reg_afe_ctrl4" = "0x07"
769 register "reg_afe_ctrl5" = "0x00"
770 register "reg_afe_ctrl6" = "0x00"
771 register "reg_afe_ctrl7" = "0x07"
772 register "reg_afe_ctrl8" = "0x12"
773 register "reg_afe_ctrl9" = "0x0f"
774 register "reg_prox_ctrl0" = "0x12"
775 register "reg_prox_ctrl1" = "0x12"
776 register "reg_prox_ctrl2" = "0x90"
777 register "reg_prox_ctrl3" = "0x60"
778 register "reg_prox_ctrl4" = "0x0c"
779 register "reg_prox_ctrl5" = "0x12"
780 register "reg_prox_ctrl6" = "0x3c"
781 register "reg_prox_ctrl7" = "0x58"
782 register "reg_adv_ctrl0" = "0x00"
783 register "reg_adv_ctrl1" = "0x00"
784 register "reg_adv_ctrl2" = "0x00"
785 register "reg_adv_ctrl3" = "0x00"
786 register "reg_adv_ctrl4" = "0x00"
787 register "reg_adv_ctrl5" = "0x05"
788 register "reg_adv_ctrl6" = "0x00"
789 register "reg_adv_ctrl7" = "0x00"
790 register "reg_adv_ctrl8" = "0x00"
791 register "reg_adv_ctrl9" = "0x00"
792 register "reg_adv_ctrl10" = "0x5c"
793 register "reg_adv_ctrl11" = "0x52"
794 register "reg_adv_ctrl12" = "0xb5"
795 register "reg_adv_ctrl13" = "0x00"
796 register "reg_adv_ctrl14" = "0x80"
797 register "reg_adv_ctrl15" = "0x0c"
798 register "reg_adv_ctrl16" = "0x38"
799 register "reg_adv_ctrl17" = "0x56"
800 register "reg_adv_ctrl18" = "0x33"
801 register "reg_adv_ctrl19" = "0xf0"
802 register "reg_adv_ctrl20" = "0xf0"
803 device i2c 28 on end
804 end
805 chip drivers/i2c/sx9324
806 register "desc" = ""SAR2 Proximity Sensor""
Eric Laicf6e4572021-06-30 14:09:22 +0800807 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_H19_IRQ)"
Eric Lai2bec7f02020-12-21 17:28:31 +0800808 register "speed" = "I2C_SPEED_FAST"
809 register "uid" = "2"
810 register "reg_gnrl_ctrl0" = "0x16"
811 register "reg_gnrl_ctrl1" = "0x21"
812 register "reg_afe_ctrl0" = "0x00"
813 register "reg_afe_ctrl1" = "0x10"
814 register "reg_afe_ctrl2" = "0x00"
815 register "reg_afe_ctrl3" = "0x00"
816 register "reg_afe_ctrl4" = "0x07"
817 register "reg_afe_ctrl5" = "0x00"
818 register "reg_afe_ctrl6" = "0x00"
819 register "reg_afe_ctrl7" = "0x07"
820 register "reg_afe_ctrl8" = "0x12"
821 register "reg_afe_ctrl9" = "0x0f"
822 register "reg_prox_ctrl0" = "0x12"
823 register "reg_prox_ctrl1" = "0x12"
824 register "reg_prox_ctrl2" = "0x90"
825 register "reg_prox_ctrl3" = "0x60"
826 register "reg_prox_ctrl4" = "0x0c"
827 register "reg_prox_ctrl5" = "0x12"
828 register "reg_prox_ctrl6" = "0x3c"
829 register "reg_prox_ctrl7" = "0x58"
830 register "reg_adv_ctrl0" = "0x00"
831 register "reg_adv_ctrl1" = "0x00"
832 register "reg_adv_ctrl2" = "0x00"
833 register "reg_adv_ctrl3" = "0x00"
834 register "reg_adv_ctrl4" = "0x00"
835 register "reg_adv_ctrl5" = "0x05"
836 register "reg_adv_ctrl6" = "0x00"
837 register "reg_adv_ctrl7" = "0x00"
838 register "reg_adv_ctrl8" = "0x00"
839 register "reg_adv_ctrl9" = "0x00"
840 register "reg_adv_ctrl10" = "0x5c"
841 register "reg_adv_ctrl11" = "0x52"
842 register "reg_adv_ctrl12" = "0xb5"
843 register "reg_adv_ctrl13" = "0x00"
844 register "reg_adv_ctrl14" = "0x80"
845 register "reg_adv_ctrl15" = "0x0c"
846 register "reg_adv_ctrl16" = "0x38"
847 register "reg_adv_ctrl17" = "0x56"
848 register "reg_adv_ctrl18" = "0x33"
849 register "reg_adv_ctrl19" = "0xf0"
850 register "reg_adv_ctrl20" = "0xf0"
851 device i2c 2C on end
852 end
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530853 chip drivers/intel/mipi_camera
Varshit B Pandya5d719942021-07-27 09:39:31 +0530854 register "acpi_hid" = ""INT3478""
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530855 register "acpi_uid" = "0"
856 register "acpi_name" = ""CAM1""
Varshit B Pandya5d719942021-07-27 09:39:31 +0530857 register "chip_name" = ""imx 208 Camera""
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530858 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
859
860 register "ssdb.lanes_used" = "2"
861 register "ssdb.link_used" = "1"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530862 register "num_freq_entries" = "2"
863 register "link_freq[0]" = "384 * MHz" # 384 MHz
864 register "link_freq[1]" = "96 * MHz" # 96 MHz
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530865 register "remote_name" = ""IPU0""
Bora Guvendik489da322023-03-09 14:48:12 -0800866 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D3_COLD"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530867
868 register "has_power_resource" = "1"
869 #Controls
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530870 register "gpio_panel.gpio[0].gpio_num" = "GPP_C3" #PP3300_FCAM_X
871 register "gpio_panel.gpio[1].gpio_num" = "GPP_A17" #EN_UCAM_PWR
872 register "gpio_panel.gpio[2].gpio_num" = "GPP_F20" #reset
Varshit B Pandya5d719942021-07-27 09:39:31 +0530873 register "gpio_panel.gpio[3].gpio_num" = "GPP_H21" #CLK_EN
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530874
875 #_ON
876 register "on_seq.ops_cnt" = "5"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530877 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(3, 0)"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530878 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
879 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
880 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
881 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
882
883 #_OFF
884 register "off_seq.ops_cnt" = "4"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530885 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(3, 0)"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530886 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
887 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
888 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
889
Varshit B Pandya5d719942021-07-27 09:39:31 +0530890 device i2c 10 on
891 probe UFC UFC_MIPI_IMX208
892 end
893 end
894 chip drivers/intel/mipi_camera
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700895 register "acpi_hid" = ""ACPI_DT_NAMESPACE_HID""
Varshit B Pandya5d719942021-07-27 09:39:31 +0530896 register "acpi_uid" = "1"
897 register "acpi_name" = ""NVM1""
898 register "chip_name" = ""GT24C16S""
899 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
900
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700901 register "nvm_compat" = ""atmel,24c1024""
Varshit B Pandya5d719942021-07-27 09:39:31 +0530902
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700903 register "nvm_size" = "0x800"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530904 register "nvm_pagesize" = "0x01"
905 register "nvm_readonly" = "0x01"
Bernardo Perez Priego0f42e5e2021-10-15 14:22:54 -0700906 register "nvm_width" = "0x08"
Varshit B Pandya5d719942021-07-27 09:39:31 +0530907
Bora Guvendik489da322023-03-09 14:48:12 -0800908 register "max_dstate_for_probe" = "ACPI_DEVICE_SLEEP_D0"
909
910 register "has_power_resource" = "1"
911
912 #Controls
913 register "gpio_panel.gpio[0].gpio_num" = "GPP_C3" #PP3300_FCAM_X
914
915 #_ON
916 register "on_seq.ops_cnt" = "1"
917 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
918
919 #_OFF
920 register "off_seq.ops_cnt" = "1"
921 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
922
Varshit B Pandya5d719942021-07-27 09:39:31 +0530923 device i2c 50 on
924 probe UFC UFC_MIPI_IMX208
Varshit B Pandyabee9d60282021-06-18 20:18:50 +0530925 end
926 end
Dan Callaghan4e6c9152021-10-28 21:22:22 +1100927 chip drivers/i2c/generic
928 register "hid" = ""GOOG0020""
Jon Murphyc4e90452022-06-28 10:36:23 -0600929 register "desc" = ""ChromeOS HPS""
Dan Callaghan4e6c9152021-10-28 21:22:22 +1100930 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E7)" # EN_HPS_PWR
931 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E3_IRQ)" # HPS_INT_ODL
932 # HPS uses I2C addresses 0x30 and 0x51.
933 # The address we provide here is not significant because
934 # neither coreboot nor Linux have a driver for HPS,
935 # it's only used from userspace.
936 device i2c 30 on
937 probe HPS HPS_PRESENT
938 end
939 end
Amanda Huang0c962912022-04-19 17:21:17 +0800940 end #I2C2
David Wu6de48982021-11-18 21:22:33 +0800941 device ref i2c3 on
Amanda Huang0c962912022-04-19 17:21:17 +0800942 chip drivers/i2c/hid
943 register "generic.hid" = ""ELAN9050""
944 register "generic.desc" = ""ELAN Touchscreen""
945 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
Matt DeVillier8a0e6b52023-04-27 10:04:27 -0500946 register "generic.detect" = "1"
Amanda Huang0c962912022-04-19 17:21:17 +0800947 register "generic.reset_gpio" =
948 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
949 register "generic.reset_delay_ms" = "300"
950 register "generic.reset_off_delay_ms" = "1"
951 register "generic.enable_gpio" =
952 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
953 register "generic.enable_delay_ms" = "6"
954 register "generic.stop_gpio" =
955 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
956 register "generic.stop_off_delay_ms" = "1"
957 register "generic.has_power_resource" = "1"
958 register "hid_desc_reg_offset" = "0x01"
959 device i2c 0x10 on end
David Wu6de48982021-11-18 21:22:33 +0800960 end
Amanda Huang0c962912022-04-19 17:21:17 +0800961 chip drivers/i2c/hid
962 register "generic.hid" = ""GDIX0000""
963 register "generic.desc" = ""Goodix Touchscreen""
964 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
Matt DeVillier8a0e6b52023-04-27 10:04:27 -0500965 register "generic.detect" = "1"
Amanda Huang0c962912022-04-19 17:21:17 +0800966 register "generic.reset_gpio" =
967 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
968 register "generic.reset_delay_ms" = "120"
969 register "generic.reset_off_delay_ms" = "3"
970 register "generic.enable_gpio" =
971 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
972 register "generic.enable_delay_ms" = "12"
973 register "generic.stop_gpio" =
974 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
975 register "generic.stop_off_delay_ms" = "1"
976 register "generic.has_power_resource" = "1"
977 register "hid_desc_reg_offset" = "0x01"
978 device i2c 0x5d on end
979 end
980 chip drivers/i2c/hid
981 register "generic.hid" = ""SIS9815""
982 register "generic.desc" = ""SIS Touchscreen""
983 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
Matt DeVillier8a0e6b52023-04-27 10:04:27 -0500984 register "generic.detect" = "1"
Amanda Huang0c962912022-04-19 17:21:17 +0800985 register "generic.reset_gpio" =
986 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
987 register "generic.stop_gpio" =
988 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
989 register "generic.stop_delay_ms" = "100"
990 register "generic.enable_gpio" =
991 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
992 register "generic.enable_delay_ms" = "7"
993 register "generic.has_power_resource" = "1"
994 register "hid_desc_reg_offset" = "0x00"
995 device i2c 5c on end
996 end
997 end #I2C3
Eric Lai2bec7f02020-12-21 17:28:31 +0800998 device ref i2c5 on
999 chip drivers/i2c/generic
1000 register "hid" = ""ELAN0000""
1001 register "desc" = ""ELAN Touchpad""
1002 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
1003 register "wake" = "GPE0_DW2_14"
Matt DeVillier2cf52d82022-09-01 15:09:24 -05001004 register "detect" = "1"
Eric Lai2bec7f02020-12-21 17:28:31 +08001005 device i2c 15 on end
1006 end
Amanda Huang0c962912022-04-19 17:21:17 +08001007 end #I2C5
Eric Lai2bec7f02020-12-21 17:28:31 +08001008 device ref hda on
1009 chip drivers/generic/max98357a
1010 register "hid" = ""MX98357A""
1011 register "sdmode_gpio" =
1012 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
1013 register "sdmode_delay" = "5"
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +05301014 device generic 0 on
1015 probe AUDIO MAX98357_ALC5682I_I2S
1016 end
1017 end
1018
Amanda Huang651b7652022-03-23 00:25:07 +08001019 chip drivers/generic/max98357a
1020 register "hid" = ""MX98360A""
1021 register "sdmode_gpio" =
1022 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
1023 register "sdmode_delay" = "5"
1024 device generic 0 on
Amanda Huange7a14cf2022-04-08 17:52:29 +08001025 probe AUDIO MAX98360_ALC5682I_I2S
Amanda Huang651b7652022-03-23 00:25:07 +08001026 end
1027 end
1028
Sugnan Prabhu S3bfa1bd2021-05-12 11:44:47 +05301029 chip drivers/intel/soundwire
1030 device generic 0 on
1031 probe AUDIO MAX98373_ALC5682_SNDW
1032 chip drivers/soundwire/alc5682
1033 # SoundWire Link 0 ID 1
1034 register "desc" = ""Headset Codec""
1035 device generic 0.1 on end
1036 end
1037 chip drivers/soundwire/max98373
1038 # SoundWire Link 2 ID 3
1039 register "desc" = ""Left Speaker Amp""
1040 device generic 2.3 on end
1041 end
1042 chip drivers/soundwire/max98373
1043 # SoundWire Link 2 ID 7
1044 register "desc" = ""Right Speaker Amp""
1045 device generic 2.7 on end
1046 end
1047 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001048 end
Mac Chiangeefdfb52023-06-20 04:30:40 -04001049
1050 chip drivers/generic/nau8315
1051 register "hid" = "NAU8318"
1052 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
1053 device generic 0 on
1054 probe AUDIO NAU8318_NAU88L25B_I2S
1055 end
1056 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001057 end
1058 device ref gspi1 on
1059 chip drivers/spi/acpi
1060 register "name" = ""CRFP""
1061 register "hid" = "ACPI_DT_NAMESPACE_HID"
1062 register "uid" = "1"
1063 register "compat_string" = ""google,cros-ec-spi""
Tim Wawrzynczak0b7bc802021-06-02 16:29:01 -06001064 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F15_IRQ)"
Eric Lai2bec7f02020-12-21 17:28:31 +08001065 register "wake" = "GPE0_DW2_15"
Tarun Tuli2b523ce2022-08-29 13:39:58 -04001066 register "has_power_resource" = "1"
1067 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D1)"
1068 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D2)"
1069 register "enable_delay_ms" = "3"
Matt DeVillieraf46b472023-10-28 11:16:14 -05001070 device spi 0 hidden end
Eric Lai2bec7f02020-12-21 17:28:31 +08001071 end # FPMCU
1072 end
1073 device ref pch_espi on
1074 chip ec/google/chromeec
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001075 use conn0 as mux_conn[0]
1076 use conn1 as mux_conn[1]
1077 use conn2 as mux_conn[2]
Anil Kumara98d7a92023-01-18 11:56:36 -08001078 device pnp 0c09.0 on end
Eric Lai2bec7f02020-12-21 17:28:31 +08001079 end
1080 end
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001081 device ref pmc hidden
1082 chip drivers/intel/pmc_mux
1083 device generic 0 on
1084 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +11001085 use usb2_port1 as usb2_port
1086 use tcss_usb3_port1 as usb3_port
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001087 device generic 0 alias conn0 on end
1088 end
1089 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +11001090 use usb2_port2 as usb2_port
1091 use tcss_usb3_port2 as usb3_port
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001092 device generic 1 alias conn1 on end
1093 end
1094 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +11001095 use usb2_port3 as usb2_port
1096 use tcss_usb3_port3 as usb3_port
Tim Wawrzynczakba2e51b2021-03-03 15:22:00 -07001097 device generic 2 alias conn2 on end
1098 end
1099 end
1100 end
1101 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001102 device ref tcss_xhci on
1103 chip drivers/usb/acpi
1104 device ref tcss_root_hub on
1105 chip drivers/usb/acpi
1106 register "desc" = ""USB3 Type-C Port C0 (MLB)""
1107 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001108 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001109 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001110 device ref tcss_usb3_port1 on end
1111 end
1112 chip drivers/usb/acpi
1113 register "desc" = ""USB3 Type-C Port C1 (DB)""
1114 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001115 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301116 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
Ron Lee558952a2022-12-13 19:48:59 +08001117 register "usb_lpm_incapable" = "true"
Eric Lai2bec7f02020-12-21 17:28:31 +08001118 device ref tcss_usb3_port2 on end
1119 end
1120 chip drivers/usb/acpi
1121 register "desc" = ""USB3 Type-C Port C2 (MLB)""
1122 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001123 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001124 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001125 device ref tcss_usb3_port3 on end
1126 end
1127 end
1128 end
1129 end
1130 device ref xhci on
1131 chip drivers/usb/acpi
1132 device ref xhci_root_hub on
1133 chip drivers/usb/acpi
1134 register "desc" = ""USB2 Type-C Port C0 (MLB)""
1135 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001136 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001137 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001138 device ref usb2_port1 on end
1139 end
1140 chip drivers/usb/acpi
1141 register "desc" = ""USB2 Type-C Port C1 (DB)""
1142 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001143 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301144 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001145 device ref usb2_port2 on end
1146 end
1147 chip drivers/usb/acpi
1148 register "desc" = ""USB2 Type-C Port C2 (MLB)""
1149 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +00001150 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +00001151 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001152 device ref usb2_port3 on end
1153 end
1154 chip drivers/usb/acpi
1155 register "desc" = ""USB2 WWAN""
1156 register "type" = "UPC_TYPE_INTERNAL"
1157 device ref usb2_port4 on end
1158 end
1159 chip drivers/usb/acpi
1160 register "desc" = ""USB2 Camera""
1161 register "type" = "UPC_TYPE_INTERNAL"
Varshit B Pandyabee9d60282021-06-18 20:18:50 +05301162 device ref usb2_port6 on
1163 probe UFC UFC_USB
1164 end
Eric Lai2bec7f02020-12-21 17:28:31 +08001165 end
1166 chip drivers/usb/acpi
Tim Wawrzynczak20919652021-02-16 15:17:48 -07001167 register "desc" = ""USB2 Type-A Port A0 (DB)""
Eric Lai2bec7f02020-12-21 17:28:31 +08001168 register "type" = "UPC_TYPE_A"
Won Chungf1a3f182022-01-25 22:30:12 +00001169 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301170 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001171 device ref usb2_port9 on end
1172 end
1173 chip drivers/usb/acpi
1174 register "desc" = ""USB2 Bluetooth""
1175 register "type" = "UPC_TYPE_INTERNAL"
1176 register "reset_gpio" =
Aamir Bohra1d14ef22021-03-02 19:18:30 +05301177 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
Eric Lai2bec7f02020-12-21 17:28:31 +08001178 device ref usb2_port10 on end
1179 end
1180 chip drivers/usb/acpi
Tim Wawrzynczak20919652021-02-16 15:17:48 -07001181 register "desc" = ""USB3 Type-A Port A0 (DB)""
Eric Lai2bec7f02020-12-21 17:28:31 +08001182 register "type" = "UPC_TYPE_USB3_A"
Won Chungf1a3f182022-01-25 22:30:12 +00001183 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +05301184 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
Eric Lai2bec7f02020-12-21 17:28:31 +08001185 device ref usb3_port1 on end
1186 end
1187 chip drivers/usb/acpi
1188 register "desc" = ""USB3 WWAN""
1189 register "type" = "UPC_TYPE_INTERNAL"
Tim Wawrzynczak20919652021-02-16 15:17:48 -07001190 device ref usb3_port4 on end
Eric Lai2bec7f02020-12-21 17:28:31 +08001191 end
1192 end
1193 end
1194 end
1195 end
1196end