blob: 704e4587b8fcbfad3cfc05c1c9709a9bbffc566e [file] [log] [blame]
Wisley Chena17ffd22021-05-21 14:11:10 +06001chip soc/intel/jasperlake
2
3 # USB Port Configuration
4 register "usb2_ports[5]" = "USB2_PORT_MID(OC_SKIP)" # Camera
5
6 # Intel Common SoC Config
7 #+-------------------+---------------------------+
8 #| Field | Value |
9 #+-------------------+---------------------------+
10 #| GSPI0 | cr50 TPM. Early init is |
11 #| | required to set up a BAR |
12 #| | for TPM communication |
13 #| | before memory is up |
14 #| I2C0 | Trackpad |
15 #| I2C1 | Digitizer |
16 #| I2C2 | Touchscreen |
17 #| I2C3 | Camera |
18 #| I2C4 | Audio |
19 #+-------------------+---------------------------+
20 register "common_soc_config" = "{
Wisley Chena17ffd22021-05-21 14:11:10 +060021 .i2c[0] = {
22 .speed = I2C_SPEED_FAST,
23 },
24 .i2c[1] = {
25 .speed = I2C_SPEED_FAST,
26 },
27 .i2c[2] = {
28 .speed = I2C_SPEED_FAST,
29 },
30 .i2c[3] = {
31 .speed = I2C_SPEED_FAST,
32 },
33 .i2c[4] = {
34 .speed = I2C_SPEED_FAST,
35 },
36 }"
37
Wisley Chena17ffd22021-05-21 14:11:10 +060038 register "tcc_offset" = "20" # TCC of 85C
39
Wisley Cheneb07e4c2021-08-05 18:10:43 +060040 register "SerialIoGSpiMode[PchSerialIoIndexGSPI0]" = "PchSerialIoDisabled" # Disable GSPI0
41 register "SerialIoGSpiCsMode[PchSerialIoIndexGSPI0]" = "0"
42
Wisley Chena17ffd22021-05-21 14:11:10 +060043 # Enable Acoustic noise mitigation and set slew rate to 1/4
44 # Rest of the parameters are 0 by default.
45 register "AcousticNoiseMitigation" = "1"
46 register "SlowSlewRate" = "SlewRateFastBy4"
47 register "FastPkgCRampDisable" = "1"
48
49 device domain 0 on
50 device pci 05.0 on # IPU - MIPI Camera
51 chip drivers/intel/mipi_camera
52 register "acpi_uid" = "0x50000"
53 register "acpi_name" = ""IPU0""
54 register "device_type" = "INTEL_ACPI_CAMERA_CIO2"
55
56 register "cio2_num_ports" = "2"
57 register "cio2_lanes_used" = "{1,4}"
58 register "cio2_lane_endpoint[1]" = ""^I2C3.CAM1""
59 register "cio2_prt[0]" = "0"
60 register "cio2_prt[1]" = "2"
61 device generic 0 on end
62 end
63 end
64
65 device pci 04.0 on
66 chip drivers/intel/dptf
67 # Default DPTF Policy for all drawcia boards if not overridden
68 register "options.tsr[0].desc" = ""Memory""
69 register "options.tsr[1].desc" = ""Ambient""
70 register "options.tsr[2].desc" = ""Charger""
71 register "options.tsr[3].desc" = ""5V regulator""
72
73 ## Passive Policy
74 register "policies.passive" = "{
75 [0] = DPTF_PASSIVE(CPU, CPU, 80, 1000),
76 [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 70, 4000),
77 [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 51, 1000),
78 [3] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_2, 75, 5000),
79 [4] = DPTF_PASSIVE(CPU, TEMP_SENSOR_3, 60, 1000)
80 }"
81
82 ## Critical Policy
83 register "policies.critical" = "{
84 [0] = DPTF_CRITICAL(CPU, 119, SHUTDOWN),
85 [1] = DPTF_CRITICAL(TEMP_SENSOR_0, 115, SHUTDOWN),
86 [2] = DPTF_CRITICAL(TEMP_SENSOR_1, 115, SHUTDOWN),
87 [3] = DPTF_CRITICAL(TEMP_SENSOR_2, 115, SHUTDOWN),
88 [4] = DPTF_CRITICAL(TEMP_SENSOR_3, 115, SHUTDOWN)
89 }"
90
91 register "controls.power_limits" = "{
92 .pl1 = {
93 .min_power = 3800,
94 .max_power = 5800,
95 .time_window_min = 1 * MSECS_PER_SEC,
96 .time_window_max = 1 * MSECS_PER_SEC,
97 .granularity = 200,
98 },
99 .pl2 = {
100 .min_power = 20000,
101 .max_power = 20000,
102 .time_window_min = 1 * MSECS_PER_SEC,
103 .time_window_max = 1 * MSECS_PER_SEC,
104 .granularity = 1000,
105 }
106 }"
107
108 ## Charger Performance Control (Control, mA)
109 register "controls.charger_perf" = "{
110 [0] = { 255, 3000 },
111 [1] = { 24, 1500 },
112 [2] = { 16, 1000 },
113 [3] = { 8, 500 }
114 }"
115
116 device generic 0 on end
117 end
118 end # SA Thermal device
119 device pci 14.0 on
120 chip drivers/usb/acpi
121 device usb 0.0 on
122 chip drivers/usb/acpi
123 register "desc" = ""Camera""
124 register "type" = "UPC_TYPE_INTERNAL"
125 device usb 2.5 on end
126 end
127 end
128 end
129 end # USB xHCI
130 device pci 15.0 on
131 chip drivers/i2c/generic
132 register "hid" = ""ELAN0000""
133 register "desc" = ""ELAN Touchpad""
134 register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPP_B3_IRQ)"
135 register "wake" = "GPE0_DW0_03"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500136 register "detect" = "1"
Wisley Chena17ffd22021-05-21 14:11:10 +0600137 device i2c 15 on end
138 end
139 end #I2C 0
140 device pci 15.2 on
141 chip drivers/generic/gpio_keys
142 register "name" = ""PENH""
143 register "gpio" = "ACPI_GPIO_INPUT_ACTIVE_LOW(GPP_C12)"
144 register "key.wakeup_route" = "WAKEUP_ROUTE_GPIO_IRQ"
145 register "key.wakeup_event_action" = "EV_ACT_DEASSERTED"
146 register "key.dev_name" = ""EJCT""
147 register "key.linux_code" = "SW_PEN_INSERTED"
148 register "key.linux_input_type" = "EV_SW"
149 register "key.label" = ""pen_eject""
150 device generic 0 on end
151 end
152 chip drivers/i2c/generic
153 register "hid" = ""ELAN0001""
154 register "desc" = ""ELAN Touchscreen""
155 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600156 register "detect" = "1"
Wisley Chena17ffd22021-05-21 14:11:10 +0600157 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
158 register "reset_delay_ms" = "20"
159 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
160 register "enable_delay_ms" = "1"
161 register "has_power_resource" = "1"
162 device i2c 10 on end
163 end
164 chip drivers/i2c/hid
165 register "generic.hid" = ""GTCH7503""
166 register "generic.desc" = ""G2TOUCH Touchscreen""
167 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600168 register "generic.detect" = "1"
Wisley Chena17ffd22021-05-21 14:11:10 +0600169 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
170 register "generic.reset_delay_ms" = "50"
171 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
172 register "generic.enable_delay_ms" = "1"
173 register "generic.has_power_resource" = "1"
Wisley Chena17ffd22021-05-21 14:11:10 +0600174 register "hid_desc_reg_offset" = "0x01"
175 device i2c 40 on end
176 end
177 chip drivers/i2c/hid
178 register "generic.hid" = ""GDIX0000""
179 register "generic.desc" = ""Goodix Touchscreen""
180 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600181 register "generic.detect" = "1"
Wisley Chena17ffd22021-05-21 14:11:10 +0600182 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
183 register "generic.reset_delay_ms" = "120"
184 register "generic.reset_off_delay_ms" = "2"
185 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
186 register "generic.enable_delay_ms" = "12"
187 register "generic.has_power_resource" = "1"
188 register "hid_desc_reg_offset" = "0x01"
189 device i2c 0x5d on end
190 end
191 chip drivers/i2c/hid
192 register "generic.hid" = ""ELAN2513""
193 register "generic.desc" = ""ELAN Touchscreen""
194 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D4_IRQ)"
Matt DeVillierc3cef7e2022-12-21 12:22:21 -0600195 register "generic.detect" = "1"
Wisley Chena17ffd22021-05-21 14:11:10 +0600196 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D5)"
197 register "generic.reset_delay_ms" = "20"
198 register "generic.reset_off_delay_ms" = "2"
199 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D6)"
200 register "generic.enable_delay_ms" = "10"
201 register "generic.stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_A11)"
202 register "generic.stop_delay_ms" = "130"
203 register "generic.has_power_resource" = "1"
204 register "hid_desc_reg_offset" = "0x01"
205 device i2c 15 on end
206 end
207 end # I2C 2
208 device pci 15.3 on
209 chip drivers/intel/mipi_camera
210 register "acpi_hid" = ""OVTI8856""
211 register "acpi_uid" = "0"
212 register "acpi_name" = ""CAM1""
213 register "chip_name" = ""Ov 8856 Camera""
214 register "device_type" = "INTEL_ACPI_CAMERA_SENSOR"
215
216 register "ssdb.lanes_used" = "4"
217 register "ssdb.link_used" = "1"
218 register "ssdb.vcm_type" = "0x0C"
219 register "vcm_name" = ""VCM0""
220 register "num_freq_entries" = "2"
221 register "link_freq[0]" = "360000000"
222 register "link_freq[1]" = "180000000"
223 register "remote_name" = ""IPU0""
224
225 register "has_power_resource" = "1"
226 #Controls
227 register "clk_panel.clks[0].clknum" = "1" #IMGCLKOUT_1
228 register "clk_panel.clks[0].freq" = "1" #19.2 Mhz
229
230 register "gpio_panel.gpio[0].gpio_num" = "GPP_D13" #power_enable_2p8
231 register "gpio_panel.gpio[1].gpio_num" = "GPP_D14" #power_enable_1p2
232 register "gpio_panel.gpio[2].gpio_num" = "GPP_D12" #reset
233
234 #_ON
235 register "on_seq.ops_cnt" = "5"
236 register "on_seq.ops[0]" = "SEQ_OPS_CLK_ENABLE(0, 0)"
237 register "on_seq.ops[1]" = "SEQ_OPS_GPIO_ENABLE(0, 5)"
238 register "on_seq.ops[2]" = "SEQ_OPS_GPIO_ENABLE(1, 5)"
239 register "on_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(2, 5)"
240 register "on_seq.ops[4]" = "SEQ_OPS_GPIO_ENABLE(2, 5)"
241
242 #_OFF
243 register "off_seq.ops_cnt" = "4"
244 register "off_seq.ops[0]" = "SEQ_OPS_CLK_DISABLE(0, 0)"
245 register "off_seq.ops[1]" = "SEQ_OPS_GPIO_DISABLE(2, 0)"
246 register "off_seq.ops[2]" = "SEQ_OPS_GPIO_DISABLE(1, 0)"
247 register "off_seq.ops[3]" = "SEQ_OPS_GPIO_DISABLE(0, 0)"
248
249 device i2c 36 on end
250 end
251 chip drivers/intel/mipi_camera
252 register "acpi_hid" = "ACPI_DT_NAMESPACE_HID"
253 register "acpi_uid" = "3"
254 register "acpi_name" = ""VCM0""
255 register "chip_name" = ""DW AF DAC""
256 register "device_type" = "INTEL_ACPI_CAMERA_VCM"
257
258 register "pr0" = ""\\_SB.PCI0.I2C3.CAM1.PRIC""
259 register "vcm_compat" = ""dongwoon,dw9714""
260
261 device i2c 0C on end
262 end
263 chip drivers/intel/mipi_camera
264 register "acpi_uid" = "1"
265 register "acpi_name" = ""NVM0""
266 register "chip_name" = ""GT24C08""
267 register "device_type" = "INTEL_ACPI_CAMERA_NVM"
268
269 register "nvm_size" = "0x0400"
270 register "nvm_pagesize" = "1"
271 register "nvm_readonly" = "1"
272 register "nvm_width" = "0x08"
273 register "nvm_compat" = ""atmel,24c08""
274
275 device i2c 50 on end
276 end
277 end # I2C 3
278 device pci 19.0 on
279 chip drivers/i2c/generic
280 register "hid" = ""10EC5682""
281 register "name" = ""RT58""
282 register "desc" = ""Headset Codec""
283 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_D16)"
284 # Set the jd_src to RT5668_JD1 for jack detection
285 register "property_count" = "1"
286 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
287 register "property_list[0].name" = ""realtek,jd-src""
288 register "property_list[0].integer" = "1"
289 device i2c 1a on end
290 end
291 end #I2C 4
Wisley Cheneb07e4c2021-08-05 18:10:43 +0600292 device pci 1f.0 on
293 chip drivers/pc80/tpm
294 device pnp 0c31.0 on end # Discrete TPM
295 end # chip drivers/pc80/tpm
296 end # PCH eSPI
297 device pci 1e.2 off end # GSPI 0
Wisley Chena17ffd22021-05-21 14:11:10 +0600298 device pci 1f.3 on
299 chip drivers/generic/max98357a
300 register "hid" = ""MX98360A""
301 register "sdmode_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_D17)"
302 device generic 0 on end
303 end
304 end # Intel HDA
305 end
306end