blob: 86bd74d0b11797cf3da7b260fa58aa468aaf51b2 [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
93 # Intel Common SoC Config
94 #+-------------------+---------------------------+
95 #| Field | Value |
96 #+-------------------+---------------------------+
97 #| I2C0 | Audio |
98 #| I2C1 | Touchscreen |
99 #| I2C3 | Touchpad |
100 #| I2C4 | cr50 TPM. Early init is |
101 #| | required to set up a BAR |
102 #| | for TPM communication |
103 #| I2C5 | UFC |
104 #+-------------------+---------------------------+
105 register "common_soc_config" = "{
106 .i2c[0] = {
107 .speed = I2C_SPEED_FAST,
108 .rise_time_ns = 650,
109 .fall_time_ns = 400,
Zhongtian Wu0c9549a2023-07-14 16:11:51 +0800110 .data_hold_time_ns = 50,
Kun Liu6f6353d2023-05-06 12:25:54 +0800111 },
112 .i2c[1] = {
113 .speed = I2C_SPEED_FAST,
114 .rise_time_ns = 650,
115 .fall_time_ns = 400,
Zhongtian Wu0c9549a2023-07-14 16:11:51 +0800116 .data_hold_time_ns = 100,
Kun Liu6f6353d2023-05-06 12:25:54 +0800117 },
118 .i2c[3] = {
119 .speed = I2C_SPEED_FAST,
120 .rise_time_ns = 650,
Zhongtian Wu969a2a92023-06-30 09:52:24 +0800121 .fall_time_ns = 150,
122 .data_hold_time_ns = 400,
Kun Liu6f6353d2023-05-06 12:25:54 +0800123 },
124 .i2c[4] = {
125 .early_init = 1,
126 .speed = I2C_SPEED_FAST,
127 .rise_time_ns = 600,
128 .fall_time_ns = 400,
129 .data_hold_time_ns = 50,
130 },
131 .i2c[5] = {
132 .speed = I2C_SPEED_FAST,
133 .rise_time_ns = 900,
134 .fall_time_ns = 400,
135 .data_hold_time_ns = 50,
136 },
137 }"
138
139 device domain 0 on
140 device ref dtt on
141 chip drivers/intel/dptf
142 ## sensor information
143 register "options.tsr[0].desc" = ""DDR_SOC""
144 register "options.tsr[1].desc" = ""Ambient""
145 register "options.tsr[2].desc" = ""Charger""
Kun Liu6a0c6d72023-07-20 16:30:16 +0800146 register "options.tsr[3].desc" = ""VCC_IN""
147 register "options.tsr[4].desc" = ""Typec""
Kun Liu6f6353d2023-05-06 12:25:54 +0800148
149 ## Active Policy
150 # FIXME: below values are initial reference values only
151 register "policies.active" = "{
152 [0] = {
153 .target = DPTF_TEMP_SENSOR_0,
154 .thresholds = {
155 TEMP_PCT(75, 90),
156 TEMP_PCT(70, 80),
157 TEMP_PCT(65, 70),
158 TEMP_PCT(60, 60),
159 TEMP_PCT(55, 50),
160 TEMP_PCT(50, 40),
Kun Liu6f6353d2023-05-06 12:25:54 +0800161 }
162 },
163 [1] = {
164 .target = DPTF_TEMP_SENSOR_1,
165 .thresholds = {
166 TEMP_PCT(75, 90),
167 TEMP_PCT(70, 80),
168 TEMP_PCT(65, 70),
169 TEMP_PCT(60, 60),
170 TEMP_PCT(55, 50),
171 TEMP_PCT(50, 40),
Kun Liu6f6353d2023-05-06 12:25:54 +0800172 }
173 },
174 [2] = {
175 .target = DPTF_TEMP_SENSOR_2,
176 .thresholds = {
Kun Liu6a0c6d72023-07-20 16:30:16 +0800177 TEMP_PCT(90, 90),
178 TEMP_PCT(85, 80),
179 TEMP_PCT(75, 70),
180 TEMP_PCT(70, 50),
181 }
182 },
183 [3] = {
184 .target = DPTF_TEMP_SENSOR_3,
185 .thresholds = {
186 TEMP_PCT(80, 90),
187 TEMP_PCT(75, 80),
188 TEMP_PCT(70, 70),
189 TEMP_PCT(65, 50),
190 }
191 },
192 [4] = {
193 .target = DPTF_TEMP_SENSOR_4,
194 .thresholds = {
195 TEMP_PCT(70, 90),
196 TEMP_PCT(65, 80),
197 TEMP_PCT(60, 70),
198 TEMP_PCT(55, 50),
Kun Liu6f6353d2023-05-06 12:25:54 +0800199 }
200 }
201 }"
202
203 ## Passive Policy
204 # TODO: below values are initial reference values only
205 register "policies.passive" = "{
Kun Liu7c193b92023-10-08 15:29:30 +0800206 [0] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 85, 5000),
207 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 85, 5000),
208 [2] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 90, 5000),
Kun Liu6f6353d2023-05-06 12:25:54 +0800209 }"
210
211 ## Critical Policy
212 # TODO: below values are initial reference values only
213 register "policies.critical" = "{
Kun Liu7c193b92023-10-08 15:29:30 +0800214 [0] = DPTF_CRITICAL(TEMP_SENSOR_0, 90, SHUTDOWN),
215 [1] = DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN),
216 [2] = DPTF_CRITICAL(TEMP_SENSOR_2, 95, SHUTDOWN),
Kun Liu6f6353d2023-05-06 12:25:54 +0800217 }"
218
219 ## Power Limits Control
220 register "controls.power_limits" = "{
221 .pl1 = {
222 .min_power = 15000,
223 .max_power = 15000,
224 .time_window_min = 28 * MSECS_PER_SEC,
225 .time_window_max = 32 * MSECS_PER_SEC,
226 .granularity = 200,
227 },
228 .pl2 = {
Kun Liu6a0c6d72023-07-20 16:30:16 +0800229 .min_power = 40000,
230 .max_power = 40000,
Kun Liu6f6353d2023-05-06 12:25:54 +0800231 .time_window_min = 28 * MSECS_PER_SEC,
232 .time_window_max = 32 * MSECS_PER_SEC,
233 .granularity = 1000,
234 }
235 }"
236
237 ## Charger Performance Control (Control, mA)
238 register "controls.charger_perf" = "{
239 [0] = { 255, 3000 },
240 [1] = { 24, 1500 },
241 [2] = { 16, 1000 },
242 [3] = { 8, 500 }
243 }"
244
245 ## Fan Performance Control (Percent, Speed, Noise, Power)
246 register "controls.fan_perf" = "{
Kun Liu6a0c6d72023-07-20 16:30:16 +0800247 [0] = { 90, 5900, 220, 2200, },
248 [1] = { 80, 5500, 180, 1800, },
Kun Liu6f6353d2023-05-06 12:25:54 +0800249 [2] = { 70, 5000, 145, 1450, },
Kun Liu6a0c6d72023-07-20 16:30:16 +0800250 [3] = { 60, 4500, 115, 1150, },
251 [4] = { 50, 3900, 90, 900, },
252 [5] = { 40, 3250, 55, 550, },
253 [6] = { 30, 2550, 30, 300, },
254 [7] = { 20, 1750, 15, 150, },
Kun Liu6f6353d2023-05-06 12:25:54 +0800255 [8] = { 10, 800, 10, 100, },
256 [9] = { 0, 0, 0, 50, }
257 }"
258
259 ## Fan options
260 register "options.fan.fine_grained_control" = "1"
261 register "options.fan.step_size" = "2"
262
263 device generic 0 alias dptf_policy on end
264 end
265 end
266 device ref pcie_rp9 on
267 # Enable SSD Card PCIE 9 using clk 4
268 register "pcie_rp[PCH_RP(9)]" = "{
269 .clk_src = 4,
270 .clk_req = 4,
271 .flags = PCIE_RP_LTR | PCIE_RP_AER,
272 }"
Kapil Porwal340023f2023-07-31 15:31:35 +0000273 chip soc/intel/common/block/pcie/rtd3
274 register "is_storage" = "true"
275 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A19)"
276 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A20)"
277 register "srcclk_pin" = "4"
278 device generic 0 on end
279 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800280 end # PCIE4_P9 SSD card
281 device ref pcie_rp10 on
Kun Liu961a88a2023-08-07 16:16:18 +0800282 # Enable SD Card PCIE4 rp10 using clk 6
Kun Liu6f6353d2023-05-06 12:25:54 +0800283 register "pcie_rp[PCH_RP(10)]" = "{
Kun Liu961a88a2023-08-07 16:16:18 +0800284 .clk_src = 6,
285 .clk_req = 6,
Kun Liu6f6353d2023-05-06 12:25:54 +0800286 .flags = PCIE_RP_HOTPLUG | PCIE_RP_LTR | PCIE_RP_AER,
Kapil Porwald88039c2023-07-31 12:20:31 +0000287 .pcie_rp_aspm = ASPM_L1,
Kun Liu6f6353d2023-05-06 12:25:54 +0800288 }"
289 chip soc/intel/common/block/pcie/rtd3
290 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D03)"
291 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D02)"
Kun Liuf7337032023-11-30 18:05:03 +0800292 register "enable_delay_ms" = "1"
Kun Liu961a88a2023-08-07 16:16:18 +0800293 register "srcclk_pin" = "6"
Kun Liu386ef642023-08-02 20:03:07 +0800294 device generic 0 on
295 probe DB_SD SD_GL9750
296 probe DB_SD SD_RTS5227S
297 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800298 end
299 end
300 device ref tbt_pcie_rp0 on end
Rui Zhou1e13a2c2023-06-14 20:20:44 +0800301 device ref tbt_pcie_rp1 on end
302 device ref tbt_pcie_rp3 on end
Kun Liu6f6353d2023-05-06 12:25:54 +0800303 device ref tcss_xhci on
304 chip drivers/usb/acpi
305 device ref tcss_root_hub on
306 chip drivers/usb/acpi
307 register "desc" = ""USB3 Type-C Port C0 (MLB)""
308 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
309 register "use_custom_pld" = "true"
310 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 1))"
Eric Lai884a70b2023-06-16 09:26:18 +0800311 device ref tcss_usb3_port1 on end
Kun Liu6f6353d2023-05-06 12:25:54 +0800312 end
313 chip drivers/usb/acpi
314 register "desc" = ""USB3 Type-C Port C1 (DB)""
315 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
316 register "use_custom_pld" = "true"
317 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(2, 1))"
Eric Lai884a70b2023-06-16 09:26:18 +0800318 device ref tcss_usb3_port3 on end
Kun Liu6f6353d2023-05-06 12:25:54 +0800319 end
320 end
321 end
322 end
323 device ref tcss_dma0 on
324 chip drivers/intel/usb4/retimer
zhourui42f1fef2023-11-06 17:25:01 +0800325 register "dfp[1].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B22)"
326 use tcss_usb3_port1 as dfp[1].typec_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800327 device generic 0 on end
328 end
329 end
330 device ref tcss_dma1 on
331 chip drivers/intel/usb4/retimer
zhourui42f1fef2023-11-06 17:25:01 +0800332 register "dfp[1].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B22)"
333 use tcss_usb3_port3 as dfp[1].typec_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800334 device generic 0 on end
335 end
336 end
337 device ref xhci on
338 chip drivers/usb/acpi
339 device ref xhci_root_hub on
340 chip drivers/usb/acpi
341 register "desc" = ""USB2 Type-C Port C1 (DB)""
342 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
343 register "use_custom_pld" = "true"
344 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(2, 1))"
345 device ref usb2_port1 on end
346 end
347 chip drivers/usb/acpi
348 register "desc" = ""USB2 Type-C Port C0 (MLB)""
349 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
350 register "use_custom_pld" = "true"
351 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 1))"
352 device ref usb2_port2 on end
353 end
354 chip drivers/usb/acpi
355 register "desc" = ""USB2 Type-A Port A1 (MLB)""
356 register "type" = "UPC_TYPE_A"
357 register "use_custom_pld" = "true"
358 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
359 device ref usb2_port3 on end
360 end
361 chip drivers/usb/acpi
362 register "desc" = ""USB2 Type-A Port A0 (MLB)""
363 register "type" = "UPC_TYPE_A"
364 register "use_custom_pld" = "true"
365 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, CENTER, ACPI_PLD_GROUP(3, 1))"
366 device ref usb2_port9 on end
367 end
368 chip drivers/usb/acpi
qinwentao3afa5932023-05-19 15:25:01 +0800369 register "desc" = ""USB2 Bluetooth""
370 register "type" = "UPC_TYPE_INTERNAL"
371 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_B01)"
372 device ref usb2_port10 on end
373 end
374 chip drivers/usb/acpi
Kun Liu6f6353d2023-05-06 12:25:54 +0800375 register "desc" = ""USB3 Type-A Port A0 (MLB)""
376 register "type" = "UPC_TYPE_USB3_A"
377 register "use_custom_pld" = "true"
378 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, CENTER, ACPI_PLD_GROUP(3, 1))"
379 device ref usb3_port1 on end
380 end
381 chip drivers/usb/acpi
382 register "desc" = ""USB3 Type-A Port A1 (MLB)""
383 register "type" = "UPC_TYPE_USB3_A"
384 register "use_custom_pld" = "true"
385 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
386 device ref usb3_port2 on end
387 end
388 end
389 end
390 end
391 device ref cnvi_wifi on
392 chip drivers/wifi/generic
393 register "wake" = "GPE0_PME_B0"
394 register "add_acpi_dma_property" = "true"
395 register "enable_cnvi_ddr_rfim" = "true"
396 device generic 0 on end
397 end
398 end
jason.z.chen90c3df72023-05-11 17:23:50 +0800399 device ref ipu on
400 chip drivers/intel/mipi_camera
401 register "acpi_uid" = "0x50000"
402 register "acpi_name" = ""IPU0""
403 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
404
405 register "cio2_num_ports" = "1"
406 register "cio2_lanes_used" = "{4}"
407 register "cio2_lane_endpoint[0]" = ""^I2C5.CAM0""
408 register "cio2_prt[0]" = "4"
409 device generic 0 on end
410 end
411 end
Rui Zhou5c3c5292023-06-01 18:22:13 +0800412 device ref i2c0 on
413 chip drivers/i2c/generic
414 register "hid" = ""RTL5682""
415 register "name" = ""RT58""
416 register "desc" = ""Headset Codec""
417 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_B06)"
418 # Set the jd_src to RT5668_JD1 for jack detection
419 register "property_count" = "1"
420 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
421 register "property_list[0].name" = ""realtek,jd-src""
422 register "property_list[0].integer" = "1"
423 device i2c 1a on
424 probe AUDIO ALC1019_ALC5682I_I2S
425 end
426 end
427 end
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800428 device ref i2c1 on
429 chip drivers/i2c/hid
430 register "generic.hid" = ""ILTK0001""
431 register "generic.desc" = ""ILITEK Touchscreen""
432 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C07_IRQ)"
433 register "generic.probed" = "1"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800434 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D07)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800435 register "generic.reset_delay_ms" = "200"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800436 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B17)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800437 register "generic.enable_delay_ms" = "12"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800438 register "generic.has_power_resource" = "1"
439 register "hid_desc_reg_offset" = "0x01"
440 device i2c 41 on
441 probe TOUCHSCREEN TOUCHSCREEN_ILITEK
442 end
443 end
444 chip drivers/i2c/hid
445 register "generic.hid" = ""EKTH7B18U""
446 register "generic.desc" = ""ELAN Touchscreen""
447 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C07_IRQ)"
448 register "generic.probed" = "1"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800449 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D07)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800450 register "generic.reset_delay_ms" = "20"
451 register "generic.reset_off_delay_ms" = "2"
Zhongtian Wu1f17ba52023-07-14 15:35:40 +0800452 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B17)"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800453 register "generic.enable_delay_ms" = "1"
Zhongtian Wuedee16e2023-06-07 20:09:55 +0800454 register "generic.has_power_resource" = "1"
455 register "hid_desc_reg_offset" = "0x01"
456 device i2c 10 on
457 probe TOUCHSCREEN TOUCHSCREEN_ELAN
458 end
459 end
460 end
Zhongtian Wua1256702023-05-19 18:48:07 +0800461 device ref i2c3 on
462 chip drivers/i2c/generic
463 register "hid" = ""ELAN0000""
464 register "desc" = ""ELAN Touchpad""
465 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_B00_IRQ)"
466 register "wake" = "GPE0_DW0_00"
467 register "detect" = "1"
468 device i2c 15 on end
469 end
470 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800471 device ref i2c4 on
472 chip drivers/i2c/tpm
473 register "hid" = ""GOOG0005""
474 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_E03_IRQ)"
475 device i2c 50 on end
476 end
477 end
Simon Zhou6477d192023-05-17 10:12:29 +0800478 device ref gspi1 on
479 chip drivers/spi/acpi
480 register "name" = ""CRFP""
481 register "hid" = "ACPI_DT_NAMESPACE_HID"
482 register "uid" = "1"
483 register "compat_string" = ""google,cros-ec-spi""
484 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_E10_IRQ)"
485 register "wake" = "GPE0_DW1_10"
486 register "has_power_resource" = "1"
487 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C21)"
488 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B08)"
489 register "enable_delay_ms" = "3"
490 device spi 0 on end
491 end # FPMCU
492 end
jason.z.chen90c3df72023-05-11 17:23:50 +0800493 device ref i2c5 on
494 chip drivers/intel/mipi_camera
495 register "acpi_hid" = ""OVTI08F4""
496 register "acpi_uid" = "0"
497 register "acpi_name" = ""CAM0""
498 register "chip_name" = ""Ov 08X40 Camera""
499 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
500 register "ssdb.lanes_used" = "4"
501 register "ssdb.link_used" = "1"
502 register "num_freq_entries" = "1"
503 register "link_freq[0]" = "400 * MHz"
504 register "remote_name" = ""IPU0""
505
506 register "has_power_resource" = "1"
507 #Controls
508 register "clk_panel.clks[0].clknum" = "IMGCLKOUT_2"
509 register "clk_panel.clks[0].freq" = "FREQ_19_2_MHZ"
510 register "gpio_panel.gpio[1].gpio_num" = "GPP_A12" #EN_UCAM_PWR
511 register "gpio_panel.gpio[0].gpio_num" = "GPP_A11" #EN_UCAM_SENR_PWR
512 register "gpio_panel.gpio[2].gpio_num" = "GPP_V23" #UCAM_RST_L
513
514 #_ON
515 register "on_seq.ops_cnt" = "5"
516 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
517 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
518 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
519 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
520 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
521
522 #_OFF
523 register "off_seq.ops_cnt" = "4"
524 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
525 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
526 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
527 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
528 device i2c 36 on end
529 end
530 chip drivers/intel/mipi_camera
531 register "acpi_uid" = "1"
532 register "acpi_name" = ""NVM0""
533 register "chip_name" = ""M24C64X""
534 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
535
536 register "has_power_resource" = "1"
537 #Controls
538 register "gpio_panel.gpio[0].gpio_num" = "GPP_A12" #EN_UCAM_PWR
539
540 #_ON
541 register "on_seq.ops_cnt" = "1"
542 register "on_seq.ops[0]" = "SEQ_OPS_GPIO_ENABLE(0, 0)"
543
544 #_OFF
545 register "off_seq.ops_cnt" = "1"
546 register "off_seq.ops[0]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
547
548 register "nvm_size" = "0x2000"
549 register "nvm_pagesize" = "1"
550 register "nvm_readonly" = "1"
551 register "nvm_width" = "0x10"
552 register "nvm_compat" = ""atmel,24c64""
553
554 device i2c 50 on end
555 end
556 end #I2C5
Kun Liu6f6353d2023-05-06 12:25:54 +0800557 device ref soc_espi on
558 chip ec/google/chromeec
559 use conn0 as mux_conn[0]
560 use conn1 as mux_conn[1]
561 device pnp 0c09.0 on end
562 end
563 end
564 device ref pmc hidden
565 chip drivers/intel/pmc_mux
566 device generic 0 on
567 chip drivers/intel/pmc_mux/conn
568 use usb2_port2 as usb2_port
Eric Lai884a70b2023-06-16 09:26:18 +0800569 use tcss_usb3_port1 as usb3_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800570 device generic 0 alias conn0 on end
571 end
572 chip drivers/intel/pmc_mux/conn
573 use usb2_port1 as usb2_port
Eric Lai884a70b2023-06-16 09:26:18 +0800574 use tcss_usb3_port3 as usb3_port
Kun Liu6f6353d2023-05-06 12:25:54 +0800575 device generic 1 alias conn1 on end
576 end
577 end
578 end
579 end
Rui Zhou5c3c5292023-06-01 18:22:13 +0800580 device ref hda on
581 chip drivers/generic/alc1015
582 register "hid" = ""RTL1019""
583 register "sdb" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B07)"
584 device generic 0 on
585 probe AUDIO ALC1019_ALC5682I_I2S
586 end
587 end
588 end
Kun Liu6f6353d2023-05-06 12:25:54 +0800589 end
Simon Zhou2cf25eb2023-04-14 14:21:00 +0800590end