blob: 484a6327f2766ed9bf3ec1fa590af54319d3b52b [file] [log] [blame]
Frank Chu8d4cb092022-11-08 14:06:21 +08001fw_config
Frank Chufa93c5b2022-11-30 18:14:40 +08002 field KB_BL 0 0
Frank Chu8d4cb092022-11-08 14:06:21 +08003 option KB_BL_ABSENT 0
4 option KB_BL_PRESENT 1
5 end
Frank Chufa93c5b2022-11-30 18:14:40 +08006 field AUDIO 1 3
Frank Chu8d4cb092022-11-08 14:06:21 +08007 option AUDIO_UNKNOWN 0
8 option ALC1019_ALC5682I_VD_I2S 1
9 option ALC1019_ALC5682I_VS_I2S 2
10 end
Frank Chufa93c5b2022-11-30 18:14:40 +080011 field UFC 4 4
12 option UFC_USB 0
13 option UFC_MIPI 1
Frank Chu8d4cb092022-11-08 14:06:21 +080014 end
15 field STORAGE 30 31
Frank Chu88019dd2022-11-18 16:39:36 +080016 option STORAGE_UNKNOWN 0
17 option STORAGE_NVME 1
18 option STORAGE_UFS 2
Frank Chu8d4cb092022-11-08 14:06:21 +080019 end
20end
21
Frank Chu502dc542022-11-01 11:35:06 +080022chip soc/intel/alderlake
23
Frank Chu8d4cb092022-11-08 14:06:21 +080024 # Intel Common SoC Config
25 #+-------------------+---------------------------+
26 #| Field | Value |
27 #+-------------------+---------------------------+
28 #| GSPI1 | Fingerprint MCU |
29 #| I2C0 | Audio |
30 #| I2C1 | cr50 TPM. Early init is |
31 #| | required to set up a BAR |
32 #| | for TPM communication |
33 #| I2C3 | TouchScreen |
34 #| I2C5 | Trackpad |
35 #+-------------------+---------------------------+
36 register "common_soc_config" = "{
37 .i2c[0] = {
38 .speed = I2C_SPEED_FAST,
Frank Chuf99f3082022-12-02 11:19:03 +080039 .rise_time_ns = 650,
40 .fall_time_ns = 400,
41 .data_hold_time_ns = 50,
Frank Chu8d4cb092022-11-08 14:06:21 +080042 },
43 .i2c[1] = {
44 .early_init = 1,
45 .speed = I2C_SPEED_FAST,
Frank Chuf99f3082022-12-02 11:19:03 +080046 .rise_time_ns = 600,
47 .fall_time_ns = 400,
48 .data_hold_time_ns = 50,
Frank Chu8d4cb092022-11-08 14:06:21 +080049 },
50 .i2c[3] = {
51 .speed = I2C_SPEED_FAST,
Frank Chuf99f3082022-12-02 11:19:03 +080052 .rise_time_ns = 650,
53 .fall_time_ns = 400,
54 .data_hold_time_ns = 50,
Frank Chu8d4cb092022-11-08 14:06:21 +080055 },
56 .i2c[5] = {
57 .speed = I2C_SPEED_FAST,
Frank Chuf99f3082022-12-02 11:19:03 +080058 .rise_time_ns = 650,
59 .fall_time_ns = 400,
60 .data_hold_time_ns = 50,
Frank Chu8d4cb092022-11-08 14:06:21 +080061 },
62 }"
63 register "sagv" = "SaGv_Enabled"
Frank Chu68bbbf82022-12-02 11:38:44 +080064
65 register "ext_fivr_settings" = "{
66 .configure_ext_fivr = 1,
67 .v1p05_enable_bitmap = FIVR_ENABLE_ALL_SX,
68 .vnn_enable_bitmap = FIVR_ENABLE_ALL_SX,
69 .v1p05_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL |
70 FIVR_VOLTAGE_MIN_ACTIVE |
71 FIVR_VOLTAGE_MIN_RETENTION,
72 .vnn_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL |
73 FIVR_VOLTAGE_MIN_ACTIVE |
74 FIVR_VOLTAGE_MIN_RETENTION,
75 .v1p05_icc_max_ma = 500,
76 .vnn_sx_voltage_mv = 1250,
77 }"
Frank Chu8d4cb092022-11-08 14:06:21 +080078 register "serial_io_i2c_mode" = "{
Frank Chu891e6c32022-12-02 13:49:06 +080079 [PchSerialIoIndexI2C0] = PchSerialIoPci,
80 [PchSerialIoIndexI2C1] = PchSerialIoPci,
Frank Chu8d4cb092022-11-08 14:06:21 +080081 [PchSerialIoIndexI2C2] = PchSerialIoDisabled,
Frank Chu891e6c32022-12-02 13:49:06 +080082 [PchSerialIoIndexI2C3] = PchSerialIoPci,
83 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
84 [PchSerialIoIndexI2C5] = PchSerialIoPci,
Frank Chu8d4cb092022-11-08 14:06:21 +080085 }"
Frank Chu502dc542022-11-01 11:35:06 +080086
Frank Chu8d4cb092022-11-08 14:06:21 +080087 register "usb2_ports[0]" = "USB2_PORT_TYPE_C(OC0)" # USB2_C0
88 register "usb2_ports[1]" = "USB2_PORT_EMPTY" # Disable USB2_Port 1
89 register "usb2_ports[2]" = "USB2_PORT_TYPE_C(OC1)" # USB2_C2
90 register "usb2_ports[3]" = "USB2_PORT_MID(OC2)" # Type-A Port A1
91 register "usb2_ports[4]" = "USB2_PORT_EMPTY" # Disable USB2 Port 4
92 register "usb2_ports[5]" = "USB2_PORT_MID(OC_SKIP)" # M.2 Camera
93 register "usb2_ports[6]" = "USB2_PORT_EMPTY" # Disable USB2 Port 6
94 register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # DCI port
95 register "usb2_ports[8]" = "USB2_PORT_MID(OC3)" # Type-A Port A0
96 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # M.2 Bluetooth
97
98 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC3)" # USB3/2 Type A port A0
99 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # DCI port
100 register "usb3_ports[2]" = "USB3_PORT_EMPTY" # Disable USB3 Port 2
101 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC2)" # USB3/2 Type A port A1
102
103 register "tcss_ports[0]" = "TCSS_PORT_DEFAULT(OC0)"
104 register "tcss_ports[1]" = "TCSS_PORT_EMPTY"
105 register "tcss_ports[2]" = "TCSS_PORT_DEFAULT(OC1)"
106
107 device domain 0 on
108 device ref i2c0 on
109 chip drivers/i2c/generic
110 register "hid" = ""10EC5682""
111 register "name" = ""RT58""
112 register "desc" = ""Headset Codec""
113 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
114 # Set the jd_src to RT5668_JD1 for jack detection
115 register "property_count" = "1"
116 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
117 register "property_list[0].name" = ""realtek,jd-src""
118 register "property_list[0].integer" = "1"
119 device i2c 1a on
120 probe AUDIO AUDIO_UNKNOWN
121 probe AUDIO ALC1019_ALC5682I_VD_I2S
122 end
123 end
124 chip drivers/i2c/generic
125 register "hid" = ""RTL5682""
126 register "name" = ""RT58""
127 register "desc" = ""Headset Codec""
128 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
129 # Set the jd_src to RT5668_JD1 for jack detection
130 register "property_count" = "1"
131 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
132 register "property_list[0].name" = ""realtek,jd-src""
133 register "property_list[0].integer" = "1"
134 device i2c 1a on
135 probe AUDIO ALC1019_ALC5682I_VS_I2S
136 end
137 end
138 chip drivers/generic/alc1015
139 register "hid" = ""RTL1019""
140 register "sdb" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_A11)"
141 device generic 1 on end
142 end
143 end #I2C0
144 device ref i2c1 on
145 chip drivers/i2c/tpm
146 register "hid" = ""GOOG0005""
147 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
148 device i2c 50 on end
149 end
150 end #I2C1
Frank Chufb431072022-11-11 15:20:25 +0800151 device ref i2c3 on
Frank Chude4727a2022-12-07 12:38:46 +0800152 chip drivers/i2c/generic
153 register "hid" = ""ELAN0001""
154 register "desc" = ""ELAN Touchscreen""
155 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
156 register "probed" = "1"
157 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
158 register "reset_delay_ms" = "300"
159 register "reset_off_delay_ms" = "1"
160 register "enable_gpio" =
Frank Chufb431072022-11-11 15:20:25 +0800161 "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
Frank Chude4727a2022-12-07 12:38:46 +0800162 register "enable_delay_ms" = "6"
163 register "stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
164 register "stop_off_delay_ms" = "1"
165 register "has_power_resource" = "1"
Frank Chufb431072022-11-11 15:20:25 +0800166 device i2c 10 on end
167 end
168 end #I2C3
169 device ref i2c5 on
Frank Chu4e37a8d2022-12-07 12:34:51 +0800170 chip drivers/i2c/hid
171 register "generic.hid" = ""PIXA2342""
172 register "generic.desc" = ""PIXA Touchpad""
173 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
174 register "generic.wake" = "GPE0_DW2_14"
175 register "hid_desc_reg_offset" = "0x1"
Frank Chufb431072022-11-11 15:20:25 +0800176 device i2c 15 on end
177 end
178 end #I2C5
Frank Chu00298402022-12-07 12:43:00 +0800179 device ref pcie_rp5 on
180 # Enable wlan PCIe 5 using clk 2
181 register "pch_pcie_rp[PCH_RP(5)]" = "{
182 .clk_src = 2,
183 .clk_req = 2,
184 .flags = PCIE_RP_LTR | PCIE_RP_AER,
185 }"
186 chip drivers/wifi/generic
187 register "wake" = "GPE0_DW1_03"
188 device pci 00.0 on end
189 end
190 chip soc/intel/common/block/pcie/rtd3
191 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_B11)"
192 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_H20)"
193 register "srcclk_pin" = "2"
194 device generic 0 on end
195 end
196 end
Frank Chu93197d22022-12-12 15:23:19 +0800197 device ref pcie_rp8 off end
Frank Chu8d4cb092022-11-08 14:06:21 +0800198 device ref pcie_rp11 on
199 # Enable NVMe SSD PCIe 11-12 using clk 1
200 register "pch_pcie_rp[PCH_RP(11)]" = "{
201 .clk_src = 1,
202 .clk_req = 1,
203 .flags = PCIE_RP_LTR | PCIE_RP_AER,
204 }"
Frank Chu88019dd2022-11-18 16:39:36 +0800205 probe STORAGE STORAGE_UNKNOWN
Frank Chu8d4cb092022-11-08 14:06:21 +0800206 probe STORAGE STORAGE_NVME
207 end
208 device ref ish on
209 probe STORAGE STORAGE_UFS
210 end
211 device ref ufs on
212 probe STORAGE STORAGE_UFS
213 end
214 device ref gspi1 on
215 chip drivers/spi/acpi
216 register "name" = ""CRFP""
217 register "hid" = "ACPI_DT_NAMESPACE_HID"
218 register "uid" = "1"
219 register "compat_string" = ""google,cros-ec-spi""
220 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F15_IRQ)"
221 register "wake" = "GPE0_DW2_15"
222 register "has_power_resource" = "1"
223 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D1)"
224 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D2)"
225 register "enable_delay_ms" = "3"
226 device spi 0 on end
227 end # FPMCU
228 end
Frank Chua9921bc2022-11-18 16:28:31 +0800229 device ref pch_espi on
230 chip ec/google/chromeec
231 use conn0 as mux_conn[0]
232 use conn1 as mux_conn[1]
233 device pnp 0c09.0 on end
234 end
235 end
Frank Chu8d4cb092022-11-08 14:06:21 +0800236 device ref pmc hidden
237 chip drivers/intel/pmc_mux
238 device generic 0 on
239 chip drivers/intel/pmc_mux/conn
240 use usb2_port1 as usb2_port
241 use tcss_usb3_port1 as usb3_port
242 device generic 0 alias conn0 on end
243 end
244 chip drivers/intel/pmc_mux/conn
245 use usb2_port3 as usb2_port
246 use tcss_usb3_port3 as usb3_port
Frank Chua9921bc2022-11-18 16:28:31 +0800247 device generic 1 alias conn1 on end
Frank Chu8d4cb092022-11-08 14:06:21 +0800248 end
249 end
250 end
251 end
252 device ref tcss_xhci on
253 chip drivers/usb/acpi
254 device ref tcss_root_hub on
255 chip drivers/usb/acpi
256 register "desc" = ""USB3 Type-C Port C0 (MLB)""
257 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
258 register "use_custom_pld" = "true"
259 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 1))"
260 device ref tcss_usb3_port1 on end
261 end
262 chip drivers/usb/acpi
263 register "desc" = ""USB3 Type-C Port C2 (DB)""
264 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
265 register "use_custom_pld" = "true"
266 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
267 device ref tcss_usb3_port3 on end
268 end
269 end
270 end
271 end
272 device ref xhci on
273 chip drivers/usb/acpi
274 device ref xhci_root_hub on
275 chip drivers/usb/acpi
276 register "desc" = ""USB2 Type-C Port C0 (MLB)""
277 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
278 register "use_custom_pld" = "true"
279 register "custom_pld" = "ACPI_PLD_TYPE_C(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 1))"
280 device ref usb2_port1 on end
281 end
282 chip drivers/usb/acpi
283 register "desc" = ""USB2 Type-C Port C2 (DB)""
284 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
285 register "use_custom_pld" = "true"
286 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(3, 1))"
287 device ref usb2_port3 on end
288 end
289 chip drivers/usb/acpi
290 register "desc" = ""USB2 Type-A Port A1 (MLB)""
291 register "type" = "UPC_TYPE_A"
292 register "use_custom_pld" = "true"
293 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(2, 2))"
294 device ref usb2_port4 on end
295 end
296 chip drivers/usb/acpi
297 register "desc" = ""USB2 Camera""
298 register "type" = "UPC_TYPE_INTERNAL"
299 device ref usb2_port6 on end
300 end
301 chip drivers/usb/acpi
302 register "desc" = ""USB2 Type-A Port A0 (MLB)""
303 register "type" = "UPC_TYPE_A"
304 register "use_custom_pld" = "true"
305 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
306 device ref usb2_port9 on end
307 end
308 chip drivers/usb/acpi
309 register "desc" = ""USB2 Bluetooth""
310 register "type" = "UPC_TYPE_INTERNAL"
311 register "reset_gpio" =
312 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
313 device ref usb2_port10 on end
314 end
315 chip drivers/usb/acpi
316 register "desc" = ""USB3 Type-A Port A0 (MLB)""
317 register "type" = "UPC_TYPE_USB3_A"
318 register "use_custom_pld" = "true"
319 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(1, 2))"
320 device ref usb3_port1 on end
321 end
322 chip drivers/usb/acpi
323 register "desc" = ""USB3 Type-A Port A1 (MLB)""
324 register "type" = "UPC_TYPE_USB3_A"
325 register "use_custom_pld" = "true"
326 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, RIGHT, ACPI_PLD_GROUP(2, 2))"
327 device ref usb3_port4 on end
328 end
329 end
330 end
331 end
332 end
Frank Chu502dc542022-11-01 11:35:06 +0800333end