blob: 7ff592590e4c61d2e696b56cc6ddd1fabd3bfbdb [file] [log] [blame]
David Wu305086c2022-05-09 01:37:12 +08001fw_config
2 field KB_BL 0 0
3 option KB_BL_ABSENT 0
4 option KB_BL_PRESENT 1
5 end
David Wu305086c2022-05-09 01:37:12 +08006 field AUDIO 2 3
7 option AUDIO_UNKNOWN 0
8 option MAX98360_NAU88L25B_I2S 1
9 end
10end
David Wueb327cb2022-04-15 16:11:51 +080011chip soc/intel/alderlake
David Wu9e24f752023-02-24 12:51:53 +080012 register "domain_vr_config[VR_DOMAIN_IA]" = "{
13 .enable_fast_vmode = 1,
14 }"
15
David Wu305086c2022-05-09 01:37:12 +080016 register "sagv" = "SaGv_Enabled"
David Wueb327cb2022-04-15 16:11:51 +080017
David Wue910fba2022-06-23 09:45:11 +080018 # As per Intel Advisory doc#723158, the change is required to prevent possible
19 # display flickering issue.
20 register "usb2_phy_sus_pg_disable" = "1"
21
David Wu305086c2022-05-09 01:37:12 +080022 register "usb2_ports[1]" = "USB2_PORT_EMPTY" # Disable USB2_C1
23 register "usb2_ports[3]" = "USB2_PORT_EMPTY" # Disable M.2 WWAN
David Wueb327cb2022-04-15 16:11:51 +080024
David Wu305086c2022-05-09 01:37:12 +080025 register "usb3_ports[3]" = "USB3_PORT_EMPTY" # Disable M.2 WWAN
26
27 # FIVR configurations are disabled since the board doesn't have V1p05 and Vnn
28 # bypass rails implemented.
29 register "ext_fivr_settings" = "{
30 .configure_ext_fivr = 1,
31 }"
32
33 # Intel Common SoC Config
34 #+-------------------+---------------------------+
35 #| Field | Value |
36 #+-------------------+---------------------------+
37 #| I2C0 | Audio |
38 #| I2C1 | cr50 TPM. Early init is |
39 #| | required to set up a BAR |
40 #| | for TPM communication |
41 #| I2C5 | Trackpad |
42 #+-------------------+---------------------------+
43
44 register "common_soc_config" = "{
45 .i2c[0] = {
46 .speed = I2C_SPEED_FAST,
47 .rise_time_ns = 650,
48 .fall_time_ns = 400,
49 .data_hold_time_ns = 50,
50 },
51 .i2c[1] = {
52 .early_init = 1,
53 .speed = I2C_SPEED_FAST,
54 .rise_time_ns = 600,
55 .fall_time_ns = 400,
56 .data_hold_time_ns = 50,
57 },
58 .i2c[5] = {
59 .speed = I2C_SPEED_FAST,
60 .rise_time_ns = 650,
61 .fall_time_ns = 400,
62 .data_hold_time_ns = 50,
63 },
64 }"
65
David Wu0e112842023-11-14 17:21:49 +080066 register "power_limits_config[RPL_P_282_242_142_15W_CORE]" = "{
67 .tdp_pl1_override = 28,
68 .tdp_pl2_override = 55,
69 .tdp_pl4 = 114,
70 }"
71
David Wu305086c2022-05-09 01:37:12 +080072 device domain 0 on
Won Chungf860d5a2023-07-31 22:52:28 +000073 device ref igpu on
74 chip drivers/gfx/generic
75 register "device_count" = "6"
76 # DDIA for eDP
77 register "device[0].name" = ""LCD""
78 # DDIB for HDMI
79 register "device[1].name" = ""DD01""
80 # TCP0 (DP-1) for port C0
81 register "device[2].name" = ""DD02""
82 register "device[2].use_pld" = "true"
83 register "device[2].pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
84 # TCP1 (DP-2) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP1
85 register "device[3].name" = ""DD03""
86 # TCP2 (DP-3) for port C1
87 register "device[4].name" = ""DD04""
88 register "device[4].use_pld" = "true"
89 register "device[4].pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
90 # TCP3 (DP-4) is unused for any ports but still enumerated in the kernel, so GFX device is added for TCP3
91 register "device[5].name" = ""DD05""
92 device generic 0 on end
93 end
94 end # Integrated Graphics Device
David Wu305086c2022-05-09 01:37:12 +080095 device ref dtt on
96 chip drivers/intel/dptf
97 ## sensor information
98 register "options.tsr[0].desc" = ""DRAM""
99 register "options.tsr[1].desc" = ""Soc""
100 register "options.tsr[2].desc" = ""Charger""
101
102 # TODO: below values are initial reference values only
103 ## Active Policy
104 register "policies.active" = "{
105 [0] = {
106 .target = DPTF_CPU,
107 .thresholds = {
108 TEMP_PCT(85, 90),
109 TEMP_PCT(75, 80),
110 TEMP_PCT(68, 70),
111 TEMP_PCT(62, 60),
112 TEMP_PCT(55, 50),
113 TEMP_PCT(50, 40),
114 TEMP_PCT(40, 30),
115 }
116 },
117 [1] = {
118 .target = DPTF_TEMP_SENSOR_1,
119 .thresholds = {
120 TEMP_PCT(60, 90),
121 TEMP_PCT(55, 80),
122 TEMP_PCT(52, 70),
123 TEMP_PCT(48, 60),
124 TEMP_PCT(44, 50),
125 TEMP_PCT(40, 40),
126 TEMP_PCT(36, 30),
127 }
128 }
129 }"
130
131 ## Passive Policy
132 register "policies.passive" = "{
133 [0] = DPTF_PASSIVE(CPU, CPU, 90, 5000),
134 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 55, 5000),
135 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 55, 5000),
136 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 55, 5000),
137 }"
138
139 ## Critical Policy
140 register "policies.critical" = "{
141 [0] = DPTF_CRITICAL(CPU, 100, SHUTDOWN),
142 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 85, SHUTDOWN),
143 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 85, SHUTDOWN),
144 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 85, SHUTDOWN),
145 }"
146
147 register "controls.power_limits" = "{
148 .pl1 = {
149 .min_power = 18000,
150 .max_power = 20000,
151 .time_window_min = 28 * MSECS_PER_SEC,
152 .time_window_max = 32 * MSECS_PER_SEC,
153 .granularity = 200,
154 },
155 .pl2 = {
156 .min_power = 43000,
157 .max_power = 43000,
158 .time_window_min = 28 * MSECS_PER_SEC,
159 .time_window_max = 32 * MSECS_PER_SEC,
160 .granularity = 1000,
161 }
162 }"
163
164 ## Charger Performance Control (Control, mA)
165 register "controls.charger_perf" = "{
166 [0] = { 255, 1700 },
167 [1] = { 24, 1500 },
168 [2] = { 16, 1000 },
169 [3] = { 8, 500 }
170 }"
171
172 ## Fan Performance Control (Percent, Speed, Noise, Power)
173 register "controls.fan_perf" = "{
174 [0] = { 90, 6700, 220, 2200, },
175 [1] = { 80, 5800, 180, 1800, },
176 [2] = { 70, 5000, 145, 1450, },
177 [3] = { 60, 4900, 115, 1150, },
178 [4] = { 50, 3838, 90, 900, },
179 [5] = { 40, 2904, 55, 550, },
180 [6] = { 30, 2337, 30, 300, },
181 [7] = { 20, 1608, 15, 150, },
182 [8] = { 10, 800, 10, 100, },
183 [9] = { 0, 0, 0, 50, }
184 }"
185
186 ## Fan options
187 register "options.fan.fine_grained_control" = "1"
188 register "options.fan.step_size" = "2"
189
190 device generic 0 alias dptf_policy on end
191 end
192 end
193 device ref tbt_pcie_rp0 off end
194 device ref tbt_pcie_rp1 off end
195 device ref tbt_pcie_rp2 off end
196 device ref tcss_dma0 off end
197 device ref tcss_dma1 off end
198 device ref pcie4_0 on
199 # Enable CPU PCIE RP 1 using CLK 0
200 register "cpu_pcie_rp[CPU_RP(1)]" = "{
201 .clk_req = 0,
202 .clk_src = 0,
203 .flags = PCIE_RP_LTR | PCIE_RP_AER,
204 }"
205 end
206 device ref cnvi_wifi on
207 chip drivers/wifi/generic
208 register "wake" = "GPE0_PME_B0"
209 device generic 0 on end
210 end
211 end
212 device ref i2c0 on
213 chip drivers/i2c/nau8825
214 register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPP_A23)"
215 register "jkdet_enable" = "1"
216 register "jkdet_pull_enable" = "0"
217 register "jkdet_pull_up" = "0"
218 register "jkdet_polarity" = "1" # ActiveLow
219 register "vref_impedance" = "2" # 125kOhm
220 register "micbias_voltage" = "6" # 2.754
221 register "sar_threshold_num" = "4"
222 register "sar_threshold[0]" = "0x0C"
223 register "sar_threshold[1]" = "0x1C"
224 register "sar_threshold[2]" = "0x38"
225 register "sar_threshold[3]" = "0x60"
226 register "sar_hysteresis" = "1"
227 register "sar_voltage" = "6"
228 register "sar_compare_time" = "0" # 500ns
229 register "sar_sampling_time" = "0" # 2us
230 register "short_key_debounce" = "2" # 100ms
231 register "jack_insert_debounce" = "7" # 512ms
232 register "jack_eject_debounce" = "7" # 512ms
233 device i2c 1a on
234 probe AUDIO MAX98360_NAU88L25B_I2S
235 end
236 end
237 end #I2C0
238 device ref i2c1 on
239 chip drivers/i2c/tpm
240 register "hid" = ""GOOG0005""
241 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
242 device i2c 50 on end
243 end
244 end
245 device ref i2c5 on
246 chip drivers/i2c/generic
247 register "hid" = ""ELAN0000""
248 register "desc" = ""ELAN Touchpad""
249 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
250 register "wake" = "GPE0_DW2_14"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500251 register "detect" = "1"
David Wu305086c2022-05-09 01:37:12 +0800252 device i2c 15 on end
253 end
254 chip drivers/i2c/hid
Matt DeVilliere9f0ed52022-12-19 15:06:15 -0600255 register "generic.hid" = ""SYNA0000""
256 register "generic.cid" = ""ACPI0C50""
David Wu305086c2022-05-09 01:37:12 +0800257 register "generic.desc" = ""Synaptics Touchpad""
258 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
259 register "generic.wake" = "GPE0_DW2_14"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500260 register "generic.detect" = "1"
David Wu305086c2022-05-09 01:37:12 +0800261 register "hid_desc_reg_offset" = "0x20"
262 device i2c 0x2c on end
263 end
264 end
265 device ref hda on
266 chip drivers/generic/max98357a
267 register "hid" = ""MX98360A""
268 register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
269 register "sdmode_delay" = "5"
270 device generic 0 on
271 probe AUDIO MAX98360_NAU88L25B_I2S
272 end
273 end
Matt DeVillier3f3dc502023-01-17 13:44:23 -0600274 chip drivers/sof
275 register "spkr_tplg" = "max98360a"
276 register "jack_tplg" = "nau8825"
277 register "mic_tplg" = "_2ch_pdm0"
278 device generic 0 on end
279 end
David Wu305086c2022-05-09 01:37:12 +0800280 end
281 device ref pcie_rp6 off end # PCIE6 WWAN
282 device ref pcie_rp7 on
283 chip drivers/net
284 register "wake" = "GPE0_DW0_07"
285 register "led_feature" = "0xe0"
286 register "customized_led0" = "0x23f"
287 register "customized_led2" = "0x028"
288 register "enable_aspm_l1_2" = "1"
Kapil Porwal39f50422022-11-26 02:38:38 +0530289 register "add_acpi_dma_property" = "true"
Matt DeVillierf4938572023-11-01 18:50:25 -0500290 device generic 0 on end
David Wu305086c2022-05-09 01:37:12 +0800291 end
292 # Enable PCIE 7 using clk 6
293 register "pch_pcie_rp[PCH_RP(7)]" = "{
294 .clk_src = 6,
295 .clk_req = 6,
296 .flags = PCIE_RP_LTR | PCIE_RP_AER,
297 }"
298 end # RTL8125 Ethernet NIC
299 device ref pcie_rp8 off end # PCIE8 SD card
300 device ref pcie_rp9 off end # PCIE9-12 SSD
301 device ref gspi1 off end
302 device ref pch_espi on
303 chip ec/google/chromeec
304 use conn0 as mux_conn[0]
305 use conn1 as mux_conn[1]
306 device pnp 0c09.0 on end
307 end
308 end
309 device ref pmc hidden
310 chip drivers/intel/pmc_mux
311 device generic 0 on
312 chip drivers/intel/pmc_mux/conn
313 use usb2_port1 as usb2_port
314 use tcss_usb3_port1 as usb3_port
315 device generic 0 alias conn0 on end
316 end
317 chip drivers/intel/pmc_mux/conn
318 use usb2_port3 as usb2_port
319 use tcss_usb3_port3 as usb3_port
320 device generic 1 alias conn1 on end
321 end
322 end
323 end
324 end
325 device ref tcss_xhci on
326 chip drivers/usb/acpi
327 device ref tcss_root_hub on
328 chip drivers/usb/acpi
329 register "desc" = ""USB3 Type-C Port C0 (MLB)""
330 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
331 register "use_custom_pld" = "true"
332 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
Ron Lee558952a2022-12-13 19:48:59 +0800333 register "usb_lpm_incapable" = "true"
David Wu305086c2022-05-09 01:37:12 +0800334 device ref tcss_usb3_port1 on end
335 end
336 chip drivers/usb/acpi
337 register "desc" = ""USB3 Type-C Port C1 (MLB)""
338 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
339 register "use_custom_pld" = "true"
340 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
Ron Lee558952a2022-12-13 19:48:59 +0800341 register "usb_lpm_incapable" = "true"
David Wu305086c2022-05-09 01:37:12 +0800342 device ref tcss_usb3_port3 on end
343 end
344 end
345 end
346 end
347 device ref xhci on
348 chip drivers/usb/acpi
349 device ref xhci_root_hub on
350 chip drivers/usb/acpi
351 register "desc" = ""USB2 Type-C Port C0 (MLB)""
352 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
353 register "use_custom_pld" = "true"
354 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
355 device ref usb2_port1 on end
356 end
357 chip drivers/usb/acpi
358 register "desc" = ""USB2 Type-C Port C1 (MLB)""
359 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
360 register "use_custom_pld" = "true"
361 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, LEFT, ACPI_PLD_GROUP(2, 1))"
362 device ref usb2_port3 on end
363 end
364 chip drivers/usb/acpi
365 register "desc" = ""USB2 Camera""
366 register "type" = "UPC_TYPE_INTERNAL"
367 device ref usb2_port6 on end
368 end
369 chip drivers/usb/acpi
370 register "desc" = ""USB2 Type-A Port A0 (MLB)""
371 register "type" = "UPC_TYPE_A"
372 register "use_custom_pld" = "true"
373 register "custom_pld" = "ACPI_PLD_TYPE_A(LEFT, RIGHT, ACPI_PLD_GROUP(1, 2))"
374 device ref usb2_port9 on end
375 end
376 chip drivers/usb/acpi
377 register "desc" = ""USB2 Bluetooth""
378 register "type" = "UPC_TYPE_INTERNAL"
379 register "reset_gpio" =
380 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
381 device ref usb2_port10 on end
382 end
383 chip drivers/usb/acpi
384 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(LEFT, RIGHT, ACPI_PLD_GROUP(1, 2))"
388 device ref usb3_port1 on end
389 end
390 end
391 end
392 end
393 end
David Wueb327cb2022-04-15 16:11:51 +0800394end