blob: 0a66fdb5a90d0f2e6e04f3dd1710730d5e130d93 [file] [log] [blame]
Simon Zhou3b821312023-05-22 18:52:38 +08001fw_config
Simon Zhou298732e2023-06-01 08:56:07 +08002 field AUDIO 0 1
3 option AUDIO_UNKNOWN 0
4 option ALC1019_ALC5682I_I2S 1
5 end
6 field DB_CONFIG 2 4
7 option DB_UNKNOWN 0
8 option DB_TYPEC 1
9 option DB_TBT 2
10 end
Simon Zhou3b821312023-05-22 18:52:38 +080011 field MB_CONFIG 5 7
12 option MB_UNKNOWN 0
13 option MB_TYPEC 1
14 option MB_TBT 2
15 end
Zhongtian Wuedee16e2023-06-07 20:09:55 +080016 field TOUCHSCREEN 8 9
17 option TOUCHSCREEN_UNKNOWN 0
18 option TOUCHSCREEN_ILITEK 1
19 option TOUCHSCREEN_ELAN 2
20 end
YH Linf03a6ef2023-08-31 09:38:08 -070021 field FP_MCU 10
22 option FP_MCU_STM 0
23 option FP_MCU_NPCX 1
24 end
Kun Liu386ef642023-08-02 20:03:07 +080025 field DB_SD 11 12
YH Lin21db65d2023-08-31 09:08:55 -070026 option SD_GL9750 0
27 option SD_RTS5227S 1
Kun Liu386ef642023-08-02 20:03:07 +080028 end
YH Linfd6908a2023-08-31 09:41:31 -070029 field WIFI_SAR_ID 13
30 option WIFI_SAR_ID_0 0
31 option WIFI_SAR_ID_1 1
32 end
Simon Zhou3b821312023-05-22 18:52:38 +080033end
34
Simon Zhou2cf25eb2023-04-14 14:21:00 +080035chip soc/intel/meteorlake
36
Subrata Banike4ac7b12023-10-26 19:36:00 +053037 register "power_limits_config[MTL_P_282_242_CORE]" = "{
Kun Liu39145612023-12-06 21:34:50 +080038 .tdp_pl1_override = 25,
Subrata Banike4ac7b12023-10-26 19:36:00 +053039 .tdp_pl2_override = 40,
40 .tdp_pl4 = 84,
41 }"
42
Subrata Banikd5818782023-10-26 19:55:56 +053043 # Override FVM and VR (IA and SA) configuration: Disable
44 register "enable_fast_vmode[VR_DOMAIN_IA]" = "0"
45 register "cep_enable[VR_DOMAIN_IA]" = "0"
46 register "fast_vmode_i_trip[VR_DOMAIN_IA]" = "0"
47 register "enable_fast_vmode[VR_DOMAIN_SA]" = "0"
48 register "cep_enable[VR_DOMAIN_SA]" = "0"
49 register "fast_vmode_i_trip[VR_DOMAIN_SA]" = "0"
50
Kun Liu6f6353d2023-05-06 12:25:54 +080051 register "usb2_ports[0]" = "USB2_PORT_TYPE_C(OC1)" # USB2_C1
52 register "usb2_ports[1]" = "USB2_PORT_TYPE_C(OC0)" # USB2_C0
53 register "usb2_ports[2]" = "USB2_PORT_MID(OC2)" # Type-A Port A1
54 register "usb2_ports[8]" = "USB2_PORT_MID(OC3)" # Type-A Port A0
qinwentao3afa5932023-05-19 15:25:01 +080055 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # M.2 Bluetooth
Simon Zhou2cf25eb2023-04-14 14:21:00 +080056
Kun Liu6f6353d2023-05-06 12:25:54 +080057 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC3)" # USB3/2 Type A port A0
58 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC2)" # USB3/2 Type A port A1
59
60 register "tcss_ports[1]" = "TCSS_PORT_DEFAULT(OC0)"
61 register "tcss_ports[3]" = "TCSS_PORT_DEFAULT(OC1)"
62
63 # Enable eDP in Port A
64 register "ddi_port_A_config" = "1"
65 # Enable HDMI in Port B
66 register "ddi_port_B_config" = "0"
67
68 # Enable Display Port Configuration
69 register "ddi_ports_config" = "{
70 [DDI_PORT_A] = DDI_ENABLE_HPD,
71 [DDI_PORT_B] = DDI_ENABLE_HPD | DDI_ENABLE_DDC,
72 [DDI_PORT_1] = DDI_ENABLE_HPD,
73 [DDI_PORT_2] = DDI_ENABLE_HPD,
74 [DDI_PORT_3] = DDI_ENABLE_HPD,
75 [DDI_PORT_4] = DDI_ENABLE_HPD,
76 }"
77
78 register "serial_io_gspi_mode" = "{
79 [PchSerialIoIndexGSPI0] = PchSerialIoDisabled,
80 [PchSerialIoIndexGSPI1] = PchSerialIoPci,
81 [PchSerialIoIndexGSPI2] = PchSerialIoDisabled,
82 }"
83
84 register "serial_io_i2c_mode" = "{
85 [PchSerialIoIndexI2C0] = PchSerialIoPci,
86 [PchSerialIoIndexI2C1] = PchSerialIoPci,
87 [PchSerialIoIndexI2C2] = PchSerialIoDisabled,
88 [PchSerialIoIndexI2C3] = PchSerialIoPci,
89 [PchSerialIoIndexI2C4] = PchSerialIoPci,
90 [PchSerialIoIndexI2C5] = PchSerialIoPci,
91 }"
92
Subrata Banik20629b42023-11-28 23:07:33 +053093 # Acoustic Noise settings and slew rate configuration:
94 # slew rate for IA Domain: Fast/8
95 # Ignore slew rate configuration for SA Domain
96 register "enable_acoustic_noise_mitigation" = "1"
97 register "disable_fast_pkgc_ramp[VR_DOMAIN_IA]" = "1"
98 register "slow_slew_rate_config[VR_DOMAIN_IA]" = "SLEW_FAST_8"
99 register "slow_slew_rate_config[VR_DOMAIN_SA]" = "SLEW_IGNORE"
100
101
Kun Liu6f6353d2023-05-06 12:25:54 +0800102 # Intel Common SoC Config
103 #+-------------------+---------------------------+
104 #| Field | Value |
105 #+-------------------+---------------------------+
106 #| I2C0 | Audio |
107 #| I2C1 | Touchscreen |
108 #| I2C3 | Touchpad |
109 #| I2C4 | cr50 TPM. Early init is |
110 #| | required to set up a BAR |
111 #| | for TPM communication |
112 #| I2C5 | UFC |
113 #+-------------------+---------------------------+
114 register "common_soc_config" = "{
115 .i2c[0] = {
116 .speed = I2C_SPEED_FAST,
117 .rise_time_ns = 650,
118 .fall_time_ns = 400,
Zhongtian Wu0c9549a2023-07-14 16:11:51 +0800119 .data_hold_time_ns = 50,
Kun Liu6f6353d2023-05-06 12:25:54 +0800120 },
121 .i2c[1] = {
122 .speed = I2C_SPEED_FAST,
123 .rise_time_ns = 650,
124 .fall_time_ns = 400,
Zhongtian Wu0c9549a2023-07-14 16:11:51 +0800125 .data_hold_time_ns = 100,
Kun Liu6f6353d2023-05-06 12:25:54 +0800126 },
127 .i2c[3] = {
128 .speed = I2C_SPEED_FAST,
129 .rise_time_ns = 650,
Zhongtian Wu969a2a92023-06-30 09:52:24 +0800130 .fall_time_ns = 150,
131 .data_hold_time_ns = 400,
Kun Liu6f6353d2023-05-06 12:25:54 +0800132 },
133 .i2c[4] = {
134 .early_init = 1,
135 .speed = I2C_SPEED_FAST,
136 .rise_time_ns = 600,
137 .fall_time_ns = 400,
138 .data_hold_time_ns = 50,
139 },
140 .i2c[5] = {
141 .speed = I2C_SPEED_FAST,
142 .rise_time_ns = 900,
143 .fall_time_ns = 400,
144 .data_hold_time_ns = 50,
145 },
146 }"
147
148 device domain 0 on
149 device ref dtt on
150 chip drivers/intel/dptf
151 ## sensor information
152 register "options.tsr[0].desc" = ""DDR_SOC""
153 register "options.tsr[1].desc" = ""Ambient""
154 register "options.tsr[2].desc" = ""Charger""
Kun Liu6a0c6d72023-07-20 16:30:16 +0800155 register "options.tsr[3].desc" = ""VCC_IN""
156 register "options.tsr[4].desc" = ""Typec""
Kun Liu6f6353d2023-05-06 12:25:54 +0800157
158 ## Active Policy
159 # FIXME: below values are initial reference values only
160 register "policies.active" = "{
161 [0] = {
162 .target = DPTF_TEMP_SENSOR_0,
163 .thresholds = {
164 TEMP_PCT(75, 90),
165 TEMP_PCT(70, 80),
166 TEMP_PCT(65, 70),
167 TEMP_PCT(60, 60),
168 TEMP_PCT(55, 50),
169 TEMP_PCT(50, 40),
Kun Liu6f6353d2023-05-06 12:25:54 +0800170 }
171 },
172 [1] = {
173 .target = DPTF_TEMP_SENSOR_1,
174 .thresholds = {
175 TEMP_PCT(75, 90),
176 TEMP_PCT(70, 80),
177 TEMP_PCT(65, 70),
178 TEMP_PCT(60, 60),
179 TEMP_PCT(55, 50),
180 TEMP_PCT(50, 40),
Kun Liu6f6353d2023-05-06 12:25:54 +0800181 }
182 },
183 [2] = {
184 .target = DPTF_TEMP_SENSOR_2,
185 .thresholds = {
Kun Liu6a0c6d72023-07-20 16:30:16 +0800186 TEMP_PCT(90, 90),
187 TEMP_PCT(85, 80),
188 TEMP_PCT(75, 70),
189 TEMP_PCT(70, 50),
190 }
191 },
192 [3] = {
193 .target = DPTF_TEMP_SENSOR_3,
194 .thresholds = {
195 TEMP_PCT(80, 90),
196 TEMP_PCT(75, 80),
197 TEMP_PCT(70, 70),
198 TEMP_PCT(65, 50),
199 }
200 },
201 [4] = {
202 .target = DPTF_TEMP_SENSOR_4,
203 .thresholds = {
204 TEMP_PCT(70, 90),
205 TEMP_PCT(65, 80),
206 TEMP_PCT(60, 70),
207 TEMP_PCT(55, 50),
Kun Liu6f6353d2023-05-06 12:25:54 +0800208 }
209 }
210 }"
211
212 ## Passive Policy
213 # TODO: below values are initial reference values only
214 register "policies.passive" = "{
Kun Liu7c193b92023-10-08 15:29:30 +0800215 [0] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 85, 5000),
216 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 85, 5000),
217 [2] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 90, 5000),
Kun Liu6f6353d2023-05-06 12:25:54 +0800218 }"
219
220 ## Critical Policy
221 # TODO: below values are initial reference values only
222 register "policies.critical" = "{
Kun Liu7c193b92023-10-08 15:29:30 +0800223 [0] = DPTF_CRITICAL(TEMP_SENSOR_0, 90, SHUTDOWN),
224 [1] = DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN),
225 [2] = DPTF_CRITICAL(TEMP_SENSOR_2, 95, SHUTDOWN),
Kun Liu6f6353d2023-05-06 12:25:54 +0800226 }"
227
228 ## Power Limits Control
229 register "controls.power_limits" = "{
230 .pl1 = {
231 .min_power = 15000,
232 .max_power = 15000,
233 .time_window_min = 28 * MSECS_PER_SEC,
234 .time_window_max = 32 * MSECS_PER_SEC,
235 .granularity = 200,
236 },
237 .pl2 = {
Kun Liu6a0c6d72023-07-20 16:30:16 +0800238 .min_power = 40000,
239 .max_power = 40000,
Kun Liu6f6353d2023-05-06 12:25:54 +0800240 .time_window_min = 28 * MSECS_PER_SEC,
241 .time_window_max = 32 * MSECS_PER_SEC,
242 .granularity = 1000,
243 }
244 }"
245
246 ## Charger Performance Control (Control, mA)
247 register "controls.charger_perf" = "{
248 [0] = { 255, 3000 },
249 [1] = { 24, 1500 },
250 [2] = { 16, 1000 },
251 [3] = { 8, 500 }
252 }"
253
254 ## Fan Performance Control (Percent, Speed, Noise, Power)
255 register "controls.fan_perf" = "{
Kun Liu6a0c6d72023-07-20 16:30:16 +0800256 [0] = { 90, 5900, 220, 2200, },
257 [1] = { 80, 5500, 180, 1800, },
Kun Liu6f6353d2023-05-06 12:25:54 +0800258 [2] = { 70, 5000, 145, 1450, },
Kun Liu6a0c6d72023-07-20 16:30:16 +0800259 [3] = { 60, 4500, 115, 1150, },
260 [4] = { 50, 3900, 90, 900, },
261 [5] = { 40, 3250, 55, 550, },
262 [6] = { 30, 2550, 30, 300, },
263 [7] = { 20, 1750, 15, 150, },
Kun Liu6f6353d2023-05-06 12:25:54 +0800264 [8] = { 10, 800, 10, 100, },
265 [9] = { 0, 0, 0, 50, }
266 }"
267
268 ## Fan options
269 register "options.fan.fine_grained_control" = "1"
270 register "options.fan.step_size" = "2"
271
272 device generic 0 alias dptf_policy on end
273 end
274 end
275 device ref pcie_rp9 on
276 # Enable SSD Card PCIE 9 using clk 4
277 register "pcie_rp[PCH_RP(9)]" = "{
278 .clk_src = 4,
279 .clk_req = 4,
280 .flags = PCIE_RP_LTR | PCIE_RP_AER,
281 }"
Kapil Porwal340023f2023-07-31 15:31:35 +0000282 chip soc/intel/common/block/pcie/rtd3
283 register "is_storage" = "true"
284 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A19)"
285 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A20)"
286 register "srcclk_pin" = "4"
287 device generic 0 on end
288 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800289 end # PCIE4_P9 SSD card
290 device ref pcie_rp10 on
Kun Liu961a88a2023-08-07 16:16:18 +0800291 # Enable SD Card PCIE4 rp10 using clk 6
Kun Liu6f6353d2023-05-06 12:25:54 +0800292 register "pcie_rp[PCH_RP(10)]" = "{
Kun Liu961a88a2023-08-07 16:16:18 +0800293 .clk_src = 6,
294 .clk_req = 6,
Kun Liu6f6353d2023-05-06 12:25:54 +0800295 .flags = PCIE_RP_HOTPLUG | PCIE_RP_LTR | PCIE_RP_AER,
Kapil Porwald88039c2023-07-31 12:20:31 +0000296 .pcie_rp_aspm = ASPM_L1,
Kun Liu6f6353d2023-05-06 12:25:54 +0800297 }"
298 chip soc/intel/common/block/pcie/rtd3
299 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D03)"
300 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D02)"
Kun Liuf7337032023-11-30 18:05:03 +0800301 register "enable_delay_ms" = "1"
Kun Liu961a88a2023-08-07 16:16:18 +0800302 register "srcclk_pin" = "6"
Kun Liu386ef642023-08-02 20:03:07 +0800303 device generic 0 on
304 probe DB_SD SD_GL9750
305 probe DB_SD SD_RTS5227S
306 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800307 end
308 end
309 device ref tbt_pcie_rp0 on end
Rui Zhou1e13a2c2023-06-14 20:20:44 +0800310 device ref tbt_pcie_rp1 on end
311 device ref tbt_pcie_rp3 on end
Kun Liu6f6353d2023-05-06 12:25:54 +0800312 device ref tcss_xhci on
313 chip drivers/usb/acpi
314 device ref tcss_root_hub on
315 chip drivers/usb/acpi
316 register "desc" = ""USB3 Type-C Port C0 (MLB)""
317 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
318 register "use_custom_pld" = "true"
319 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 1))"
Eric Lai884a70b2023-06-16 09:26:18 +0800320 device ref tcss_usb3_port1 on end
Kun Liu6f6353d2023-05-06 12:25:54 +0800321 end
322 chip drivers/usb/acpi
323 register "desc" = ""USB3 Type-C Port C1 (DB)""
324 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
325 register "use_custom_pld" = "true"
326 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(2, 1))"
Eric Lai884a70b2023-06-16 09:26:18 +0800327 device ref tcss_usb3_port3 on end
Kun Liu6f6353d2023-05-06 12:25:54 +0800328 end
329 end
330 end
331 end
332 device ref tcss_dma0 on
333 chip drivers/intel/usb4/retimer
zhourui42f1fef2023-11-06 17:25:01 +0800334 register "dfp[1].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B22)"
335 use tcss_usb3_port1 as dfp[1].typec_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800336 device generic 0 on end
337 end
338 end
339 device ref tcss_dma1 on
340 chip drivers/intel/usb4/retimer
zhourui42f1fef2023-11-06 17:25:01 +0800341 register "dfp[1].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B22)"
342 use tcss_usb3_port3 as dfp[1].typec_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800343 device generic 0 on end
344 end
345 end
346 device ref xhci on
347 chip drivers/usb/acpi
348 device ref xhci_root_hub on
349 chip drivers/usb/acpi
350 register "desc" = ""USB2 Type-C Port C1 (DB)""
351 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
352 register "use_custom_pld" = "true"
353 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(2, 1))"
354 device ref usb2_port1 on end
355 end
356 chip drivers/usb/acpi
357 register "desc" = ""USB2 Type-C Port C0 (MLB)""
358 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
359 register "use_custom_pld" = "true"
360 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 1))"
361 device ref usb2_port2 on end
362 end
363 chip drivers/usb/acpi
364 register "desc" = ""USB2 Type-A Port A1 (MLB)""
365 register "type" = "UPC_TYPE_A"
366 register "use_custom_pld" = "true"
367 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
368 device ref usb2_port3 on end
369 end
370 chip drivers/usb/acpi
371 register "desc" = ""USB2 Type-A Port A0 (MLB)""
372 register "type" = "UPC_TYPE_A"
373 register "use_custom_pld" = "true"
374 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, CENTER, ACPI_PLD_GROUP(3, 1))"
375 device ref usb2_port9 on end
376 end
377 chip drivers/usb/acpi
qinwentao3afa5932023-05-19 15:25:01 +0800378 register "desc" = ""USB2 Bluetooth""
379 register "type" = "UPC_TYPE_INTERNAL"
380 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_B01)"
381 device ref usb2_port10 on end
382 end
383 chip drivers/usb/acpi
Kun Liu6f6353d2023-05-06 12:25:54 +0800384 register "desc" = ""USB3 Type-A Port A0 (MLB)""
385 register "type" = "UPC_TYPE_USB3_A"
386 register "use_custom_pld" = "true"
387 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, CENTER, ACPI_PLD_GROUP(3, 1))"
388 device ref usb3_port1 on end
389 end
390 chip drivers/usb/acpi
391 register "desc" = ""USB3 Type-A Port A1 (MLB)""
392 register "type" = "UPC_TYPE_USB3_A"
393 register "use_custom_pld" = "true"
394 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
395 device ref usb3_port2 on end
396 end
397 end
398 end
399 end
400 device ref cnvi_wifi on
401 chip drivers/wifi/generic
402 register "wake" = "GPE0_PME_B0"
403 register "add_acpi_dma_property" = "true"
404 register "enable_cnvi_ddr_rfim" = "true"
405 device generic 0 on end
406 end
407 end
jason.z.chen90c3df72023-05-11 17:23:50 +0800408 device ref ipu on
409 chip drivers/intel/mipi_camera
410 register "acpi_uid" = "0x50000"
411 register "acpi_name" = ""IPU0""
412 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
413
414 register "cio2_num_ports" = "1"
415 register "cio2_lanes_used" = "{4}"
416 register "cio2_lane_endpoint[0]" = ""^I2C5.CAM0""
417 register "cio2_prt[0]" = "4"
418 device generic 0 on end
419 end
420 end
Rui Zhou5c3c5292023-06-01 18:22:13 +0800421 device ref i2c0 on
422 chip drivers/i2c/generic
423 register "hid" = ""RTL5682""
424 register "name" = ""RT58""
425 register "desc" = ""Headset Codec""
426 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_B06)"
427 # Set the jd_src to RT5668_JD1 for jack detection
428 register "property_count" = "1"
429 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
430 register "property_list[0].name" = ""realtek,jd-src""
431 register "property_list[0].integer" = "1"
432 device i2c 1a on
433 probe AUDIO ALC1019_ALC5682I_I2S
434 end
435 end
436 end
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800437 device ref i2c1 on
438 chip drivers/i2c/hid
439 register "generic.hid" = ""ILTK0001""
440 register "generic.desc" = ""ILITEK Touchscreen""
441 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C07_IRQ)"
442 register "generic.probed" = "1"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800443 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D07)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800444 register "generic.reset_delay_ms" = "200"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800445 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B17)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800446 register "generic.enable_delay_ms" = "12"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800447 register "generic.has_power_resource" = "1"
448 register "hid_desc_reg_offset" = "0x01"
449 device i2c 41 on
450 probe TOUCHSCREEN TOUCHSCREEN_ILITEK
451 end
452 end
453 chip drivers/i2c/hid
454 register "generic.hid" = ""EKTH7B18U""
455 register "generic.desc" = ""ELAN Touchscreen""
456 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C07_IRQ)"
457 register "generic.probed" = "1"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800458 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D07)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800459 register "generic.reset_delay_ms" = "20"
460 register "generic.reset_off_delay_ms" = "2"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800461 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B17)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800462 register "generic.enable_delay_ms" = "1"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800463 register "generic.has_power_resource" = "1"
464 register "hid_desc_reg_offset" = "0x01"
465 device i2c 10 on
466 probe TOUCHSCREEN TOUCHSCREEN_ELAN
467 end
468 end
469 end
Zhongtian Wua1256702023-05-19 18:48:07 +0800470 device ref i2c3 on
471 chip drivers/i2c/generic
472 register "hid" = ""ELAN0000""
473 register "desc" = ""ELAN Touchpad""
474 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_B00_IRQ)"
475 register "wake" = "GPE0_DW0_00"
476 register "detect" = "1"
477 device i2c 15 on end
478 end
479 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800480 device ref i2c4 on
481 chip drivers/i2c/tpm
482 register "hid" = ""GOOG0005""
483 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_E03_IRQ)"
484 device i2c 50 on end
485 end
486 end
Simon Zhou6477d192023-05-17 10:12:29 +0800487 device ref gspi1 on
488 chip drivers/spi/acpi
489 register "name" = ""CRFP""
490 register "hid" = "ACPI_DT_NAMESPACE_HID"
491 register "uid" = "1"
492 register "compat_string" = ""google,cros-ec-spi""
493 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_E10_IRQ)"
494 register "wake" = "GPE0_DW1_10"
495 register "has_power_resource" = "1"
496 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C21)"
497 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B08)"
498 register "enable_delay_ms" = "3"
499 device spi 0 on end
500 end # FPMCU
501 end
jason.z.chen90c3df72023-05-11 17:23:50 +0800502 device ref i2c5 on
503 chip drivers/intel/mipi_camera
504 register "acpi_hid" = ""OVTI08F4""
505 register "acpi_uid" = "0"
506 register "acpi_name" = ""CAM0""
507 register "chip_name" = ""Ov 08X40 Camera""
508 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
509 register "ssdb.lanes_used" = "4"
510 register "ssdb.link_used" = "1"
511 register "num_freq_entries" = "1"
512 register "link_freq[0]" = "400 * MHz"
513 register "remote_name" = ""IPU0""
514
515 register "has_power_resource" = "1"
516 #Controls
517 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_2"
518 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
519 register "gpio_panel.gpio[1].gpio_num" = "GPP_A12" #EN_UCAM_PWR
520 register "gpio_panel.gpio[0].gpio_num" = "GPP_A11" #EN_UCAM_SENR_PWR
521 register "gpio_panel.gpio[2].gpio_num" = "GPP_V23" #UCAM_RST_L
522
523 #_ON
524 register "on_seq.ops_cnt" = "5"
525 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
526 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
527 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
528 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
529 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
530
531 #_OFF
532 register "off_seq.ops_cnt" = "4"
533 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
534 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
535 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
536 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
537 device i2c 36 on end
538 end
539 chip drivers/intel/mipi_camera
540 register "acpi_uid" = "1"
541 register "acpi_name" = ""NVM0""
542 register "chip_name" = ""M24C64X""
543 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
544
545 register "has_power_resource" = "1"
546 #Controls
547 register "gpio_panel.gpio[0].gpio_num" = "GPP_A12" #EN_UCAM_PWR
548
549 #_ON
550 register "on_seq.ops_cnt" = "1"
551 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
552
553 #_OFF
554 register "off_seq.ops_cnt" = "1"
555 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
556
557 register "nvm_size" = "0x2000"
558 register "nvm_pagesize" = "1"
559 register "nvm_readonly" = "1"
560 register "nvm_width" = "0x10"
561 register "nvm_compat" = ""atmel,24c64""
562
563 device i2c 50 on end
564 end
565 end #I2C5
Kun Liu6f6353d2023-05-06 12:25:54 +0800566 device ref soc_espi on
567 chip ec/google/chromeec
568 use conn0 as mux_conn[0]
569 use conn1 as mux_conn[1]
570 device pnp 0c09.0 on end
571 end
572 end
573 device ref pmc hidden
574 chip drivers/intel/pmc_mux
575 device generic 0 on
576 chip drivers/intel/pmc_mux/conn
577 use usb2_port2 as usb2_port
Eric Lai884a70b2023-06-16 09:26:18 +0800578 use tcss_usb3_port1 as usb3_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800579 device generic 0 alias conn0 on end
580 end
581 chip drivers/intel/pmc_mux/conn
582 use usb2_port1 as usb2_port
Eric Lai884a70b2023-06-16 09:26:18 +0800583 use tcss_usb3_port3 as usb3_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800584 device generic 1 alias conn1 on end
585 end
586 end
587 end
588 end
Rui Zhou5c3c5292023-06-01 18:22:13 +0800589 device ref hda on
590 chip drivers/generic/alc1015
591 register "hid" = ""RTL1019""
592 register "sdb" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B07)"
593 device generic 0 on
594 probe AUDIO ALC1019_ALC5682I_I2S
595 end
596 end
597 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800598 end
Simon Zhou2cf25eb2023-04-14 14:21:00 +0800599end