blob: 86e4b69fbcb2e2536fc4b7500b7f475e0ff28e79 [file] [log] [blame]
Kevin Chiue63049f2022-10-06 17:38:23 +08001fw_config
Kevin Chiub2a61512022-12-01 19:25:34 +08002 field STORAGE 1 1
3 option STORAGE_EMMC 0
4 option STORAGE_NVME 1
Kevin Chiue63049f2022-10-06 17:38:23 +08005 end
6end
7
Kevin Chiu5b4a914f2022-09-27 16:14:39 +08008chip soc/intel/alderlake
Kevin Chiuc32d7b42022-10-31 15:02:26 +08009 register "sagv" = "SaGv_Enabled"
10
Kevin Chiue63049f2022-10-06 17:38:23 +080011 # Intel Common SoC Config
12 #+-------------------+---------------------------+
13 #| Field | Value |
14 #+-------------------+---------------------------+
15 #| GSPI1 | NC |
16 #| I2C0 | Audio |
17 #| I2C1 | cr50 TPM. Early init is |
18 #| | required to set up a BAR |
19 #| | for TPM communication |
20 #| I2C3 | NC |
21 #| I2C5 | NC |
22 #+-------------------+---------------------------+
23 register "common_soc_config" = "{
24 .i2c[0] = {
25 .speed = I2C_SPEED_FAST,
Kevin Chiu7f5adef2022-12-19 11:12:45 +080026 .rise_time_ns = 600,
Kevin Chiue63049f2022-10-06 17:38:23 +080027 .fall_time_ns = 400,
28 .data_hold_time_ns = 50,
29 },
30 .i2c[1] = {
31 .early_init = 1,
32 .speed = I2C_SPEED_FAST,
33 .rise_time_ns = 600,
34 .fall_time_ns = 400,
35 .data_hold_time_ns = 50,
36 },
37 }"
Kevin Chiu5b4a914f2022-09-27 16:14:39 +080038
Kevin Chiuc19a2f02022-10-28 16:11:59 +080039 register "usb2_ports[0]" = "USB2_PORT_MAX_TYPE_C(OC2)" # set to Max for USB2_C0
40 register "usb2_ports[1]" = "USB2_PORT_EMPTY" # Disable Port 1
41 register "usb2_ports[2]" = "USB2_PORT_EMPTY" # Disable Port 2
42 register "usb2_ports[3]" = "USB2_PORT_EMPTY" # Disable Port 3
43 register "usb2_ports[4]" = "USB2_PORT_EMPTY" # Disable Port 4
Kevin Chiu5b4a914f2022-09-27 16:14:39 +080044
Kevin Chiuc19a2f02022-10-28 16:11:59 +080045 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A port A0
46 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A port A1(DCI)
47 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A port A2
48 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A port A3
49
50 register "tcss_ports[1]" = "TCSS_PORT_DEFAULT(OC1)" # USB TYPE C
51 register "tcss_ports[2]" = "TCSS_PORT_EMPTY" # Disable Port2
Kevin Chiue63049f2022-10-06 17:38:23 +080052
53 register "serial_io_gspi_mode" = "{
54 [PchSerialIoIndexGSPI0] = PchSerialIoDisabled,
55 [PchSerialIoIndexGSPI1] = PchSerialIoDisabled,
56 }"
57
58 register "ddi_ports_config" = "{
59 [DDI_PORT_A] = DDI_ENABLE_HPD,
60 [DDI_PORT_B] = DDI_ENABLE_HPD | DDI_ENABLE_DDC,
61 [DDI_PORT_1] = DDI_ENABLE_HPD,
62 [DDI_PORT_3] = DDI_ENABLE_HPD | DDI_ENABLE_DDC,
63 }"
64
65 device domain 0 on
66 device ref dtt on
67 chip drivers/intel/dptf
68 ## sensor information
69 register "options.tsr[0].desc" = ""DRAM""
70 register "options.tsr[1].desc" = ""Charger""
71
72 # TODO: below values are initial reference values only
73 ## Active Policy
74 register "policies.active" = "{
75 [0] = {
76 .target = DPTF_CPU,
77 .thresholds = {
78 TEMP_PCT(85, 90),
79 TEMP_PCT(80, 80),
80 TEMP_PCT(75, 70),
81 }
82 }
83 }"
84
85 ## Passive Policy
86 register "policies.passive" = "{
87 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
88 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 75, 5000),
89 [2] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_1, 75, 5000),
90 }"
91
92 ## Critical Policy
93 register "policies.critical" = "{
94 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
95 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 85, SHUTDOWN),
96 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 85, SHUTDOWN),
97 }"
98
99 register "controls.power_limits" = "{
100 .pl1 = {
101 .min_power = 3000,
102 .max_power = 15000,
103 .time_window_min = 28 * MSECS_PER_SEC,
104 .time_window_max = 32 * MSECS_PER_SEC,
105 .granularity = 200,
106 },
107 .pl2 = {
108 .min_power = 55000,
109 .max_power = 55000,
110 .time_window_min = 28 * MSECS_PER_SEC,
111 .time_window_max = 32 * MSECS_PER_SEC,
112 .granularity = 1000,
113 }
114 }"
115
116 ## Charger Performance Control (Control, mA)
117 register "controls.charger_perf" = "{
118 [0] = { 255, 1700 },
119 [1] = { 24, 1500 },
120 [2] = { 16, 1000 },
121 [3] = { 8, 500 }
122 }"
123
124 ## Fan Performance Control (Percent, Speed, Noise, Power)
125 register "controls.fan_perf" = "{
126 [0] = { 90, 6700, 220, 2200, },
127 [1] = { 80, 5800, 180, 1800, },
128 [2] = { 70, 5000, 145, 1450, },
129 [3] = { 60, 4900, 115, 1150, },
130 [4] = { 50, 3838, 90, 900, },
131 [5] = { 40, 2904, 55, 550, },
132 [6] = { 30, 2337, 30, 300, },
133 [7] = { 20, 1608, 15, 150, },
134 [8] = { 10, 800, 10, 100, },
135 [9] = { 0, 0, 0, 50, }
136 }"
137
138 ## Fan options
139 register "options.fan.fine_grained_control" = "1"
140 register "options.fan.step_size" = "2"
141
142 device generic 0 alias dptf_policy on end
143 end
144 end
145 device ref pcie4_0 on
146 # Enable CPU PCIE RP 1 using CLK 0
147 register "cpu_pcie_rp[CPU_RP(1)]" = "{
148 .clk_req = 0,
149 .clk_src = 0,
150 .flags = PCIE_RP_LTR | PCIE_RP_AER,
151 }"
Kevin Chiub2a61512022-12-01 19:25:34 +0800152 probe STORAGE STORAGE_NVME
153 end #NVMe
Kevin Chiu94298442022-10-28 13:05:44 +0800154 device ref tbt_pcie_rp0 off end
155 device ref tbt_pcie_rp1 off end
156 device ref tbt_pcie_rp2 off end
157
158 device ref tcss_dma0 off end
159 device ref tcss_dma1 off end
Kevin Chiue63049f2022-10-06 17:38:23 +0800160 device ref cnvi_wifi on
161 chip drivers/wifi/generic
162 register "wake" = "GPE0_PME_B0"
163 device generic 0 on end
164 end
165 end
166 device ref i2c0 on
167 chip drivers/i2c/generic
168 register "hid" = ""RTL5682""
169 register "name" = ""RT58""
170 register "desc" = ""Headset Codec""
171 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
172 # Set the jd_src to RT5668_JD1 for jack detection
173 register "property_count" = "1"
174 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
175 register "property_list[0].name" = ""realtek,jd-src""
176 register "property_list[0].integer" = "1"
Kevin Chiub2a61512022-12-01 19:25:34 +0800177 device i2c 1a on end
Kevin Chiue63049f2022-10-06 17:38:23 +0800178 end
179 end #I2C0
180 device ref i2c1 on
181 chip drivers/i2c/tpm
182 register "hid" = ""GOOG0005""
183 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_A13_IRQ)"
184 device i2c 50 on end
185 end
186 end
187 device ref pcie_rp7 on
188 chip drivers/net
189 register "wake" = "GPE0_DW0_07"
190 register "led_feature" = "0xe0"
191 register "customized_led0" = "0x23f"
192 register "customized_led2" = "0x028"
193 register "enable_aspm_l1_2" = "1"
Kapil Porwal39f50422022-11-26 02:38:38 +0530194 register "add_acpi_dma_property" = "true"
Kevin Chiue63049f2022-10-06 17:38:23 +0800195 device pci 00.0 on end
196 end
197 end # RTL8111 Ethernet NIC
198 device ref pcie_rp8 on
199 chip soc/intel/common/block/pcie/rtd3
200 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_H13)"
201 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D18)"
202 register "srcclk_pin" = "3"
203 device generic 0 on end
204 end
205 end #PCIE8 SD card
Kevin Chiu53cfdc82022-10-06 19:18:04 +0800206 device ref pcie_rp12 on
207 # Enable PCIE eMMC bridge 12 using clk 4
208 register "pch_pcie_rp[PCH_RP(12)]" = "{
209 .clk_src = 4,
210 .clk_req = 4,
211 .flags = PCIE_RP_HOTPLUG | PCIE_RP_AER,
212 }"
Kevin Chiub2a61512022-12-01 19:25:34 +0800213 probe STORAGE STORAGE_EMMC
Kevin Chiu53cfdc82022-10-06 19:18:04 +0800214 end #PCIE12 EMMC
Kevin Chiue63049f2022-10-06 17:38:23 +0800215 device ref gspi1 off end
216 device ref pch_espi on
217 chip ec/google/chromeec
218 use conn0 as mux_conn[0]
219 device pnp 0c09.0 on end
220 end
221 end
222 device ref pmc hidden
223 chip drivers/intel/pmc_mux
224 device generic 0 on
225 chip drivers/intel/pmc_mux/conn
226 use usb2_port1 as usb2_port
227 use tcss_usb3_port1 as usb3_port
228 device generic 0 alias conn0 on end
229 end
230 end
231 end
232 end
233 device ref tcss_xhci on
234 chip drivers/usb/acpi
235 device ref tcss_root_hub on
236 chip drivers/usb/acpi
237 register "desc" = ""USB3 Type-C Port C0 (MLB)""
238 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
239 register "use_custom_pld" = "true"
240 register "custom_pld" = "ACPI_PLD_TYPE_C(BACK, RIGHT, ACPI_PLD_GROUP(1, 1))"
241 device ref tcss_usb3_port1 on end
242 end
243 end
244 end
245 end
246 device ref xhci on
247 chip drivers/usb/acpi
248 device ref xhci_root_hub on
249 chip drivers/usb/acpi
250 register "desc" = ""USB2 Type-C Port C0 (MLB)""
251 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
252 register "use_custom_pld" = "true"
253 register "custom_pld" = "ACPI_PLD_TYPE_C(BACK, RIGHT, ACPI_PLD_GROUP(1, 1))"
254 device ref usb2_port1 on end
255 end
256 chip drivers/usb/acpi
257 register "desc" = ""USB2 Type-A Port A3 (MLB)""
258 register "type" = "UPC_TYPE_A"
259 register "use_custom_pld" = "true"
260 register "custom_pld" = "ACPI_PLD_TYPE_A(BACK, LEFT, ACPI_PLD_GROUP(5, 1))"
261 device ref usb2_port6 on end
262 end
263 chip drivers/usb/acpi
264 register "desc" = ""USB2 Type-A Port A2 (MLB)""
265 register "type" = "UPC_TYPE_A"
266 register "use_custom_pld" = "true"
267 register "custom_pld" = "ACPI_PLD_TYPE_A(BACK, CENTER, ACPI_PLD_GROUP(6, 1))"
268 device ref usb2_port7 on end
269 end
270 chip drivers/usb/acpi
271 register "desc" = ""USB2 Type-A Port A1 (MLB)""
272 register "type" = "UPC_TYPE_A"
273 register "use_custom_pld" = "true"
274 register "custom_pld" = "ACPI_PLD_TYPE_A(FRONT, LEFT, ACPI_PLD_GROUP(4, 1))"
275 device ref usb2_port8 on end
276 end
277 chip drivers/usb/acpi
278 register "desc" = ""USB2 Type-A Port A0 (MLB)""
279 register "type" = "UPC_TYPE_A"
280 register "use_custom_pld" = "true"
281 register "custom_pld" = "ACPI_PLD_TYPE_A(FRONT, RIGHT, ACPI_PLD_GROUP(1, 2))"
282 device ref usb2_port9 on end
283 end
284 chip drivers/usb/acpi
285 register "desc" = ""USB2 Bluetooth""
286 register "type" = "UPC_TYPE_INTERNAL"
287 register "reset_gpio" =
288 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
289 device ref usb2_port10 on end
290 end
291 chip drivers/usb/acpi
292 register "desc" = ""USB3 Type-A Port A0 (MLB)""
293 register "type" = "UPC_TYPE_USB3_A"
294 register "use_custom_pld" = "true"
295 register "custom_pld" = "ACPI_PLD_TYPE_A(FRONT, RIGHT, ACPI_PLD_GROUP(1, 2))"
296 device ref usb3_port1 on end
297 end
298 chip drivers/usb/acpi
299 register "desc" = ""USB3 Type-A Port A1 (MLB)""
300 register "type" = "UPC_TYPE_USB3_A"
301 register "use_custom_pld" = "true"
302 register "custom_pld" = "ACPI_PLD_TYPE_A(FRONT, LEFT, ACPI_PLD_GROUP(4, 1))"
303 device ref usb3_port2 on end
304 end
305 chip drivers/usb/acpi
306 register "desc" = ""USB3 Type-A Port A2 (MLB)""
307 register "type" = "UPC_TYPE_USB3_A"
308 register "use_custom_pld" = "true"
309 register "custom_pld" = "ACPI_PLD_TYPE_A(BACK, CENTER, ACPI_PLD_GROUP(6, 1))"
310 device ref usb3_port3 on end
311 end
312 chip drivers/usb/acpi
313 register "desc" = ""USB3 Type-A Port A3 (MLB)""
314 register "type" = "UPC_TYPE_USB3_A"
315 register "use_custom_pld" = "true"
316 register "custom_pld" = "ACPI_PLD_TYPE_A(BACK, LEFT, ACPI_PLD_GROUP(5, 1))"
317 device ref usb3_port4 on end
318 end
319 end
320 end
321 end
322 end
Kevin Chiu5b4a914f2022-09-27 16:14:39 +0800323end