blob: f3ac95f6af05334b324bf017098a5871d43ccfa8 [file] [log] [blame]
Rex Chou50d3a642023-07-11 13:26:08 +08001chip soc/intel/alderlake
Rex Chouf232b192023-07-21 15:40:34 +08002 register "sagv" = "SaGv_Enabled"
Rex Chou50d3a642023-07-11 13:26:08 +08003
Rex Chouf232b192023-07-21 15:40:34 +08004 # Bit 0 - C0 has no redriver, so enable SBU muxing in the SoC.
5 # Bit 2 - C1 has a redriver which does SBU muxing.
6 # Bit 1,3 - AUX lines are not swapped on the motherboard for either C0 or C1.
7 register "tcss_aux_ori" = "1"
8
9 register "typec_aux_bias_pads[0]" = "{.pad_auxp_dc = GPP_E22, .pad_auxn_dc = GPP_E23}"
10
Rex Chou684eca72023-08-04 15:29:59 +080011 # Configure external V1P05/Vnn/VnnSx Rails
12 register "ext_fivr_settings" = "{
13 .configure_ext_fivr = 1,
14 .v1p05_enable_bitmap = FIVR_ENABLE_ALL_SX & ~FIVR_ENABLE_S0,
15 .vnn_enable_bitmap = FIVR_ENABLE_ALL_SX,
16 .vnn_sx_enable_bitmap = FIVR_ENABLE_ALL_SX,
17 .v1p05_supported_voltage_bitmap = FIVR_VOLTAGE_NORMAL,
18 .vnn_supported_voltage_bitmap = FIVR_VOLTAGE_MIN_ACTIVE,
19 .v1p05_voltage_mv = 1050,
20 .vnn_voltage_mv = 780,
21 .vnn_sx_voltage_mv = 1050,
22 .v1p05_icc_max_ma = 500,
23 .vnn_icc_max_ma = 500,
24 }"
25
Rex Chou24502f42023-10-06 13:25:02 +080026 register "serial_io_i2c_mode" = "{
27 [PchSerialIoIndexI2C0] = PchSerialIoPci,
28 [PchSerialIoIndexI2C1] = PchSerialIoPci,
29 [PchSerialIoIndexI2C2] = PchSerialIoDisabled,
30 [PchSerialIoIndexI2C3] = PchSerialIoPci,
31 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
32 [PchSerialIoIndexI2C5] = PchSerialIoPci,
33 }"
34
Rex Chouf232b192023-07-21 15:40:34 +080035 # Intel Common SoC Config
36 #+-------------------+---------------------------+
37 #| Field | Value |
38 #+-------------------+---------------------------+
39 #| I2C0 | TPM. Early init is |
40 #| | required to set up a BAR |
41 #| | for TPM communication |
42 #| I2C1 | Touchscreen |
Rex Chouf232b192023-07-21 15:40:34 +080043 #| I2C3 | Audio |
44 #| I2C5 | Trackpad |
45 #+-------------------+---------------------------+
46 register "common_soc_config" = "{
47 .i2c[0] = {
48 .early_init = 1,
49 .speed = I2C_SPEED_FAST_PLUS,
50 .speed_config[0] = {
51 .speed = I2C_SPEED_FAST_PLUS,
52 .scl_lcnt = 55,
53 .scl_hcnt = 30,
54 .sda_hold = 7,
55 }
56 },
57 .i2c[1] = {
58 .speed = I2C_SPEED_FAST,
59 .speed_config[0] = {
60 .speed = I2C_SPEED_FAST,
61 .scl_lcnt = 158,
62 .scl_hcnt = 79,
63 .sda_hold = 7,
64 }
65 },
Rex Chouf232b192023-07-21 15:40:34 +080066 .i2c[3] = {
67 .speed = I2C_SPEED_FAST,
68 .speed_config[0] = {
69 .speed = I2C_SPEED_FAST,
70 .scl_lcnt = 158,
71 .scl_hcnt = 79,
72 .sda_hold = 7,
73 }
74 },
75 .i2c[5] = {
76 .speed = I2C_SPEED_FAST,
77 .speed_config[0] = {
78 .speed = I2C_SPEED_FAST,
79 .scl_lcnt = 158,
80 .scl_hcnt = 79,
81 .sda_hold = 7,
82 }
83 },
84 }"
85
86 register "usb2_ports[1]" = "USB2_PORT_EMPTY" # Disable USB2 Port 2
87 register "usb2_ports[4]" = "USB2_PORT_EMPTY" # Disable USB2 Port 5
88 register "usb2_ports[6]" = "USB2_PORT_EMPTY" # Disable USB2 Port 7
89 register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth port for CNVi WLAN
90 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth port for CNVi WLAN
91
Van Chen8c77e582023-07-24 15:14:16 +080092 register "tcc_offset" = "8"
93
Rex Chouf232b192023-07-21 15:40:34 +080094 device domain 0 on
Van Chen8c77e582023-07-24 15:14:16 +080095 device ref dtt on
96 chip drivers/intel/dptf
97 ## sensor information
98 register "options.tsr[0].desc" = ""DDR""
99 register "options.tsr[1].desc" = ""charger""
100 register "options.tsr[2].desc" = ""ambient""
101
102 ## Passive Policy
103 register "policies.passive" = "{
104 [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000),
105 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 70, 5000),
106 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 70, 5000),
107 [3] = DPTF_PASSIVE(CPU, TEMP_SENSOR_2, 70, 5000),
108 }"
109
110 ## Critical Policy
111 register "policies.critical" = "{
112 [0] = DPTF_CRITICAL(CPU, 100, SHUTDOWN),
113 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 95, SHUTDOWN),
114 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 95, SHUTDOWN),
115 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 95, SHUTDOWN),
116 }"
117
118 register "controls.power_limits" = "{
119 .pl1 = {
120 .min_power = 5500,
121 .max_power = 6000,
122 .time_window_min = 28 * MSECS_PER_SEC,
123 .time_window_max = 28 * MSECS_PER_SEC,
124 .granularity = 500
125 },
126 .pl2 = {
127 .min_power = 25000,
128 .max_power = 25000,
129 .time_window_min = 32 * MSECS_PER_SEC,
130 .time_window_max = 32 * MSECS_PER_SEC,
131 .granularity = 500
132 }
133 }"
134
135 ## Charger Performance Control (Control, mA)
136 register "controls.charger_perf" = "{
137 [0] = { 255, 1700 },
138 [1] = { 24, 1500 },
139 [2] = { 16, 1000 },
140 [3] = { 8, 500 }
141 }"
142 device generic 0 on end
143 end
144 end
Rex Chouf232b192023-07-21 15:40:34 +0800145 device ref i2c1 on
146 chip drivers/i2c/hid
147 register "generic.hid" = ""ELAN9004""
148 register "generic.desc" = ""ELAN Touchscreen""
149 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_C7_IRQ)"
150 register "generic.probed" = "1"
151 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C1)"
152 register "generic.reset_delay_ms" = "20"
153 register "generic.reset_off_delay_ms" = "2"
154 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C0)"
155 register "generic.enable_delay_ms" = "1"
156 register "generic.stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_C6)"
157 register "generic.stop_delay_ms" = "150"
158 register "generic.stop_off_delay_ms" = "2"
159 register "generic.has_power_resource" = "1"
160 register "hid_desc_reg_offset" = "0x01"
161 device i2c 10 on end
162 end
163 end #I2C1
164 device ref i2c3 on
165 chip drivers/i2c/generic
166 register "hid" = ""10EC5650""
167 register "name" = ""RT58""
168 register "desc" = ""Realtek RT5650""
169 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_A23)"
170 register "property_count" = "1"
171 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
172 register "property_list[0].name" = ""realtek,jd-mode""
173 register "property_list[0].integer" = "2"
174 device i2c 1a on end
175 end
176 end #I2C3
177 device ref i2c5 on
178 chip drivers/i2c/generic
179 register "hid" = ""ELAN0000""
180 register "desc" = ""ELAN Touchpad""
181 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
182 register "wake" = "GPE0_DW2_14"
183 register "detect" = "1"
184 device i2c 15 on end
185 end
186 chip drivers/i2c/hid
187 register "generic.hid" = ""SYNA0000""
188 register "generic.cid" = ""ACPI0C50""
189 register "generic.desc" = ""Synaptics Touchpad""
190 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_F14_IRQ)"
191 register "generic.wake" = "GPE0_DW2_14"
192 register "generic.detect" = "1"
193 register "hid_desc_reg_offset" = "0x20"
194 device i2c 2c on end
195 end
196 end
197 device ref pcie_rp7 off end
198 device ref cnvi_wifi on
199 chip drivers/wifi/generic
200 register "wake" = "GPE0_PME_B0"
201 register "enable_cnvi_ddr_rfim" = "true"
202 register "add_acpi_dma_property" = "true"
203 device generic 0 on end
204 end
205 end
206 device ref pch_espi on
207 chip ec/google/chromeec
208 use conn0 as mux_conn[0]
209 device pnp 0c09.0 on end
210 end
211 end
212 device ref pmc hidden
213 chip drivers/intel/pmc_mux
214 device generic 0 on
215 chip drivers/intel/pmc_mux/conn
216 use usb2_port1 as usb2_port
217 use tcss_usb3_port1 as usb3_port
218 device generic 0 alias conn0 on end
219 end
220 end
221 end
222 end
223 device ref tcss_xhci on
224 chip drivers/usb/acpi
225 device ref tcss_root_hub on
226 chip drivers/usb/acpi
227 register "desc" = ""USB3 Type-C Port C0 (MLB)""
228 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
229 register "use_custom_pld" = "true"
230 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
231 device ref tcss_usb3_port1 on end
232 end
233 end
234 end
235 end
236 device ref xhci on
237 chip drivers/usb/acpi
238 device ref xhci_root_hub on
239 chip drivers/usb/acpi
240 register "desc" = ""USB2 Type-C Port C0 (MLB)""
241 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
242 register "use_custom_pld" = "true"
243 register "custom_pld" = "ACPI_PLD_TYPE_C(LEFT, LEFT, ACPI_PLD_GROUP(1, 1))"
244 device ref usb2_port1 on end
245 end
246 chip drivers/usb/acpi
247 register "desc" = ""USB2 Type-A Port A0 (DB)""
248 register "type" = "UPC_TYPE_A"
249 register "use_custom_pld" = "true"
250 register "custom_pld" = "ACPI_PLD_TYPE_A(LEFT, RIGHT, ACPI_PLD_GROUP(3, 1))"
251 device ref usb2_port3 on end
252 end
253 chip drivers/usb/acpi
254 register "desc" = ""USB2 Type-A Port A1 (DB)""
255 register "type" = "UPC_TYPE_A"
256 register "use_custom_pld" = "true"
257 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
258 device ref usb2_port4 on end
259 end
260 chip drivers/usb/acpi
261 register "desc" = ""USB2 Camera""
262 register "type" = "UPC_TYPE_INTERNAL"
263 device ref usb2_port6 on end
264 end
265 chip drivers/usb/acpi
266 register "desc" = ""USB2 Bluetooth""
267 register "type" = "UPC_TYPE_INTERNAL"
268 register "reset_gpio" =
269 "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
270 device ref usb2_port8 on end
271 end
272 chip drivers/usb/acpi
273 register "desc" = ""USB2 Bluetooth""
274 register "type" = "UPC_TYPE_INTERNAL"
275 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D4)"
276 device ref usb2_port10 on end
277 end
278 chip drivers/usb/acpi
279 register "desc" = ""USB3 Type-A Port A0 (MLB)""
280 register "type" = "UPC_TYPE_USB3_A"
281 register "use_custom_pld" = "true"
282 register "custom_pld" = "ACPI_PLD_TYPE_A(LEFT, RIGHT, ACPI_PLD_GROUP(3, 1))"
283 device ref usb3_port1 on end
284 end
285 chip drivers/usb/acpi
286 register "desc" = ""USB3 Type-A Port A1 (DB)""
287 register "type" = "UPC_TYPE_USB3_A"
288 register "use_custom_pld" = "true"
289 register "custom_pld" = "ACPI_PLD_TYPE_A(RIGHT, LEFT, ACPI_PLD_GROUP(4, 1))"
290 device ref usb3_port2 on end
291 end
292 end
293 end
294 end
Matt DeVillier189da312023-09-08 20:57:55 -0500295 device ref hda on
296 chip drivers/sof
297 register "spkr_tplg" = "rt5650_sp"
298 register "jack_tplg" = "rt5650_hp"
299 register "mic_tplg" = "_2ch_pdm0"
300 device generic 0 on end
301 end
302 end
303 end
Rex Chou50d3a642023-07-11 13:26:08 +0800304
305end