blob: 9d9233b9d50bbbf5318ca84a442bf5911c100b3c [file] [log] [blame]
YH Lin6ba7bee2021-11-29 09:44:01 -08001fw_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
10 field KB_BL 7 7
11 option KB_BL_ABSENT 0
12 option KB_BL_PRESENT 1
13 end
14 field AUDIO 8 10
15 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
20 end
21 field DB_LTE 11 12
22 option LTE_ABSENT 0
23 option LTE_USB 1
24 option LTE_PCIE 2
25 end
26 field UFC 13 14
27 option UFC_USB 0
28 option UFC_MIPI_IMX208 1
29 end
30 # Bits 15 and 16 were intended for WFC but never declared here
31 field HPS 17 17
32 option HPS_ABSENT 0
33 option HPS_PRESENT 1
34 end
35end
36
37chip soc/intel/alderlake
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053038 register "sagv" = "SaGv_Enabled"
YH Lin6ba7bee2021-11-29 09:44:01 -080039
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053040 register "platform_pmax" = "145"
YH Lin6ba7bee2021-11-29 09:44:01 -080041
42 register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # Type-A MLB Port
43
44 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # USB3/2 Type A MLB port
45
46 register "typec_aux_bias_pads[0]" = "{.pad_auxp_dc = GPP_E22, .pad_auxn_dc = GPP_E23}"
47
48 # FIVR configurations for brya are disabled since the board doesn't have V1p05 and Vnn
49 # bypass rails implemented.
50 register "ext_fivr_settings" = "{
51 .configure_ext_fivr = 1,
52 }"
53
54 device domain 0 on
55 device ref dtt on
56 chip drivers/intel/dptf
57 ## sensor information
58 register "options.tsr[0].desc" = ""DRAM_SOC""
59 register "options.tsr[1].desc" = ""Ambient""
60 register "options.tsr[2].desc" = ""Charger""
61 register "options.tsr[3].desc" = ""WWAN""
62
63 # TODO: below values are initial reference values only
64 ## Active Policy
65 register "policies.active" = "{
66 [0] = {
67 .target = DPTF_CPU,
68 .thresholds = {
69 TEMP_PCT(85, 90),
70 TEMP_PCT(80, 80),
71 TEMP_PCT(75, 70),
72 TEMP_PCT(70, 50),
73 TEMP_PCT(65, 30),
74 }
75 },
76 [1] = {
77 .target = DPTF_TEMP_SENSOR_1,
78 .thresholds = {
79 TEMP_PCT(50, 90),
80 TEMP_PCT(48, 70),
81 TEMP_PCT(46, 60),
82 TEMP_PCT(43, 40),
83 TEMP_PCT(40, 30),
84 }
85 }
86 }"
87
88 ## Passive Policy
89 register "policies.passive" = "{
90 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
91 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 75, 5000),
92 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 75, 5000),
93 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 75, 5000),
94 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 75, 5000),
95 }"
96
97 ## Critical Policy
98 register "policies.critical" = "{
99 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
100 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 85, SHUTDOWN),
101 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 85, SHUTDOWN),
102 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 85, SHUTDOWN),
103 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 85, SHUTDOWN),
104 }"
105
106 register "controls.power_limits" = "{
107 .pl1 = {
108 .min_power = 3000,
109 .max_power = 15000,
110 .time_window_min = 28 * MSECS_PER_SEC,
111 .time_window_max = 32 * MSECS_PER_SEC,
112 .granularity = 200,
113 },
114 .pl2 = {
115 .min_power = 55000,
116 .max_power = 55000,
117 .time_window_min = 28 * MSECS_PER_SEC,
118 .time_window_max = 32 * MSECS_PER_SEC,
119 .granularity = 1000,
120 }
121 }"
122
123 ## Charger Performance Control (Control, mA)
124 register "controls.charger_perf" = "{
125 [0] = { 255, 1700 },
126 [1] = { 24, 1500 },
127 [2] = { 16, 1000 },
128 [3] = { 8, 500 }
129 }"
130
131 ## Fan Performance Control (Percent, Speed, Noise, Power)
132 register "controls.fan_perf" = "{
133 [0] = { 90, 6700, 220, 2200, },
134 [1] = { 80, 5800, 180, 1800, },
135 [2] = { 70, 5000, 145, 1450, },
136 [3] = { 60, 4900, 115, 1150, },
137 [4] = { 50, 3838, 90, 900, },
138 [5] = { 40, 2904, 55, 550, },
139 [6] = { 30, 2337, 30, 300, },
140 [7] = { 20, 1608, 15, 150, },
141 [8] = { 10, 800, 10, 100, },
142 [9] = { 0, 0, 0, 50, }
143 }"
144
145 ## Fan options
146 register "options.fan.fine_grained_control" = "1"
147 register "options.fan.step_size" = "2"
148
149 device generic 0 alias dptf_policy on end
150 end
151 end
152 device ref ipu on
153 chip drivers/intel/mipi_camera
154 register "acpi_uid" = "0x50000"
155 register "acpi_name" = ""IPU0""
156 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
157
158 register "cio2_num_ports" = "1"
159 register "cio2_lanes_used" = "{4}" # 4 CSI Camera lanes are used
160 register "cio2_lane_endpoint[0]" = ""^I2C0.CAM0""
161 register "cio2_prt[0]" = "2"
162 device generic 0 on
163 # MIPI lanes are split between UFC and WFC depending on
164 # whether the UFC is USB or MIPI hence probing UFC_USB
165 probe UFC UFC_USB
166 end
167 end
168 chip drivers/intel/mipi_camera
169 register "acpi_uid" = "0x50000"
170 register "acpi_name" = ""IPU0""
171 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
172
173 register "cio2_num_ports" = "2"
174 register "cio2_lanes_used" = "{4,2}" # 4 and 2 CSI Camera lanes are used
175 register "cio2_lane_endpoint[0]" = ""^I2C0.CAM0""
176 register "cio2_lane_endpoint[1]" = ""^I2C2.CAM1""
177 register "cio2_prt[0]" = "2"
178 register "cio2_prt[1]" = "1"
179 device generic 1 on
180 probe UFC UFC_MIPI_IMX208
181 end
182 end
183 end
184 device ref cnvi_wifi on
185 chip drivers/wifi/generic
186 register "wake" = "GPE0_PME_B0"
Varshit B Pandya15d99c712022-06-13 18:08:39 +0530187 register "enable_cnvi_ddr_rfim" = "true"
YH Lin6ba7bee2021-11-29 09:44:01 -0800188 device generic 0 on end
189 end
190 end
191 device ref pcie_rp6 on
Cliff Huang27547872022-02-23 23:45:14 -0800192 # Enable WWAN PCIE 6 using clk 5
193 register "pch_pcie_rp[PCH_RP(6)]" = "{
194 .clk_src = 5,
195 .clk_req = 5,
196 .flags = PCIE_RP_LTR | PCIE_RP_AER,
197 }"
198 chip soc/intel/common/block/pcie/rtd3
199 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
200 register "reset_off_delay_ms" = "20"
201 # register "reset_delay_ms" = "1000"
202 register "srcclk_pin" = "5"
203 register "ext_pm_support" = "ACPI_PCIE_RP_EMIT_ALL"
204 register "skip_on_off_support" = "true"
205 device generic 0 alias rp6_rtd3 on
206 probe DB_LTE LTE_PCIE
207 end
208 end
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800209 chip drivers/wwan/fm
210 register "fcpo_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_F21)"
211 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E16)"
212 register "perst_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_E0)"
213 register "wake_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A7)"
Tim Wawrzynczak8dc28c42022-02-28 08:59:10 -0700214 register "add_acpi_dma_property" = "true"
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800215 use rp6_rtd3 as rtd3dev
Cliff Huang27547872022-02-23 23:45:14 -0800216 device generic 0 on
Cliff Huang1ee6e4a2022-01-21 23:34:02 -0800217 probe DB_LTE LTE_PCIE
218 end
219 end
Cliff Huang27547872022-02-23 23:45:14 -0800220 probe DB_LTE LTE_PCIE
YH Lin6ba7bee2021-11-29 09:44:01 -0800221 end
222 device ref tcss_dma0 on
223 chip drivers/intel/usb4/retimer
224 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
225 use tcss_usb3_port1 as dfp[0].typec_port
226 device generic 0 on end
227 end
228 end
229 device ref tcss_dma1 on
230 chip drivers/intel/usb4/retimer
231 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E4)"
232 use tcss_usb3_port3 as dfp[0].typec_port
233 device generic 0 on end
234 end
235 end
236 device ref pcie_rp8 on
237 chip soc/intel/common/block/pcie/rtd3
238 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H13)"
239 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D18)"
240 register "srcclk_pin" = "3"
241 device generic 0 on end
242 end
243 end #PCIE8 SD card
244 device ref i2c0 on
245 chip drivers/i2c/generic
246 register "hid" = ""10EC5682""
247 register "name" = ""RT58""
248 register "desc" = ""Headset Codec""
249 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
250 # Set the jd_src to RT5668_JD1 for jack detection
251 register "property_count" = "1"
252 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
253 register "property_list[0].name" = ""realtek,jd-src""
254 register "property_list[0].integer" = "1"
255 device i2c 1a on
256 probe AUDIO MAX98357_ALC5682I_I2S
257 end
258 end
259 chip drivers/i2c/nau8825
260 register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPP_A23)"
261 register "jkdet_enable" = "1"
262 register "jkdet_pull_enable" = "0"
263 register "jkdet_polarity" = "1" # ActiveLow
264 register "vref_impedance" = "2" # 125kOhm
265 register "micbias_voltage" = "6" # 2.754
266 register "sar_threshold_num" = "4"
267 register "sar_threshold[0]" = "0x0c"
268 register "sar_threshold[1]" = "0x1c"
269 register "sar_threshold[2]" = "0x38"
270 register "sar_threshold[3]" = "0x60"
271 register "sar_hysteresis" = "1"
272 register "sar_voltage" = "0" # VDDA
273 register "sar_compare_time" = "0" # 500ns
274 register "sar_sampling_time" = "0" # 2us
275 register "short_key_debounce" = "2" # 100ms
276 register "jack_insert_debounce" = "7" # 512ms
277 register "jack_eject_debounce" = "7" # 512ms
278 device i2c 1a on
279 probe AUDIO ALC1019_NAU88L25B_I2S
280 end
281 end
282 chip drivers/generic/alc1015
283 register "hid" = ""RTL1019""
284 register "sdb" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
285 device generic 1 on
286 probe AUDIO ALC1019_NAU88L25B_I2S
287 end
288 end
289 chip drivers/intel/mipi_camera
290 register "acpi_hid" = ""OVTI8856""
291 register "acpi_uid" = "0"
292 register "acpi_name" = ""CAM0""
293 register "chip_name" = ""Ov 8856 Camera""
294 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
295
296 register "ssdb.lanes_used" = "4"
297 register "ssdb.link_used" = "0"
298 register "ssdb.vcm_type" = "0x0C"
299 register "vcm_name" = ""VCM0""
300 register "num_freq_entries" = "2"
301 register "link_freq[0]" = "360 * MHz" # 360 MHz
302 register "link_freq[1]" = "180 * MHz" # 180 MHz
303 register "remote_name" = ""IPU0""
304
305 register "has_power_resource" = "1"
306 #Controls
307 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_3"
308 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
309
310 register "gpio_panel.gpio[0].gpio_num" = "GPP_D15" #power_enable_2p8
311 register "gpio_panel.gpio[1].gpio_num" = "GPP_D16" #power_enable_1p2
312 register "gpio_panel.gpio[2].gpio_num" = "GPP_D3" #reset
313
314 #_ON
315 register "on_seq.ops_cnt" = "5"
316 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
317 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
318 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
319 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
320 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
321
322 #_OFF
323 register "off_seq.ops_cnt" = "4"
324 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
325 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
326 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
327 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
328
329 device i2c 10 on end
330 end
331 chip drivers/intel/mipi_camera
332 register "acpi_uid" = "2"
333 register "acpi_name" = ""VCM0""
334 register "chip_name" = ""DW9768 VCM""
335 register "device_type" = "INTEL_ACPI_CAMERA_VCM"
336
337 register "pr0" = ""\\_SB.PCI0.I2C0.CAM0.PRIC""
338 register "vcm_compat" = ""dongwoon,dw9768""
339
340 device i2c 0C on end
341 end
342 chip drivers/intel/mipi_camera
343 register "acpi_uid" = "1"
344 register "acpi_name" = ""NVM0""
345 register "chip_name" = ""AT24 EEPROM""
346 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
347
348 register "pr0" = ""\\_SB.PCI0.I2C0.CAM0.PRIC""
349 register "nvm_compat" = ""atmel,24c1024""
350
351 register "nvm_size" = "0x2800"
352 register "nvm_pagesize" = "0x01"
353 register "nvm_readonly" = "0x01"
354 register "nvm_width" = "0x10"
355
356 device i2c 58 on end
357 end
358 end #I2C0
359 device ref i2c1 on
360 chip drivers/i2c/hid
361 register "generic.hid" = ""ELAN9050""
362 register "generic.desc" = ""ELAN Touchscreen""
363 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
364 register "generic.probed" = "1"
365 register "generic.reset_gpio" =
366 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
367 register "generic.reset_delay_ms" = "300"
368 register "generic.reset_off_delay_ms" = "1"
369 register "generic.enable_gpio" =
370 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
371 register "generic.enable_delay_ms" = "6"
372 register "generic.stop_gpio" =
373 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
374 register "generic.stop_off_delay_ms" = "1"
375 register "generic.has_power_resource" = "1"
376 register "hid_desc_reg_offset" = "0x01"
377 device i2c 0x10 on end
378 end
379 chip drivers/i2c/hid
380 register "generic.hid" = ""GDIX0000""
381 register "generic.desc" = ""Goodix Touchscreen""
382 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
383 register "generic.probed" = "1"
384 register "generic.reset_gpio" =
385 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
386 register "generic.reset_delay_ms" = "120"
387 register "generic.reset_off_delay_ms" = "3"
388 register "generic.enable_gpio" =
389 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
390 register "generic.enable_delay_ms" = "12"
391 register "generic.stop_gpio" =
392 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
393 register "generic.stop_off_delay_ms" = "1"
394 register "generic.has_power_resource" = "1"
395 register "hid_desc_reg_offset" = "0x01"
396 device i2c 0x5d on end
397 end
398 chip drivers/i2c/hid
399 register "generic.hid" = ""SIS9815""
400 register "generic.desc" = ""SIS Touchscreen""
401 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
402 register "generic.probed" = "1"
403 register "generic.reset_gpio" =
404 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
405 register "generic.stop_gpio" =
406 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
407 register "generic.stop_delay_ms" = "100"
408 register "generic.enable_gpio" =
409 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
410 register "generic.enable_delay_ms" = "7"
411 register "generic.has_power_resource" = "1"
412 register "hid_desc_reg_offset" = "0x00"
413 device i2c 5c on end
414 end
415 end
416 device ref i2c2 on
417 chip drivers/i2c/sx9324
418 register "desc" = ""SAR1 Proximity Sensor""
419 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_B3_IRQ)"
420 register "speed" = "I2C_SPEED_FAST"
421 register "uid" = "1"
422 register "reg_gnrl_ctrl0" = "0x16"
423 register "reg_gnrl_ctrl1" = "0x21"
424 register "reg_afe_ctrl0" = "0x00"
425 register "reg_afe_ctrl1" = "0x10"
426 register "reg_afe_ctrl2" = "0x00"
427 register "reg_afe_ctrl3" = "0x00"
428 register "reg_afe_ctrl4" = "0x07"
429 register "reg_afe_ctrl5" = "0x00"
430 register "reg_afe_ctrl6" = "0x00"
431 register "reg_afe_ctrl7" = "0x07"
432 register "reg_afe_ctrl8" = "0x12"
433 register "reg_afe_ctrl9" = "0x0f"
434 register "reg_prox_ctrl0" = "0x12"
435 register "reg_prox_ctrl1" = "0x12"
436 register "reg_prox_ctrl2" = "0x90"
437 register "reg_prox_ctrl3" = "0x60"
438 register "reg_prox_ctrl4" = "0x0c"
439 register "reg_prox_ctrl5" = "0x12"
440 register "reg_prox_ctrl6" = "0x3c"
441 register "reg_prox_ctrl7" = "0x58"
442 register "reg_adv_ctrl0" = "0x00"
443 register "reg_adv_ctrl1" = "0x00"
444 register "reg_adv_ctrl2" = "0x00"
445 register "reg_adv_ctrl3" = "0x00"
446 register "reg_adv_ctrl4" = "0x00"
447 register "reg_adv_ctrl5" = "0x05"
448 register "reg_adv_ctrl6" = "0x00"
449 register "reg_adv_ctrl7" = "0x00"
450 register "reg_adv_ctrl8" = "0x00"
451 register "reg_adv_ctrl9" = "0x00"
452 register "reg_adv_ctrl10" = "0x5c"
453 register "reg_adv_ctrl11" = "0x52"
454 register "reg_adv_ctrl12" = "0xb5"
455 register "reg_adv_ctrl13" = "0x00"
456 register "reg_adv_ctrl14" = "0x80"
457 register "reg_adv_ctrl15" = "0x0c"
458 register "reg_adv_ctrl16" = "0x38"
459 register "reg_adv_ctrl17" = "0x56"
460 register "reg_adv_ctrl18" = "0x33"
461 register "reg_adv_ctrl19" = "0xf0"
462 register "reg_adv_ctrl20" = "0xf0"
463 device i2c 28 on end
464 end
465 chip drivers/i2c/sx9324
466 register "desc" = ""SAR2 Proximity Sensor""
467 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_H19_IRQ)"
468 register "speed" = "I2C_SPEED_FAST"
469 register "uid" = "2"
470 register "reg_gnrl_ctrl0" = "0x16"
471 register "reg_gnrl_ctrl1" = "0x21"
472 register "reg_afe_ctrl0" = "0x00"
473 register "reg_afe_ctrl1" = "0x10"
474 register "reg_afe_ctrl2" = "0x00"
475 register "reg_afe_ctrl3" = "0x00"
476 register "reg_afe_ctrl4" = "0x07"
477 register "reg_afe_ctrl5" = "0x00"
478 register "reg_afe_ctrl6" = "0x00"
479 register "reg_afe_ctrl7" = "0x07"
480 register "reg_afe_ctrl8" = "0x12"
481 register "reg_afe_ctrl9" = "0x0f"
482 register "reg_prox_ctrl0" = "0x12"
483 register "reg_prox_ctrl1" = "0x12"
484 register "reg_prox_ctrl2" = "0x90"
485 register "reg_prox_ctrl3" = "0x60"
486 register "reg_prox_ctrl4" = "0x0c"
487 register "reg_prox_ctrl5" = "0x12"
488 register "reg_prox_ctrl6" = "0x3c"
489 register "reg_prox_ctrl7" = "0x58"
490 register "reg_adv_ctrl0" = "0x00"
491 register "reg_adv_ctrl1" = "0x00"
492 register "reg_adv_ctrl2" = "0x00"
493 register "reg_adv_ctrl3" = "0x00"
494 register "reg_adv_ctrl4" = "0x00"
495 register "reg_adv_ctrl5" = "0x05"
496 register "reg_adv_ctrl6" = "0x00"
497 register "reg_adv_ctrl7" = "0x00"
498 register "reg_adv_ctrl8" = "0x00"
499 register "reg_adv_ctrl9" = "0x00"
500 register "reg_adv_ctrl10" = "0x5c"
501 register "reg_adv_ctrl11" = "0x52"
502 register "reg_adv_ctrl12" = "0xb5"
503 register "reg_adv_ctrl13" = "0x00"
504 register "reg_adv_ctrl14" = "0x80"
505 register "reg_adv_ctrl15" = "0x0c"
506 register "reg_adv_ctrl16" = "0x38"
507 register "reg_adv_ctrl17" = "0x56"
508 register "reg_adv_ctrl18" = "0x33"
509 register "reg_adv_ctrl19" = "0xf0"
510 register "reg_adv_ctrl20" = "0xf0"
511 device i2c 2C on end
512 end
513 chip drivers/intel/mipi_camera
514 register "acpi_hid" = ""INT3478""
515 register "acpi_uid" = "0"
516 register "acpi_name" = ""CAM1""
517 register "chip_name" = ""imx 208 Camera""
518 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
519
520 register "ssdb.lanes_used" = "2"
521 register "ssdb.link_used" = "1"
522 register "num_freq_entries" = "2"
523 register "link_freq[0]" = "384 * MHz" # 384 MHz
524 register "link_freq[1]" = "96 * MHz" # 96 MHz
525 register "remote_name" = ""IPU0""
526
527 register "has_power_resource" = "1"
528 #Controls
529 register "gpio_panel.gpio[0].gpio_num" = "GPP_C3" #PP3300_FCAM_X
530 register "gpio_panel.gpio[1].gpio_num" = "GPP_A17" #EN_UCAM_PWR
531 register "gpio_panel.gpio[2].gpio_num" = "GPP_F20" #reset
532 register "gpio_panel.gpio[3].gpio_num" = "GPP_H21" #CLK_EN
533
534 #_ON
535 register "on_seq.ops_cnt" = "5"
536 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(3, 0)"
537 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
538 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
539 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
540 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
541
542 #_OFF
543 register "off_seq.ops_cnt" = "4"
544 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(3, 0)"
545 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
546 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
547 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
548
549 device i2c 10 on
550 probe UFC UFC_MIPI_IMX208
551 end
552 end
553 chip drivers/intel/mipi_camera
YH Lin83cf3332021-12-06 15:57:26 -0800554 register "acpi_hid" = ""ACPI_DT_NAMESPACE_HID""
YH Lin6ba7bee2021-11-29 09:44:01 -0800555 register "acpi_uid" = "1"
556 register "acpi_name" = ""NVM1""
557 register "chip_name" = ""GT24C16S""
558 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
559
560 register "pr0" = ""\\_SB.PCI0.I2C2.CAM1.PRIC""
YH Lin83cf3332021-12-06 15:57:26 -0800561 register "nvm_compat" = ""atmel,24c1024""
YH Lin6ba7bee2021-11-29 09:44:01 -0800562
YH Lin83cf3332021-12-06 15:57:26 -0800563 register "nvm_size" = "0x800"
YH Lin6ba7bee2021-11-29 09:44:01 -0800564 register "nvm_pagesize" = "0x01"
565 register "nvm_readonly" = "0x01"
YH Lin83cf3332021-12-06 15:57:26 -0800566 register "nvm_width" = "0x08"
YH Lin6ba7bee2021-11-29 09:44:01 -0800567
568 device i2c 50 on
569 probe UFC UFC_MIPI_IMX208
570 end
571 end
572 chip drivers/i2c/generic
573 register "hid" = ""GOOG0020""
574 register "desc" = ""Chrome OS HPS""
575 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E7)" # EN_HPS_PWR
576 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E3_IRQ)" # HPS_INT_ODL
577 # HPS uses I2C addresses 0x30 and 0x51.
578 # The address we provide here is not significant because
579 # neither coreboot nor Linux have a driver for HPS,
580 # it's only used from userspace.
581 device i2c 30 on
582 probe HPS HPS_PRESENT
583 end
584 end
585 end
586 device ref i2c3 on
587 chip drivers/i2c/tpm
588 register "hid" = ""GOOG0005""
589 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
590 device i2c 50 on end
591 end
592 end
593 device ref i2c5 on
594 chip drivers/i2c/generic
595 register "hid" = ""ELAN0000""
596 register "desc" = ""ELAN Touchpad""
597 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
598 register "wake" = "GPE0_DW2_14"
599 register "probed" = "1"
600 device i2c 15 on end
601 end
602 end
603 device ref hda on
604 chip drivers/generic/max98357a
605 register "hid" = ""MX98357A""
606 register "sdmode_gpio" =
607 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
608 register "sdmode_delay" = "5"
609 device generic 0 on
610 probe AUDIO MAX98357_ALC5682I_I2S
611 end
612 end
613
614 chip drivers/intel/soundwire
615 device generic 0 on
616 probe AUDIO MAX98373_ALC5682_SNDW
617 chip drivers/soundwire/alc5682
618 # SoundWire Link 0 ID 1
619 register "desc" = ""Headset Codec""
620 device generic 0.1 on end
621 end
622 chip drivers/soundwire/max98373
623 # SoundWire Link 2 ID 3
624 register "desc" = ""Left Speaker Amp""
625 device generic 2.3 on end
626 end
627 chip drivers/soundwire/max98373
628 # SoundWire Link 2 ID 7
629 register "desc" = ""Right Speaker Amp""
630 device generic 2.7 on end
631 end
632 end
633 end
634 end
635 device ref gspi1 on
636 chip drivers/spi/acpi
637 register "name" = ""CRFP""
638 register "hid" = "ACPI_DT_NAMESPACE_HID"
639 register "uid" = "1"
640 register "compat_string" = ""google,cros-ec-spi""
641 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F15_IRQ)"
642 register "wake" = "GPE0_DW2_15"
643 device spi 0 on end
644 end # FPMCU
645 end
646 device ref pch_espi on
647 chip ec/google/chromeec
648 use conn0 as mux_conn[0]
649 use conn1 as mux_conn[1]
650 use conn2 as mux_conn[2]
651 device pnp 0c09.0 on end
652 end
653 end
654 device ref pmc hidden
655 chip drivers/intel/pmc_mux
656 device generic 0 on
657 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100658 use usb2_port1 as usb2_port
659 use tcss_usb3_port1 as usb3_port
YH Lin6ba7bee2021-11-29 09:44:01 -0800660 device generic 0 alias conn0 on end
661 end
662 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100663 use usb2_port2 as usb2_port
664 use tcss_usb3_port2 as usb3_port
YH Lin6ba7bee2021-11-29 09:44:01 -0800665 device generic 1 alias conn1 on end
666 end
667 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100668 use usb2_port3 as usb2_port
669 use tcss_usb3_port3 as usb3_port
YH Lin6ba7bee2021-11-29 09:44:01 -0800670 device generic 2 alias conn2 on end
671 end
672 end
673 end
674 end
675 device ref tcss_xhci on
676 chip drivers/usb/acpi
677 device ref tcss_root_hub on
678 chip drivers/usb/acpi
679 register "desc" = ""USB3 Type-C Port C0 (MLB)""
680 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +0000681 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +0000682 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800683 device ref tcss_usb3_port1 on end
684 end
685 chip drivers/usb/acpi
686 register "desc" = ""USB3 Type-C Port C1 (DB)""
687 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +0000688 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +0530689 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800690 device ref tcss_usb3_port2 on end
691 end
692 chip drivers/usb/acpi
693 register "desc" = ""USB3 Type-C Port C2 (MLB)""
694 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +0000695 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +0000696 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800697 device ref tcss_usb3_port3 on end
698 end
699 end
700 end
701 end
702 device ref xhci on
703 chip drivers/usb/acpi
704 device ref xhci_root_hub on
705 chip drivers/usb/acpi
706 register "desc" = ""USB2 Type-C Port C0 (MLB)""
707 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +0000708 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +0000709 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, RIGHT, ACPI_PLD_GROUP(1, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800710 device ref usb2_port1 on end
711 end
712 chip drivers/usb/acpi
713 register "desc" = ""USB2 Type-C Port C1 (DB)""
714 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +0000715 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +0530716 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800717 device ref usb2_port2 on end
718 end
719 chip drivers/usb/acpi
720 register "desc" = ""USB2 Type-C Port C2 (MLB)""
721 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chungf1a3f182022-01-25 22:30:12 +0000722 register "use_custom_pld" = "true"
Won Chung2b755aa2022-05-23 22:02:18 +0000723 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800724 device ref usb2_port3 on end
725 end
726 chip drivers/usb/acpi
727 register "desc" = ""USB2 WWAN""
728 register "type" = "UPC_TYPE_INTERNAL"
729 device ref usb2_port4 on end
730 end
731 chip drivers/usb/acpi
732 register "desc" = ""USB2 Camera""
733 register "type" = "UPC_TYPE_INTERNAL"
734 device ref usb2_port6 on
735 probe UFC UFC_USB
736 end
737 end
738 chip drivers/usb/acpi
YH Lin6ba7bee2021-11-29 09:44:01 -0800739 register "desc" = ""USB2 Type-A Port A0 (DB)""
740 register "type" = "UPC_TYPE_A"
Won Chungf1a3f182022-01-25 22:30:12 +0000741 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +0530742 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800743 device ref usb2_port9 on end
744 end
745 chip drivers/usb/acpi
746 register "desc" = ""USB2 Bluetooth""
747 register "type" = "UPC_TYPE_INTERNAL"
748 register "reset_gpio" =
749 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
750 device ref usb2_port10 on end
751 end
752 chip drivers/usb/acpi
753 register "desc" = ""USB3 Type-A Port A0 (DB)""
754 register "type" = "UPC_TYPE_USB3_A"
Won Chungf1a3f182022-01-25 22:30:12 +0000755 register "use_custom_pld" = "true"
Subrata Banikd2133c22022-02-16 16:56:23 +0530756 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
YH Lin6ba7bee2021-11-29 09:44:01 -0800757 device ref usb3_port1 on end
758 end
759 chip drivers/usb/acpi
YH Lin6ba7bee2021-11-29 09:44:01 -0800760 register "desc" = ""USB3 WWAN""
761 register "type" = "UPC_TYPE_INTERNAL"
762 device ref usb3_port4 on end
763 end
764 end
765 end
766 end
767 end
768end