blob: c56840823db960139671e2a4bbf4c6332b1a3cea [file] [log] [blame]
Wisley Chen28295722021-11-16 17:22:02 +06001fw_config
2 field AUDIO_CODEC_SOURCE 40 42
3 option AUDIO_CODEC_UNPROVISIONED 0
4 option AUDIO_CODEC_ALC5682 1
5 option AUDIO_CODEC_ALC5682I_VS 2
6 end
Robert Chen9b6e8512022-02-15 15:02:45 +08007 field TS_DRIVER_SOURCE 43 45
8 option TS_UNPROVISIONED 0
9 option TS_ELAN0001 1
10 option TS_ELAN2513 2
11 end
Wisley Chen28295722021-11-16 17:22:02 +060012end
Tony Huangc1870392020-11-12 20:29:19 +080013chip soc/intel/jasperlake
14
15 # USB Port Configuration
16 register "usb2_ports[5]" = "USB2_PORT_MID(OC_SKIP)" # Camera
17
18 register "SerialIoI2cMode" = "{
19 [PchSerialIoIndexI2C0] = PchSerialIoPci,
20 [PchSerialIoIndexI2C1] = PchSerialIoDisabled,
21 [PchSerialIoIndexI2C2] = PchSerialIoPci,
22 [PchSerialIoIndexI2C3] = PchSerialIoDisabled,
23 [PchSerialIoIndexI2C4] = PchSerialIoPci,
24 [PchSerialIoIndexI2C5] = PchSerialIoDisabled,
25 }"
26
27 # Intel Common SoC Config
28 #+-------------------+---------------------------+
29 #| Field | Value |
30 #+-------------------+---------------------------+
31 #| GSPI0 | cr50 TPM. Early init is |
32 #| | required to set up a BAR |
33 #| | for TPM communication |
34 #| | before memory is up |
35 #| I2C0 | Trackpad |
36 #| I2C1 | |
37 #| I2C2 | Touchscreen |
38 #| I2C3 | |
39 #| I2C4 | Audio |
40 #+-------------------+---------------------------+
41 register "common_soc_config" = "{
42 .gspi[0] = {
43 .speed_mhz = 1,
44 .early_init = 1,
45 },
46 .i2c[0] = {
47 .speed = I2C_SPEED_FAST,
Tony Huang3564c732020-12-23 10:43:08 +080048 .speed_config[0] = {
49 .speed = I2C_SPEED_FAST,
50 .scl_lcnt = 185,
51 .scl_hcnt = 95,
52 .sda_hold = 40,
53 }
Tony Huangc1870392020-11-12 20:29:19 +080054 },
55 .i2c[2] = {
56 .speed = I2C_SPEED_FAST,
Tony Huang50dc0632020-12-31 09:47:10 +080057 .speed_config[0] = {
58 .speed = I2C_SPEED_FAST,
59 .scl_lcnt = 185,
60 .scl_hcnt = 95,
61 .sda_hold = 40,
62 }
Tony Huangc1870392020-11-12 20:29:19 +080063 },
64 .i2c[4] = {
65 .speed = I2C_SPEED_FAST,
Tony Huang50dc0632020-12-31 09:47:10 +080066 .speed_config[0] = {
67 .speed = I2C_SPEED_FAST,
68 .scl_lcnt = 185,
69 .scl_hcnt = 95,
70 .sda_hold = 40,
71 }
Tony Huangc1870392020-11-12 20:29:19 +080072 },
73 }"
74
Chia-Ling Houb5a03282023-06-07 16:53:00 +080075 # Power limit config
76 register "power_limits_config[JSL_N4500_6W_CORE]" = "{
77 .tdp_pl1_override = 6,
78 .tdp_pl2_override = 15,
79 }"
80
81 register "power_limits_config[JSL_N6000_6W_CORE]" = "{
82 .tdp_pl1_override = 6,
83 .tdp_pl2_override = 15,
84 }"
85
86 register "power_limits_config[JSL_N5100_6W_CORE]" = "{
Tony Huangfc63f8d2021-01-18 10:04:55 +080087 .tdp_pl1_override = 6,
Tony Huang4248d8e2021-03-12 15:06:29 +080088 .tdp_pl2_override = 15,
Tony Huangfc63f8d2021-01-18 10:04:55 +080089 }"
90
Tony Huangebf380b2021-03-24 13:16:03 +080091 # Enable Acoustic noise mitigation and set slew rate to 1/4
92 # Rest of the parameters are 0 by default.
93 register "AcousticNoiseMitigation" = "1"
94 register "SlowSlewRate" = "SlewRateFastBy4"
95 register "FastPkgCRampDisable" = "1"
96
Tony Huangc1870392020-11-12 20:29:19 +080097 device domain 0 on
Tony Huangfc63f8d2021-01-18 10:04:55 +080098 device pci 04.0 on
99 chip drivers/intel/dptf
100 register "options.tsr[0].desc" = ""Memory""
101 register "options.tsr[1].desc" = ""Ambient""
Tony Huang4248d8e2021-03-12 15:06:29 +0800102 register "options.tsr[2].desc" = ""Charger""
103 register "options.tsr[3].desc" = ""5V regulator""
Tony Huangfc63f8d2021-01-18 10:04:55 +0800104
105 ## Passive Policy
106 register "policies.passive" = "{
Tony Huang4248d8e2021-03-12 15:06:29 +0800107 [0] = DPTF_PASSIVE(CPU, CPU, 80, 1000),
108 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 70, 4000),
109 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 51, 1000),
110 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 75, 5000),
111 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 60, 1000)
Tony Huangfc63f8d2021-01-18 10:04:55 +0800112 }"
113 ## Critical Policy
114 register "policies.critical" = "{
115 [0] = DPTF_CRITICAL(CPU, 105, SHUTDOWN),
Tony Huang4248d8e2021-03-12 15:06:29 +0800116 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 105, SHUTDOWN),
117 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 105, SHUTDOWN),
118 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 105, SHUTDOWN),
119 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 105, SHUTDOWN)
Tony Huangfc63f8d2021-01-18 10:04:55 +0800120 }"
121 ## Power Limits Control
122 register "controls.power_limits" = "{
123 .pl1 = {
124 .min_power = 3800,
125 .max_power = 5800,
126 .time_window_min = 1 * MSECS_PER_SEC,
127 .time_window_max = 1 * MSECS_PER_SEC,
128 .granularity = 200,
129 },
130 .pl2 = {
Tony Huang4248d8e2021-03-12 15:06:29 +0800131 .min_power = 15000,
132 .max_power = 15000,
Tony Huangfc63f8d2021-01-18 10:04:55 +0800133 .time_window_min = 1 * MSECS_PER_SEC,
134 .time_window_max = 1 * MSECS_PER_SEC,
135 .granularity = 1000,
136 }
137 }"
Tony Huang4248d8e2021-03-12 15:06:29 +0800138
139 ## Charger Performance Control (Control, mA)
140 register "controls.charger_perf" = "{
141 [0] = { 255, 3000 },
142 [1] = { 24, 1500 },
143 [2] = { 16, 1000 },
144 [3] = { 8, 500 }
145 }"
146
Tony Huangfc63f8d2021-01-18 10:04:55 +0800147 device generic 0 on end
148 end
149 end # SA Thermal device
Tony Huangc1870392020-11-12 20:29:19 +0800150 device pci 14.0 on
151 chip drivers/usb/acpi
152 device usb 0.0 on
153 chip drivers/usb/acpi
154 register "desc" = ""Discrete Bluetooth""
155 register "type" = "UPC_TYPE_INTERNAL"
156 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_H19)"
157 device usb 2.4 on end
158 end
159 chip drivers/usb/acpi
160 register "desc" = ""Camera""
161 register "type" = "UPC_TYPE_INTERNAL"
162 device usb 2.5 on end
163 end
164 chip drivers/usb/acpi
165 register "desc" = ""Integrated Bluetooth""
166 register "type" = "UPC_TYPE_INTERNAL"
167 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_H19)"
168 device usb 2.7 on end
169 end
170 end
171 end
172 end # USB xHCI
173 device pci 15.0 on
174 chip drivers/i2c/generic
175 register "hid" = ""ELAN0000""
176 register "desc" = ""ELAN Touchpad""
177 register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPP_B3_IRQ)"
178 register "wake" = "GPE0_DW0_03"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500179 register "detect" = "1"
Tony Huangc1870392020-11-12 20:29:19 +0800180 device i2c 15 on end
181 end
182 end #I2C 0
183 device pci 15.1 off end #I2C 1
184 device pci 15.2 on
185 chip drivers/i2c/generic
186 register "hid" = ""ELAN0001""
187 register "desc" = ""ELAN Touchscreen""
Tony Huang9056fde2021-02-20 09:36:22 +0800188 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600189 register "detect" = "1"
Tony Huangc1870392020-11-12 20:29:19 +0800190 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
191 register "reset_delay_ms" = "20"
192 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
193 register "enable_delay_ms" = "1"
194 register "has_power_resource" = "1"
Robert Chen9b6e8512022-02-15 15:02:45 +0800195 device i2c 10 on
196 probe TS_DRIVER_SOURCE TS_UNPROVISIONED
197 probe TS_DRIVER_SOURCE TS_ELAN0001
198 end
199 end
200 chip drivers/i2c/hid
201 register "generic.hid" = ""ELAN2513""
202 register "generic.desc" = ""ELAN Touchscreen""
203 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600204 register "generic.detect" = "1"
Robert Chen9b6e8512022-02-15 15:02:45 +0800205 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
206 register "generic.reset_delay_ms" = "20"
207 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
208 register "generic.enable_delay_ms" = "1"
209 register "generic.has_power_resource" = "1"
210 register "hid_desc_reg_offset" = "0x01"
211 device i2c 10 on
212 probe TS_DRIVER_SOURCE TS_ELAN2513
213 end
Tony Huangc1870392020-11-12 20:29:19 +0800214 end
215 chip drivers/i2c/hid
216 register "generic.hid" = ""GTCH7503""
217 register "generic.desc" = ""G2TOUCH Touchscreen""
Tony Huangbb700992020-12-01 09:19:31 +0800218 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600219 register "generic.detect" = "1"
Tony Huangc1870392020-11-12 20:29:19 +0800220 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
221 register "generic.reset_delay_ms" = "50"
222 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
223 register "generic.enable_delay_ms" = "1"
224 register "generic.has_power_resource" = "1"
Tony Huangc1870392020-11-12 20:29:19 +0800225 register "hid_desc_reg_offset" = "0x01"
226 device i2c 40 on end
227 end
228 chip drivers/i2c/hid
229 register "generic.hid" = ""GDIX0000""
230 register "generic.desc" = ""Goodix Touchscreen""
Tony Huangbb700992020-12-01 09:19:31 +0800231 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600232 register "generic.detect" = "1"
Tony Huangc1870392020-11-12 20:29:19 +0800233 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
234 register "generic.reset_delay_ms" = "120"
235 register "generic.reset_off_delay_ms" = "2"
236 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
237 register "generic.enable_delay_ms" = "12"
238 register "generic.has_power_resource" = "1"
239 register "hid_desc_reg_offset" = "0x01"
240 device i2c 0x5d on end
241 end
242 end # I2C 2
243 device pci 15.3 off end #I2C 3
244 device pci 1c.7 on
245 chip drivers/wifi/generic
246 register "wake" = "GPE0_DW2_03"
247 device pci 00.0 on end
248 end
249 end # PCI Express Root Port 8 - WLAN
250 device pci 19.0 on
251 chip drivers/i2c/generic
252 register "hid" = ""10EC5682""
253 register "name" = ""RT58""
254 register "desc" = ""Realtek RT5682""
255 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_D16)"
256 register "property_count" = "1"
257 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
258 register "property_list[0].name" = ""realtek,jd-src""
259 register "property_list[0].integer" = "1"
Wisley Chen28295722021-11-16 17:22:02 +0600260 device i2c 1a on
261 probe AUDIO_CODEC_SOURCE AUDIO_CODEC_UNPROVISIONED
262 probe AUDIO_CODEC_SOURCE AUDIO_CODEC_ALC5682
263 end
264 end
265 chip drivers/i2c/generic
266 register "hid" = ""RTL5682""
267 register "name" = ""RT58""
268 register "desc" = ""Realtek RT5682""
269 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_D16)"
270 register "property_count" = "1"
271 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
272 register "property_list[0].name" = ""realtek,jd-src""
273 register "property_list[0].integer" = "1"
274 device i2c 1a on
275 probe AUDIO_CODEC_SOURCE AUDIO_CODEC_ALC5682I_VS
276 end
Tony Huangc1870392020-11-12 20:29:19 +0800277 end
278 end #I2C 4
279 device pci 1f.3 on
280 chip drivers/generic/max98357a
281 register "hid" = ""MX98360A""
282 register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D17)"
283 device generic 0 on end
284 end
285 end # Intel HDA
286 end
287end