blob: c12e9e21d95467ae3efb3ba9d0b20bf5ee211ff0 [file] [log] [blame]
David Wufba0ad82020-06-01 19:45:54 +08001chip soc/intel/tigerlake
Sheng-Liang Pan854848c2020-10-06 16:52:32 +08002 register "DdiPort1Hpd" = "0"
3 register "DdiPort2Hpd" = "0"
David Wua545d302020-09-04 20:50:12 +08004
5 register "power_limits_config[POWER_LIMITS_U_2_CORE]" = "{
6 .tdp_pl1_override = 18,
7 .tdp_pl2_override = 51,
8 .tdp_pl4 = 71,
9 }"
10 register "power_limits_config[POWER_LIMITS_U_4_CORE]" = "{
11 .tdp_pl1_override = 18,
12 .tdp_pl2_override = 51,
13 .tdp_pl4 = 105,
14 }"
15
John Zhao18a730d2021-01-01 14:51:04 -080016 register "usb2_ports[3]" = "USB2_PORT_TYPE_C(OC_SKIP)" # Type-A / Type-C Cl
17 register "usb2_ports[8]" = "USB2_PORT_TYPE_C(OC_SKIP)" # Type-A / Type-C C0
18
Sheng-Liang Pand3108d62020-10-21 11:16:08 +080019 # Disable SRCCLKREQ1#
20 register "PcieClkSrcUsage[1]" = "PCIE_CLK_NOTUSED"
21
David Wufba0ad82020-06-01 19:45:54 +080022 device domain 0 on
Duncan Laurieb0e169a2020-07-29 16:33:10 -070023 device ref dptf on
David Wua545d302020-09-04 20:50:12 +080024 chip drivers/intel/dptf
25 ## Active Policy
26 register "policies.active" = "{
27 [0] = {.target = DPTF_CPU,
Sheng-Liang Panc5395bc2020-11-23 16:06:44 +080028 .thresholds = {TEMP_PCT(98, 100),}},
David Wua545d302020-09-04 20:50:12 +080029 [1] = {.target = DPTF_TEMP_SENSOR_2,
30 .thresholds = {TEMP_PCT(64, 100),
31 TEMP_PCT(60, 90),
32 TEMP_PCT(56, 80),
33 TEMP_PCT(52, 70),
Sheng-Liang Panc5395bc2020-11-23 16:06:44 +080034 TEMP_PCT(47, 60),
35 TEMP_PCT(42, 50),
36 TEMP_PCT(35, 40),}}}"
David Wua545d302020-09-04 20:50:12 +080037
38 ## Passive Policy
39 register "policies.passive" = "{
40 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
41 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 65, 6000),
42 [2] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_0, 65, 6000),
Sheng-Liang Panc5395bc2020-11-23 16:06:44 +080043 [3] = DPTF_PASSIVE(CPU, TEMP_SENSOR_2, 52, 6000),
David Wua545d302020-09-04 20:50:12 +080044 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 65, 6000)}"
45
46 ## Critical Policy
47 register "policies.critical" = "{
48 [0] = DPTF_CRITICAL(CPU, 100, SHUTDOWN),
49 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 75, SHUTDOWN),
50 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 75, SHUTDOWN),
51 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 75, SHUTDOWN),
52 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 75, SHUTDOWN)}"
53
54 ## Power Limits Control
55 # 12-18W PL1 in 200mW increments, avg over 28-32s interval
56 # PL2 is fixed at 51W, avg over 28-32s interval
57 register "controls.power_limits" = "{
58 .pl1 = {.min_power = 12000,
59 .max_power = 18000,
60 .time_window_min = 28 * MSECS_PER_SEC,
61 .time_window_max = 32 * MSECS_PER_SEC,
62 .granularity = 200,},
Sheng-Liang Panc5395bc2020-11-23 16:06:44 +080063 .pl2 = {.min_power = 51000,
David Wua545d302020-09-04 20:50:12 +080064 .max_power = 51000,
65 .time_window_min = 28 * MSECS_PER_SEC,
66 .time_window_max = 32 * MSECS_PER_SEC,
67 .granularity = 1000,}}"
68
69 device generic 0 on end
70 end
Duncan Laurieb0e169a2020-07-29 16:33:10 -070071 end
Furquan Shaikhae20d4c2021-08-24 00:38:39 -070072
73 device ref tbt_pcie_rp0 on
74 probe DB_USB USB4_GEN3
75 end
76 device ref tbt_pcie_rp1 on
77 probe DB_USB USB4_GEN2
78 probe DB_USB USB4_GEN3
79 end
80 device ref tbt_dma0 on
81 probe DB_USB USB4_GEN2
82 probe DB_USB USB4_GEN3
83 chip drivers/intel/usb4/retimer
84 register "dfp[0].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H10)"
85 register "dfp[1].power_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H10)"
Derek Huang930df1a2022-05-03 14:28:06 +080086 use tcss_usb3_port1 as dfp[0].typec_port
Furquan Shaikhae20d4c2021-08-24 00:38:39 -070087 use tcss_usb3_port2 as dfp[1].typec_port
88 device generic 0 on end
89 end
90 end
91
Duncan Laurieb0e169a2020-07-29 16:33:10 -070092 device ref i2c0 on
David Wu7c040ad2020-06-23 20:33:46 +080093 chip drivers/i2c/generic
94 register "hid" = ""10EC5682""
95 register "name" = ""RT58""
96 register "desc" = ""Headset Codec""
97 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_F8)"
98 # Set the jd_src to RT5668_JD1 for jack detection
99 register "property_count" = "1"
100 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
101 register "property_list[0].name" = ""realtek,jd-src""
102 register "property_list[0].integer" = "1"
103 device i2c 1a on
104 end
105 end
106 chip drivers/i2c/max98373
107 register "vmon_slot_no" = "0"
108 register "imon_slot_no" = "1"
109 register "uid" = "0"
110 register "desc" = ""Right Speaker Amp""
111 register "name" = ""MAXR""
112 device i2c 31 on
113 end
114 end
115 chip drivers/i2c/max98373
116 register "vmon_slot_no" = "2"
117 register "imon_slot_no" = "3"
118 register "uid" = "1"
119 register "desc" = ""Left Speaker Amp""
120 register "name" = ""MAXL""
121 device i2c 32 on
122 end
123 end
Duncan Laurieb0e169a2020-07-29 16:33:10 -0700124 end
125 device ref i2c1 on
David Wu7c040ad2020-06-23 20:33:46 +0800126 chip drivers/i2c/hid
127 register "generic.hid" = ""GDIX0000""
128 register "generic.desc" = ""Goodix Touchscreen""
Karthikeyan Ramasubramanian029e7362020-11-10 13:41:31 -0700129 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E7_IRQ)"
Matt DeVillier0d54a652022-12-21 08:44:19 -0600130 register "generic.detect" = "1"
David Wu7c040ad2020-06-23 20:33:46 +0800131 register "generic.reset_gpio" =
132 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C10)"
133 register "generic.reset_delay_ms" = "120"
134 register "generic.reset_off_delay_ms" = "3"
135 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A8)"
136 register "generic.enable_delay_ms" = "12"
137 register "generic.has_power_resource" = "1"
138 register "hid_desc_reg_offset" = "0x01"
139 device i2c 14 on end
140 end
141 chip drivers/i2c/hid
142 register "generic.hid" = ""ELAN90FC""
143 register "generic.desc" = ""ELAN Touchscreen""
Karthikeyan Ramasubramanian029e7362020-11-10 13:41:31 -0700144 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E7_IRQ)"
Matt DeVillier0d54a652022-12-21 08:44:19 -0600145 register "generic.detect" = "1"
David Wu7c040ad2020-06-23 20:33:46 +0800146 register "generic.reset_gpio" =
147 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C10)"
148 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A8)"
149 register "generic.reset_delay_ms" = "20"
150 register "generic.has_power_resource" = "1"
151 register "generic.disable_gpio_export_in_crs" = "1"
152 register "hid_desc_reg_offset" = "0x01"
153 device i2c 10 on end
154 end
David Wu053b9722020-07-30 13:18:05 +0800155 chip drivers/i2c/generic
156 register "hid" = ""RAYD0001""
157 register "desc" = ""Raydium Touchscreen""
Matt DeVillier0bffd0a2022-12-21 08:42:09 -0600158 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E7_IRQ)"
Matt DeVillier0d54a652022-12-21 08:44:19 -0600159 register "detect" = "1"
David Wu053b9722020-07-30 13:18:05 +0800160 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C10)"
161 register "reset_delay_ms" = "1"
162 register "reset_off_delay_ms" = "2"
163 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A8)"
164 register "enable_delay_ms" = "10"
165 register "enable_off_delay_ms" = "1"
166 register "has_power_resource" = "1"
167 device i2c 39 on end
168 end
Sheng-Liang Panc87bcf42021-01-27 15:54:04 +0800169 chip drivers/generic/gpio_keys
170 register "name" = ""PENH""
171 # GPP_B3 is the IRQ source, and GPP_E1 is the wake source
172 register "gpio" = "ACPI_GPIO_INPUT_ACTIVE_LOW(GPP_B3)"
173 register "key.wake_gpe" = "GPE0_DW2_01"
174 register "key.wakeup_route" = "WAKEUP_ROUTE_SCI"
175 register "key.wakeup_event_action" = "EV_ACT_DEASSERTED"
176 register "key.dev_name" = ""EJCT""
177 register "key.linux_code" = "SW_PEN_INSERTED"
178 register "key.linux_input_type" = "EV_SW"
179 register "key.label" = ""pen_eject""
180 device generic 0 on end
181 end
Duncan Laurieb0e169a2020-07-29 16:33:10 -0700182 end
183 device ref i2c2 on
David Wu7c040ad2020-06-23 20:33:46 +0800184 chip drivers/i2c/sx9310
185 register "desc" = ""SAR0 Proximity Sensor""
186 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_F14_IRQ)"
187 register "speed" = "I2C_SPEED_FAST"
188 register "uid" = "0"
Gwendal Grignou689c25b2021-01-27 23:29:38 -0800189 register "cs0_ground" = "0x0"
Gwendal Grignou2f135a92021-03-22 12:59:02 -0700190 register "combined_sensors_count" = "2"
191 register "combined_sensors[0]" = "1"
192 register "combined_sensors[1]" = "2"
Gwendal Grignou689c25b2021-01-27 23:29:38 -0800193 register "resolution" = "SX9310_FINEST"
194 register "avg_pos_strength" = "512"
Gwendal Grignou2f135a92021-03-22 12:59:02 -0700195 register "startup_sensor" = "1"
Gwendal Grignou689c25b2021-01-27 23:29:38 -0800196 register "proxraw_strength" = "0"
David Wu7c040ad2020-06-23 20:33:46 +0800197 device i2c 28 on end
198 end
Duncan Laurieb0e169a2020-07-29 16:33:10 -0700199 end
200 device ref i2c5 on
David Wu7c040ad2020-06-23 20:33:46 +0800201 chip drivers/i2c/generic
202 register "hid" = ""ELAN0000""
203 register "desc" = ""ELAN Touchpad""
204 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_E15_IRQ)"
205 register "wake" = "GPE0_DW2_15"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500206 register "detect" = "1"
David Wu7c040ad2020-06-23 20:33:46 +0800207 device i2c 15 on end
208 end
Sheng-Liang Pan5c08c312020-12-07 15:47:19 +0800209 chip drivers/i2c/hid
Matt DeVillier74efac12022-12-19 15:17:37 -0600210 register "generic.hid" = ""SYNA0000""
211 register "generic.cid" = ""ACPI0C50""
Sheng-Liang Pan5c08c312020-12-07 15:47:19 +0800212 register "generic.desc" = ""Synaptics Touchpad""
213 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_E15_IRQ)"
214 register "generic.wake" = "GPE0_DW2_15"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500215 register "generic.detect" = "1"
Sheng-Liang Pan5c08c312020-12-07 15:47:19 +0800216 register "hid_desc_reg_offset" = "0x20"
217 device i2c 0x2c on end
218 end
Duncan Laurieb0e169a2020-07-29 16:33:10 -0700219 end
Tim Wawrzynczakeafe7982020-09-30 13:59:21 -0600220 device ref pch_espi on
221 chip ec/google/chromeec
222 use conn0 as mux_conn[0]
223 use conn1 as mux_conn[1]
224 device pnp 0c09.0 on end
225 end
226 end
Furquan Shaikhbf42db62021-08-24 13:16:35 -0700227 device ref hda on
228 probe AUDIO MAX98357_ALC5682I_I2S
229 probe AUDIO MAX98373_ALC5682I_I2S
230 probe AUDIO MAX98373_ALC5682_SNDW
231 probe AUDIO MAX98373_ALC5682I_I2S_UP4
232 probe AUDIO MAX98360_ALC5682I_I2S
Matt DeVillierba9f0c32022-12-20 12:35:05 -0600233 probe AUDIO RT1011_ALC5682I_I2S
Furquan Shaikhbf42db62021-08-24 13:16:35 -0700234 end
Duncan Lauriee1490e52020-10-10 00:50:32 +0000235 device ref pcie_rp9 on
236 chip soc/intel/common/block/pcie/rtd3
237 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B2)"
238 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A11)"
239 register "srcclk_pin" = "0"
240 device generic 0 on end
241 end
242 end
Duncan Laurieb0e169a2020-07-29 16:33:10 -0700243 device ref pmc hidden
David Wu7c040ad2020-06-23 20:33:46 +0800244 # The pmc_mux chip driver is a placeholder for the
245 # PMC.MUX device in the ACPI hierarchy.
246 chip drivers/intel/pmc_mux
247 device generic 0 on
Patrick Georgi8008c532020-07-06 09:23:20 +0200248 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100249 use usb2_port9 as usb2_port
250 use tcss_usb3_port1 as usb3_port
David Wu7c040ad2020-06-23 20:33:46 +0800251 # SBU is fixed, HSL follows CC
252 register "sbu_orientation" = "TYPEC_ORIENTATION_NORMAL"
Tim Wawrzynczakeafe7982020-09-30 13:59:21 -0600253 device generic 0 alias conn0 on end
David Wu7c040ad2020-06-23 20:33:46 +0800254 end
Patrick Georgi8008c532020-07-06 09:23:20 +0200255 chip drivers/intel/pmc_mux/conn
Reka Normand448f8c2021-12-09 12:09:27 +1100256 use usb2_port4 as usb2_port
257 use tcss_usb3_port2 as usb3_port
David Wu7c040ad2020-06-23 20:33:46 +0800258 # SBU is fixed, HSL follows CC
259 register "sbu_orientation" = "TYPEC_ORIENTATION_NORMAL"
Tim Wawrzynczakeafe7982020-09-30 13:59:21 -0600260 device generic 1 alias conn1 on end
David Wu7c040ad2020-06-23 20:33:46 +0800261 end
262 end
263 end
Duncan Laurieb0e169a2020-07-29 16:33:10 -0700264 end
Duncan Laurief78ade32020-10-27 11:06:02 -0700265 device ref north_xhci on
266 chip drivers/usb/acpi
267 device ref tcss_root_hub on
268 chip drivers/usb/acpi
269 register "desc" = ""USB3 Type-C Port C0 (MLB)""
270 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
271 register "group" = "ACPI_PLD_GROUP(3, 2)"
272 device ref tcss_usb3_port1 on end
273 end
274 chip drivers/usb/acpi
275 register "desc" = ""USB3 Type-C Port C1 (MLB)""
276 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
277 register "group" = "ACPI_PLD_GROUP(2, 2)"
278 device ref tcss_usb3_port2 on end
279 end
280 end
281 end
282 end
283 device ref south_xhci on
284 chip drivers/usb/acpi
285 device ref xhci_root_hub on
286 chip drivers/usb/acpi
287 register "desc" = ""USB2 Type-A Port A1 (DB)""
288 register "type" = "UPC_TYPE_A"
289 register "group" = "ACPI_PLD_GROUP(1, 1)"
290 device ref usb2_port2 on
291 probe DB_USB USB4_GEN3
292 end
293 end
294 chip drivers/usb/acpi
295 register "desc" = ""USB2 Type-C Port C1 (MLB)""
296 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
297 register "group" = "ACPI_PLD_GROUP(2, 1)"
298 device ref usb2_port4 on end
299 end
300 chip drivers/usb/acpi
301 register "desc" = ""USB2 Camera""
302 register "type" = "UPC_TYPE_INTERNAL"
303 device ref usb2_port5 on end
304 end
305 chip drivers/usb/acpi
306 register "desc" = ""USB2 Type-C Port C0 (MLB)""
307 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
308 register "group" = "ACPI_PLD_GROUP(3, 1)"
309 device ref usb2_port9 on end
310 end
311 chip drivers/usb/acpi
312 register "desc" = ""USB2 Bluetooth""
313 register "type" = "UPC_TYPE_INTERNAL"
314 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A13)"
315 device ref usb2_port10 on end
316 end
317 chip drivers/usb/acpi
318 register "desc" = ""USB3 Type-A Port A1 (DB)""
319 register "type" = "UPC_TYPE_USB3_A"
320 register "group" = "ACPI_PLD_GROUP(1, 2)"
321 device ref usb3_port2 on
322 probe DB_USB USB4_GEN3
323 end
324 end
325 end
326 end
327 end
David Wufba0ad82020-06-01 19:45:54 +0800328 end
329end