blob: 0ea78ea76e8c8529c8ce404fa4daea680ddffa35 [file] [log] [blame]
Reka Normanb63d5f82022-02-07 09:35:22 +11001fw_config
2 field DB_USB 0 1
3 option DB_NONE 0
4 option DB_1C_1A 1
5 option DB_1A_HDMI 3
6 end
7end
8
Reka Normane7640cc2021-12-20 10:24:55 +11009chip soc/intel/alderlake
MAULIK V VAGHELA215a97e2022-03-07 18:39:17 +053010 register "sagv" = "SaGv_Enabled"
Reka Normanb63d5f82022-02-07 09:35:22 +110011
Reka Norman390c3f22022-03-30 12:44:24 +110012 # Bit 0 - C0 has no redriver, so enable SBU muxing in the SoC.
13 # Bit 2 - C1 has a redriver which does SBU muxing.
14 # Bit 1,3 - AUX lines are not swapped on the motherboard for either C0 or C1.
15 register "tcss_aux_ori" = "1"
16
Reka Normanb63d5f82022-02-07 09:35:22 +110017 register "typec_aux_bias_pads[0]" = "{.pad_auxp_dc = GPP_E22, .pad_auxn_dc = GPP_E23}"
Reka Normanb63d5f82022-02-07 09:35:22 +110018
19 register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # WFC
Reka Normana909c7f2022-03-04 13:18:50 +110020 register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth port for PCIe WLAN
Reka Normanb63d5f82022-02-07 09:35:22 +110021
V Sowmyafe97ad32022-05-17 14:14:39 +053022 # Configure external V1P05/Vnn/VnnSx Rails
23 register "ext_fivr_settings" = "{
24 .configure_ext_fivr = 1,
25 .v1p05_enable_bitmap = FIVR_ENABLE_ALL_SX,
26 .vnn_enable_bitmap = FIVR_ENABLE_ALL_SX,
27 .vnn_sx_enable_bitmap = FIVR_ENABLE_ALL_SX,
28 .v1p05_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL,
29 .vnn_supported_voltage_bitmap = FIVR_VOLTAGE_MIN_ACTIVE,
30 .v1p05_voltage_mv = 1050,
31 .vnn_voltage_mv = 780,
32 .vnn_sx_voltage_mv = 1050,
33 .v1p05_icc_max_ma = 500,
34 .vnn_icc_max_ma = 500,
35 }"
36
Reka Norman69c9b012022-06-03 16:31:09 +100037 # Intel Common SoC Config
38 #+-------------------+---------------------------+
39 #| Field | Value |
40 #+-------------------+---------------------------+
41 #| I2C0 | TPM. Early init is |
42 #| | required to set up a BAR |
43 #| | for TPM communication |
44 #| I2C1 | Touchscreen |
45 #| I2C2 | Sub-board(PSensor)/WCAM |
46 #| I2C3 | Audio |
47 #| I2C5 | Trackpad |
48 #+-------------------+---------------------------+
49 register "common_soc_config" = "{
50 .i2c[0] = {
51 .early_init = 1,
52 .speed = I2C_SPEED_FAST,
53 .speed_config[0] = {
54 .speed = I2C_SPEED_FAST,
55 .scl_lcnt = 158,
56 .scl_hcnt = 79,
57 .sda_hold = 7,
58 }
59 },
60 .i2c[1] = {
61 .speed = I2C_SPEED_FAST,
62 .speed_config[0] = {
63 .speed = I2C_SPEED_FAST,
64 .scl_lcnt = 160,
65 .scl_hcnt = 79,
66 .sda_hold = 7,
67 }
68 },
69 .i2c[3] = {
70 .speed = I2C_SPEED_FAST,
71 .speed_config[0] = {
72 .speed = I2C_SPEED_FAST,
73 .scl_lcnt = 157,
74 .scl_hcnt = 79,
75 .sda_hold = 7,
76 }
77 },
78 .i2c[5] = {
79 .speed = I2C_SPEED_FAST,
80 .speed_config[0] = {
81 .speed = I2C_SPEED_FAST,
82 .scl_lcnt = 152,
83 .scl_hcnt = 79,
84 .sda_hold = 7,
85 }
86 },
87 }"
88
Reka Normanb63d5f82022-02-07 09:35:22 +110089 device domain 0 on
Vidya Gopalakrishnan295a7502022-05-18 18:38:38 +053090 device ref dtt on
91 chip drivers/intel/dptf
92 ## sensor information
93 register "options.tsr[0].desc" = ""Memory""
94 register "options.tsr[1].desc" = ""Charger""
95 register "options.tsr[2].desc" = ""Ambient""
96
97 # TODO: below values are initial reference values only
98 ## Passive Policy
99 register "policies.passive" = "{
100 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
101 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 75, 5000),
102 [2] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_1, 75, 5000),
103 [3] = DPTF_PASSIVE(CPU, TEMP_SENSOR_2, 75, 5000),
104 }"
105
106 ## Critical Policy
107 register "policies.critical" = "{
108 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
109 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 85, SHUTDOWN),
110 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 85, SHUTDOWN),
111 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 85, SHUTDOWN),
112 }"
113
114 register "controls.power_limits" = "{
115 .pl1 = {
116 .min_power = 3000,
117 .max_power = 6000,
118 .time_window_min = 28 * MSECS_PER_SEC,
119 .time_window_max = 32 * MSECS_PER_SEC,
120 .granularity = 200
121 },
122 .pl2 = {
123 .min_power = 25000,
124 .max_power = 25000,
125 .time_window_min = 28 * MSECS_PER_SEC,
126 .time_window_max = 32 * MSECS_PER_SEC,
127 .granularity = 1000
128 }
129 }"
130
131 ## Charger Performance Control (Control, mA)
132 register "controls.charger_perf" = "{
133 [0] = { 255, 1700 },
134 [1] = { 24, 1500 },
135 [2] = { 16, 1000 },
136 [3] = { 8, 500 }
137 }"
138
139 device generic 0 on end
140 end
141 end
Reka Normanb63d5f82022-02-07 09:35:22 +1100142 device ref i2c1 on
143 chip drivers/i2c/hid
144 register "generic.hid" = ""GDIX0000""
145 register "generic.desc" = ""Goodix Touchscreen""
146 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
147 register "generic.probed" = "1"
148 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
149 register "generic.enable_delay_ms" = "20"
150 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
151 register "generic.reset_delay_ms" = "180"
152 register "generic.reset_off_delay_ms" = "3"
153 register "generic.stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
154 register "generic.stop_off_delay_ms" = "1"
155 register "generic.has_power_resource" = "1"
156 register "hid_desc_reg_offset" = "0x01"
157 device i2c 5d on end
158 end
Reka Norman07bb7832022-04-05 19:28:17 +1000159 chip drivers/generic/gpio_keys
160 register "name" = ""PENH""
161 register "gpio" = "ACPI_GPIO_INPUT_ACTIVE_LOW(GPP_F13)"
162 register "key.wake_gpe" = "GPE0_DW2_15"
163 register "key.wakeup_route" = "WAKEUP_ROUTE_SCI"
Eric Lai8698a6f2022-05-20 09:08:35 +0800164 register "key.wakeup_event_action" = "EV_ACT_ANY"
Reka Norman07bb7832022-04-05 19:28:17 +1000165 register "key.dev_name" = ""EJCT""
166 register "key.linux_code" = "SW_PEN_INSERTED"
167 register "key.linux_input_type" = "EV_SW"
168 register "key.label" = ""pen_eject""
169 device generic 0 on end
170 end
Reka Normanb63d5f82022-02-07 09:35:22 +1100171 end
172 device ref i2c3 on
173 chip drivers/i2c/generic
174 register "hid" = ""RTL5682""
175 register "name" = ""RT58""
176 register "desc" = ""Headset Codec""
177 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
178 # Set the jd_src to RT5668_JD1 for jack detection
179 register "property_count" = "1"
180 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
181 register "property_list[0].name" = ""realtek,jd-src""
182 register "property_list[0].integer" = "1"
183 device i2c 1a on end
184 end
185 chip drivers/generic/alc1015
186 register "hid" = ""RTL1019""
187 register "sdb" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
188 device generic 0 on end
189 end
190 end
191 device ref i2c5 on
192 chip drivers/i2c/generic
193 register "hid" = ""ELAN0000""
194 register "desc" = ""ELAN Touchpad""
195 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
196 register "wake" = "GPE0_DW2_14"
197 register "probed" = "1"
198 device i2c 15 on end
199 end
200 end
201 device ref pcie_rp4 on
202 # PCIe 4 WLAN
203 register "pch_pcie_rp[PCH_RP(4)]" = "{
204 .clk_src = 2,
205 .clk_req = 2,
206 .flags = PCIE_RP_LTR | PCIE_RP_AER,
207 }"
208 chip drivers/wifi/generic
209 register "wake" = "GPE0_DW1_03"
210 device pci 00.0 on end
211 end
212 chip soc/intel/common/block/pcie/rtd3
213 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B11)"
214 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_H20)"
215 register "srcclk_pin" = "2"
216 device generic 0 on end
217 end
218 end
219 device ref pch_espi on
220 chip ec/google/chromeec
221 use conn0 as mux_conn[0]
222 use conn1 as mux_conn[1]
223 device pnp 0c09.0 on end
224 end
225 end
226 device ref pmc hidden
227 chip drivers/intel/pmc_mux
228 device generic 0 on
229 chip drivers/intel/pmc_mux/conn
230 use usb2_port1 as usb2_port
231 use tcss_usb3_port1 as usb3_port
232 device generic 0 alias conn0 on end
233 end
234 chip drivers/intel/pmc_mux/conn
235 use usb2_port2 as usb2_port
236 use tcss_usb3_port2 as usb3_port
Reka Normancb511892022-03-30 13:23:32 +1100237 device generic 1 alias conn1 on
238 probe DB_USB DB_1C_1A
239 end
Reka Normanb63d5f82022-02-07 09:35:22 +1100240 end
241 end
242 end
243 end
244 device ref tcss_xhci on
245 chip drivers/usb/acpi
246 device ref tcss_root_hub on
247 chip drivers/usb/acpi
248 register "desc" = ""USB3 Type-C Port C0 (MLB)""
249 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung83055932022-05-25 16:50:57 +0000250 register "use_custom_pld" = "true"
251 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100252 device ref tcss_usb3_port1 on end
253 end
254 chip drivers/usb/acpi
255 register "desc" = ""USB3 Type-C Port C1 (DB)""
256 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung83055932022-05-25 16:50:57 +0000257 register "use_custom_pld" = "true"
258 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(2, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100259 device ref tcss_usb3_port2 on end
260 end
261 end
262 end
263 end
264 device ref xhci on
265 chip drivers/usb/acpi
266 device ref xhci_root_hub on
267 chip drivers/usb/acpi
268 register "desc" = ""USB2 Type-C Port C0 (MLB)""
269 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung83055932022-05-25 16:50:57 +0000270 register "use_custom_pld" = "true"
271 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100272 device ref usb2_port1 on end
273 end
274 chip drivers/usb/acpi
275 register "desc" = ""USB2 Type-C Port C1 (DB)""
276 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
Won Chung83055932022-05-25 16:50:57 +0000277 register "use_custom_pld" = "true"
278 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(2, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100279 device ref usb2_port2 on
280 probe DB_USB DB_1C_1A
281 end
282 end
283 chip drivers/usb/acpi
284 register "desc" = ""USB2 Type-A Port A0 (MLB)""
285 register "type" = "UPC_TYPE_A"
Won Chung83055932022-05-25 16:50:57 +0000286 register "use_custom_pld" = "true"
287 register "custom_pld" = "ACPI_PLD_TYPE_A(LEFT, RIGHT, ACPI_PLD_GROUP(3, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100288 device ref usb2_port3 on end
289 end
290 chip drivers/usb/acpi
291 register "desc" = ""USB2 Type-A Port A1 (DB)""
292 register "type" = "UPC_TYPE_A"
Won Chung83055932022-05-25 16:50:57 +0000293 register "use_custom_pld" = "true"
294 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100295 device ref usb2_port4 on end
296 end
297 chip drivers/usb/acpi
298 register "desc" = ""USB2 UFC""
299 register "type" = "UPC_TYPE_INTERNAL"
300 device ref usb2_port6 on end
301 end
302 chip drivers/usb/acpi
303 register "desc" = ""USB2 WFC""
304 register "type" = "UPC_TYPE_INTERNAL"
305 device ref usb2_port7 on end
306 end
307 chip drivers/usb/acpi
308 register "desc" = ""USB2 Bluetooth""
309 register "type" = "UPC_TYPE_INTERNAL"
310 register "reset_gpio" =
311 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
312 device ref usb2_port8 on end
313 end
314 chip drivers/usb/acpi
315 register "desc" = ""USB3 Type-A Port A0 (MLB)""
316 register "type" = "UPC_TYPE_USB3_A"
Won Chung83055932022-05-25 16:50:57 +0000317 register "use_custom_pld" = "true"
318 register "custom_pld" = "ACPI_PLD_TYPE_A(LEFT, RIGHT, ACPI_PLD_GROUP(3, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100319 device ref usb3_port1 on end
320 end
321 chip drivers/usb/acpi
322 register "desc" = ""USB3 Type-A Port A1 (DB)""
323 register "type" = "UPC_TYPE_USB3_A"
Won Chung83055932022-05-25 16:50:57 +0000324 register "use_custom_pld" = "true"
325 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
Reka Normanb63d5f82022-02-07 09:35:22 +1100326 device ref usb3_port2 on end
327 end
328 end
329 end
330 end
331 end
Reka Normane7640cc2021-12-20 10:24:55 +1100332end