blob: 6725a913cafb500b1808fc995b5174f8376f6ed2 [file] [log] [blame]
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +01001chip soc/intel/skylake
2
3 # Enable deep Sx states
4 register "deep_s3_enable_ac" = "0"
5 register "deep_s3_enable_dc" = "0"
6 register "deep_s5_enable_ac" = "1"
7 register "deep_s5_enable_dc" = "1"
8 register "deep_sx_config" = "DSX_EN_WAKE_PIN"
9
10 register "eist_enable" = "1"
11
12 register "serirq_mode" = "SERIRQ_CONTINUOUS"
13
14 # Set the Thermal Control Circuit (TCC) activation value to 95C
15 # even though FSP integration guide says to set it to 100C for SKL-U
16 # (offset at 0), because when the TCC activates at 100C, the CPU
17 # will have already shut itself down from overheating protection.
18 register "tcc_offset" = "5" # TCC of 95C
19
20 # GPE configuration
21 # Note that GPE events called out in ASL code rely on this
22 # route. i.e. If this route changes then the affected GPE
23 # offset bits also need to be changed.
24 register "gpe0_dw0" = "GPP_C"
25 register "gpe0_dw1" = "GPP_D"
26 register "gpe0_dw2" = "GPP_E"
27
28 register "gen1_dec" = "0x007c0a01" # EC 0xa00-0xa7f
29 register "gen2_dec" = "0x000c03e1" # COM3 port 0x3e0 - 0x3ef
30 register "gen3_dec" = "0x00fc02e1" # COM2/4/5/6 ports 0x2e0 - 0x2ff
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010031
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010032 # Disable DPTF
33 register "dptf_enable" = "0"
34
35 # FSP Configuration
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010036 register "SataSalpSupport" = "0"
Felix Singer9a1b47e2023-10-23 17:37:21 +020037 register "SataPortsEnable" = "{
38 [0] = 1,
39 [1] = 1,
40 [2] = 1,
41 }"
42 register "SataPortsDevSlp" = "{
43 [0] = 0,
44 [1] = 0,
45 [2] = 0,
46 }"
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010047 register "SataSpeedLimit" = "2"
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010048 register "DspEnable" = "1"
49 register "IoBufferOwnership" = "0"
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010050 register "SkipExtGfxScan" = "1"
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010051 register "SaGv" = "SaGv_Enabled"
52 register "PmConfigSlpS3MinAssert" = "2" # 50ms
53 register "PmConfigSlpS4MinAssert" = "1" # 1s
54 register "PmConfigSlpSusMinAssert" = "3" # 500ms
55 register "PmConfigSlpAMinAssert" = "3" # 2s
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010056
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +010057 # VR Settings Configuration for 4 Domains
58 #+----------------+-------+-------+-------------+-------+
59 #| Domain/Setting | SA | IA | GT-Unsliced | GT |
60 #+----------------+-------+-------+-------------+-------+
61 #| Psi1Threshold | 20A | 20A | 20A | 20A |
62 #| Psi2Threshold | 4A | 5A | 5A | 5A |
63 #| Psi3Threshold | 1A | 1A | 1A | 1A |
64 #| Psi3Enable | 1 | 1 | 1 | 1 |
65 #| Psi4Enable | 1 | 1 | 1 | 1 |
66 #| ImonSlope | 0 | 0 | 0 | 0 |
67 #| ImonOffset | 0 | 0 | 0 | 0 |
68 #| VrVoltageLimit | 1.52V | 1.52V | 1.52V | 1.52V |
69 #+----------------+-------+-------+-------------+-------+
70 register "domain_vr_config[VR_SYSTEM_AGENT]" = "{
71 .vr_config_enable = 1,
72 .psi1threshold = VR_CFG_AMP(20),
73 .psi2threshold = VR_CFG_AMP(4),
74 .psi3threshold = VR_CFG_AMP(1),
75 .psi3enable = 1,
76 .psi4enable = 1,
77 .imon_slope = 0x0,
78 .imon_offset = 0x0,
79 .voltage_limit = 1520,
80 }"
81
82 register "domain_vr_config[VR_IA_CORE]" = "{
83 .vr_config_enable = 1,
84 .psi1threshold = VR_CFG_AMP(20),
85 .psi2threshold = VR_CFG_AMP(5),
86 .psi3threshold = VR_CFG_AMP(1),
87 .psi3enable = 1,
88 .psi4enable = 1,
89 .imon_slope = 0x0,
90 .imon_offset = 0x0,
91 .voltage_limit = 1520,
92 }"
93
94 register "domain_vr_config[VR_GT_UNSLICED]" = "{
95 .vr_config_enable = 1,
96 .psi1threshold = VR_CFG_AMP(20),
97 .psi2threshold = VR_CFG_AMP(5),
98 .psi3threshold = VR_CFG_AMP(1),
99 .psi3enable = 1,
100 .psi4enable = 1,
101 .imon_slope = 0x0,
102 .imon_offset = 0x0,
103 .voltage_limit = 1520,
104 }"
105
106 register "domain_vr_config[VR_GT_SLICED]" = "{
107 .vr_config_enable = 1,
108 .psi1threshold = VR_CFG_AMP(20),
109 .psi2threshold = VR_CFG_AMP(5),
110 .psi3threshold = VR_CFG_AMP(1),
111 .psi3enable = 1,
112 .psi4enable = 1,
113 .imon_slope = 0x0,
114 .imon_offset = 0x0,
115 .voltage_limit = 1520,
116 }"
117
118 register "PcieRpEnable[2]" = "1"
119 register "PcieRpEnable[3]" = "1"
120 register "PcieRpEnable[4]" = "1"
121 register "PcieRpEnable[8]" = "1"
122 register "PcieRpEnable[9]" = "1"
123 register "PcieRpEnable[10]" = "1"
124 register "PcieRpEnable[11]" = "1"
125
126 register "PcieRpClkSrcNumber[0]" = "0"
127 register "PcieRpClkSrcNumber[3]" = "1"
128 register "PcieRpClkSrcNumber[4]" = "2"
129 register "PcieRpClkSrcNumber[8]" = "3"
130 register "PcieRpClkSrcNumber[9]" = "3"
131 register "PcieRpClkSrcNumber[10]" = "3"
132 register "PcieRpClkSrcNumber[11]" = "3"
133
Felix Singer9a1b47e2023-10-23 17:37:21 +0200134 register "usb2_ports" = "{
135 [0] = USB2_PORT_MID(OC_SKIP), /* Type-A Port (right) */
136 [1] = USB2_PORT_MID(OC_SKIP), /* Type-A Port (right) */
137 [2] = USB2_PORT_MID(OC_SKIP), /* WiFi */
138 [3] = USB2_PORT_MID(OC_SKIP), /* F_USB3 header */
139 [4] = USB2_PORT_MID(OC_SKIP), /* F_USB3 header */
140 [5] = USB2_PORT_MID(OC_SKIP), /* Type-A Port (left) */
141 [6] = USB2_PORT_MID(OC_SKIP), /* Type-A Port (left) */
142 [7] = USB2_PORT_MID(OC_SKIP), /* GL850G for F_USB1 and F_USB2 headers */
143 }"
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100144
Felix Singer9a1b47e2023-10-23 17:37:21 +0200145 register "usb3_ports" = "{
146 [0] = USB3_PORT_DEFAULT(OC_SKIP), /* Type-A Port (right) */
147 [1] = USB3_PORT_DEFAULT(OC_SKIP), /* Type-A Port (right) */
148 [2] = USB3_PORT_DEFAULT(OC_SKIP), /* F_USB3 header */
149 [3] = USB3_PORT_DEFAULT(OC_SKIP), /* F_USB3 header */
150 }"
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100151
152 # PL2 override 25W
Sumeet R Pawnikar97c54642020-05-10 01:24:11 +0530153 register "power_limits_config" = "{
154 .tdp_pl2_override = 25,
155 }"
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100156
157 # Send an extra VR mailbox command for the PS4 exit issue
158 register "SendVrMbxCmd" = "2"
159
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100160 device domain 0 on
Felix Singerc3ec1442023-11-12 17:35:05 +0000161 device ref igpu on end
162 device ref sa_thermal on end
163 device ref south_xhci on end
164 device ref south_xdci on end
165 device ref thermal on end
166 device ref heci1 on end
167 device ref sata on end
168 device ref pcie_rp3 on end
169 device ref pcie_rp5 on
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100170 smbios_slot_desc "SlotTypePciExpressMini52pinWithoutBSKO"
171 "SlotLengthOther" "MPCIE_WIFI1" "SlotDataBusWidth1X"
172 end
Felix Singerc3ec1442023-11-12 17:35:05 +0000173 device ref pcie_rp6 on end
174 device ref pcie_rp9 on
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100175 smbios_slot_desc "SlotTypeM2Socket3" "SlotLengthOther"
176 "SSD_M.2 2242/2280" "SlotDataBusWidth4X"
177 end
Felix Singerc3ec1442023-11-12 17:35:05 +0000178 device ref pcie_rp10 on end
179 device ref pcie_rp11 on end
180 device ref pcie_rp12 on end
181 device ref lpc_espi on
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100182 chip drivers/pc80/tpm
183 device pnp 0c31.0 on end
184 end
185 chip superio/ite/it8786e
186 register "TMPIN1.mode" = "THERMAL_PECI"
187 register "TMPIN1.offset" = "100"
188 register "TMPIN1.min" = "128"
189 register "TMPIN2.mode" = "THERMAL_RESISTOR"
190 register "TMPIN2.min" = "128"
191 register "TMPIN3.mode" = "THERMAL_MODE_DISABLED"
192 register "ec.vin_mask" = "VIN_ALL"
193 # FAN1 is CPU fan (on board)
194 register "FAN1.mode" = "FAN_SMART_AUTOMATIC"
195 register "FAN1.smart.tmpin" = " 1"
196 register "FAN1.smart.tmp_off" = "35"
197 register "FAN1.smart.tmp_start" = "60"
198 register "FAN1.smart.tmp_full" = "85"
199 register "FAN1.smart.tmp_delta" = " 2"
200 register "FAN1.smart.pwm_start" = "20"
201 register "FAN1.smart.slope" = "24"
202 # FAN2 is system fan (4 pin connector populated)
203 #register "FAN2.mode" = "FAN_MODE_OFF"
204 # FAN3 PWM is used for LVDS backlight control
205 #register "FAN3.mode" = "FAN_MODE_OFF"
206
207 device pnp 2e.1 on # COM 1
208 io 0x60 = 0x3f8
209 irq 0x70 = 4
210 end
211 device pnp 2e.2 on # COM 2
212 io 0x60 = 0x2f8
213 irq 0x70 = 3
214 end
215 device pnp 2e.3 on # Printer Port
216 io 0x60 = 0x378
217 io 0x62 = 0x778
218 irq 0x70 = 5
219 drq 0x74 = 3
220 end
221 device pnp 2e.4 on # Environment Controller
222 io 0x60 = 0xa40
223 io 0x62 = 0xa30
224 irq 0x70 = 9
225 end
226 device pnp 2e.5 on # Keyboard
227 io 0x60 = 0x60
228 io 0x62 = 0x64
229 irq 0x70 = 1
230 end
231 device pnp 2e.6 on # Mouse
232 irq 0x70 = 12
233 end
234 device pnp 2e.7 off # GPIO
235 end
236 device pnp 2e.8 on # COM 3
237 io 0x60 = 0x3e8
238 irq 0x70 = 3
239 end
240 device pnp 2e.9 on # COM 4
241 io 0x60 = 0x2e8
242 irq 0x70 = 4
243 end
244 device pnp 2e.a off end # CIR
245 device pnp 2e.b on # COM 5
246 io 0x60 = 0x2f0
247 irq 0x70 = 3
248 end
249 device pnp 2e.c on # COM 6
250 io 0x60 = 0x2e0
251 irq 0x70 = 4
252 end
253 end
Felix Singerc3ec1442023-11-12 17:35:05 +0000254 end
255 device ref hda on end
256 device ref smbus on end
257 device ref fast_spi on end
Michał Żygowskib9f9f6c2018-12-21 12:23:27 +0100258 end
259end