blob: 6ce7aa4560b91f76a1f7868b5dc40d9a2aa3aa75 [file] [log] [blame]
Michał Żygowski48be6b22019-06-27 12:19:18 +02001chip 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 | DSX_DIS_AC_PRESENT_PD"
Felix Singer743242b2023-06-16 01:33:25 +02009 register "s0ix_enable" = true
Michał Żygowski48be6b22019-06-27 12:19:18 +020010
11 register "gpe0_dw0" = "GPP_B"
12 register "gpe0_dw1" = "GPP_D"
13 register "gpe0_dw2" = "GPP_E"
14
15 register "gen1_dec" = "0x00fc0201"
16 register "gen2_dec" = "0x007c0a01"
17 register "gen3_dec" = "0x000c03e1"
18 register "gen4_dec" = "0x001c02e1"
19
Michał Żygowski48be6b22019-06-27 12:19:18 +020020 register "eist_enable" = "1"
21
22 # Disable DPTF
23 register "dptf_enable" = "0"
24
Michał Żygowski48be6b22019-06-27 12:19:18 +020025 # Enable SERIRQ continuous
26 register "serirq_mode" = "SERIRQ_CONTINUOUS"
27
28 register "tcc_offset" = "5" # TCC of 95C
29
30 # FSP Configuration
Michał Żygowski48be6b22019-06-27 12:19:18 +020031 register "SataSalpSupport" = "0"
Michał Żygowski48be6b22019-06-27 12:19:18 +020032 register "DspEnable" = "0"
33 register "IoBufferOwnership" = "0"
Michał Żygowski48be6b22019-06-27 12:19:18 +020034 register "SkipExtGfxScan" = "1"
Michał Żygowski48be6b22019-06-27 12:19:18 +020035 register "SaGv" = "SaGv_Enabled"
Michał Żygowski48be6b22019-06-27 12:19:18 +020036 register "IslVrCmd" = "2"
37 register "PmConfigSlpS3MinAssert" = "2" # 50ms
38 register "PmConfigSlpS4MinAssert" = "4" # 4s
39 register "PmConfigSlpSusMinAssert" = "1" # 500ms
40 register "PmConfigSlpAMinAssert" = "3" # 2s
41
Michał Żygowski48be6b22019-06-27 12:19:18 +020042 # VR Settings Configuration for 4 Domains
43 #+----------------+-------+-------+-------+-------+
44 #| Domain/Setting | SA | IA | GTUS | GTS |
45 #+----------------+-------+-------+-------+-------+
46 #| Psi1Threshold | 20A | 20A | 20A | 20A |
47 #| Psi2Threshold | 4A | 5A | 5A | 5A |
48 #| Psi3Threshold | 1A | 1A | 1A | 1A |
49 #| Psi3Enable | 1 | 1 | 1 | 1 |
50 #| Psi4Enable | 1 | 1 | 1 | 1 |
51 #| ImonSlope | 0 | 0 | 0 | 0 |
52 #| ImonOffset | 0 | 0 | 0 | 0 |
53 #| IccMax | 7A | 34A | 35A | 35A |
54 #| VrVoltageLimit | 1.52V | 1.52V | 1.52V | 1.52V |
55 #| AcLoadline(ohm)| 10.3m | 2.4m | 3.1m | 3.1m |
56 #| DcLoadline(ohm)| 10.3m | 2.4m | 3.1m | 3.1m |
57 #+----------------+-------+-------+-------+-------+
58 #Note: IccMax settings are moved to SoC code
59 register "domain_vr_config[VR_SYSTEM_AGENT]" = "{
60 .vr_config_enable = 1,
61 .psi1threshold = VR_CFG_AMP(20),
62 .psi2threshold = VR_CFG_AMP(4),
63 .psi3threshold = VR_CFG_AMP(1),
64 .psi3enable = 1,
65 .psi4enable = 1,
66 .imon_slope = 0x0,
67 .imon_offset = 0x0,
68 .voltage_limit = 1520,
69 }"
70
71 register "domain_vr_config[VR_IA_CORE]" = "{
72 .vr_config_enable = 1,
73 .psi1threshold = VR_CFG_AMP(20),
74 .psi2threshold = VR_CFG_AMP(5),
75 .psi3threshold = VR_CFG_AMP(1),
76 .psi3enable = 1,
77 .psi4enable = 1,
78 .imon_slope = 0x0,
79 .imon_offset = 0x0,
80 .voltage_limit = 1520,
81 }"
82
83 register "domain_vr_config[VR_GT_UNSLICED]" = "{
84 .vr_config_enable = 1,
85 .psi1threshold = VR_CFG_AMP(20),
86 .psi2threshold = VR_CFG_AMP(5),
87 .psi3threshold = VR_CFG_AMP(1),
88 .psi3enable = 1,
89 .psi4enable = 1,
90 .imon_slope = 0x0,
91 .imon_offset = 0x0,
92 .voltage_limit = 1520,
93 }"
94
95 register "domain_vr_config[VR_GT_SLICED]" = "{
96 .vr_config_enable = 1,
97 .psi1threshold = VR_CFG_AMP(20),
98 .psi2threshold = VR_CFG_AMP(5),
99 .psi3threshold = VR_CFG_AMP(1),
100 .psi3enable = 1,
101 .psi4enable = 1,
102 .imon_slope = 0x0,
103 .imon_offset = 0x0,
104 .voltage_limit = 1520,
105 }"
106
107 # Send an extra VR mailbox command for the PS4 exit issue
108 register "SendVrMbxCmd" = "2"
109
110 # Enable SATA ports 1,2
111 register "SataPortsEnable[0]" = "1"
112 register "SataPortsEnable[1]" = "1"
113 register "SataPortsEnable[2]" = "0"
114 register "SataPortsDevSlp[0]" = "0"
115 register "SataPortsDevSlp[1]" = "0"
116
117 # Enable Root ports. 1-6 for LAN and Root Port 9
118 register "PcieRpEnable[0]" = "1"
119 register "PcieRpEnable[1]" = "1"
120 register "PcieRpEnable[2]" = "1"
121 register "PcieRpEnable[3]" = "1"
122 register "PcieRpEnable[4]" = "1"
123 register "PcieRpEnable[5]" = "1"
124 register "PcieRpEnable[8]" = "1" # mPCIe WiFi
125
126 # Enable Advanced Error Reporting for RP 1-6, 9
127 register "PcieRpAdvancedErrorReporting[0]" = "1"
128 register "PcieRpAdvancedErrorReporting[1]" = "1"
129 register "PcieRpAdvancedErrorReporting[2]" = "1"
130 register "PcieRpAdvancedErrorReporting[3]" = "1"
131 register "PcieRpAdvancedErrorReporting[4]" = "1"
132 register "PcieRpAdvancedErrorReporting[5]" = "1"
133 register "PcieRpAdvancedErrorReporting[8]" = "1"
134
135 # Enable Latency Tolerance Reporting Mechanism RP 1-6, 9
136 register "PcieRpLtrEnable[0]" = "1"
137 register "PcieRpLtrEnable[1]" = "1"
138 register "PcieRpLtrEnable[2]" = "1"
139 register "PcieRpLtrEnable[3]" = "1"
140 register "PcieRpLtrEnable[4]" = "1"
141 register "PcieRpLtrEnable[5]" = "1"
142 register "PcieRpLtrEnable[8]" = "1"
143
144 # Enable RP 9 CLKREQ# support
145 register "PcieRpClkReqSupport[8]" = "1"
146 # RP 9 uses CLKREQ0#
147 register "PcieRpClkReqNumber[8]" = "0"
148
149 # Clocks 0-5 for RP 1-6
150 register "PcieRpClkSrcNumber[0]" = "0"
151 register "PcieRpClkSrcNumber[1]" = "1"
152 register "PcieRpClkSrcNumber[2]" = "2"
153 register "PcieRpClkSrcNumber[3]" = "3"
154 register "PcieRpClkSrcNumber[4]" = "4"
155 register "PcieRpClkSrcNumber[5]" = "5"
156 # RP 9 shares CLKSRC5# with RP 6
157 register "PcieRpClkSrcNumber[8]" = "5"
158
159
160 # USB 2.0 enable ports 1-8, disable ports 9-12
161 register "usb2_ports[0]" = "USB2_PORT_SHORT(OC_SKIP)" # TYPE-A Port
162 register "usb2_ports[1]" = "USB2_PORT_SHORT(OC_SKIP)" # TYPE-A Port
163 register "usb2_ports[2]" = "USB2_PORT_SHORT(OC_SKIP)" # TYPE-A Port
164 register "usb2_ports[3]" = "USB2_PORT_SHORT(OC_SKIP)" # TYPE-A Port
165 register "usb2_ports[4]" = "USB2_PORT_SHORT(OC_SKIP)" # Type-A Port
166 register "usb2_ports[5]" = "USB2_PORT_SHORT(OC_SKIP)" # TYPE-A Port
167 register "usb2_ports[6]" = "USB2_PORT_SHORT(OC_SKIP)" # TYPE-A Port
168 register "usb2_ports[7]" = "USB2_PORT_SHORT(OC_SKIP)" # mPCIe slot
Michał Żygowski48be6b22019-06-27 12:19:18 +0200169
170 # USB 3.0 enable ports 1-4, disable ports 5-6
171 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)" # TYPE-A Port
172 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # TYPE-A Port
173 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)" # TYPE-A Port
174 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # TYPE-A Port
Michał Żygowski48be6b22019-06-27 12:19:18 +0200175
Felix Singer21b5a9a2023-10-23 07:26:28 +0200176 register "SerialIoDevMode" = "{
177 [PchSerialIoIndexI2C0] = PchSerialIoDisabled,
178 [PchSerialIoIndexI2C1] = PchSerialIoDisabled,
179 [PchSerialIoIndexI2C2] = PchSerialIoDisabled,
180 [PchSerialIoIndexI2C3] = PchSerialIoDisabled,
181 [PchSerialIoIndexI2C4] = PchSerialIoDisabled,
182 [PchSerialIoIndexI2C5] = PchSerialIoDisabled,
183 [PchSerialIoIndexSpi0] = PchSerialIoDisabled,
184 [PchSerialIoIndexSpi1] = PchSerialIoDisabled,
185 [PchSerialIoIndexUart0] = PchSerialIoDisabled,
186 [PchSerialIoIndexUart1] = PchSerialIoDisabled,
187 [PchSerialIoIndexUart2] = PchSerialIoDisabled,
Michał Żygowski48be6b22019-06-27 12:19:18 +0200188 }"
189
Michał Żygowski48be6b22019-06-27 12:19:18 +0200190 device domain 0 on
Felix Singer1f7510f2023-11-12 18:34:28 +0000191 device ref igpu on end
192 device ref south_xhci on end
193 device ref heci1 on end
194 device ref sata on end
195 device ref pcie_rp1 on end
196 device ref pcie_rp2 on end
197 device ref pcie_rp3 on end
198 device ref pcie_rp4 on end
199 device ref pcie_rp5 on end
200 device ref pcie_rp6 on end
201 device ref pcie_rp9 on
202 # WIFI
Michał Żygowski48be6b22019-06-27 12:19:18 +0200203 smbios_slot_desc
204 "SlotTypePciExpressMini52pinWithoutBSKO"
205 "SlotLengthShort" "WIFI1" "SlotDataBusWidth1X"
206 end
Felix Singer1f7510f2023-11-12 18:34:28 +0000207 device ref lpc_espi on
Michał Żygowski48be6b22019-06-27 12:19:18 +0200208 chip superio/ite/it8772f
Joel Linnfb516612024-03-29 14:08:35 +0100209 register "TMPIN1.mode" = "THERMAL_RESISTOR"
210 register "TMPIN2.mode" = "THERMAL_RESISTOR"
211 register "TMPIN3.mode" = "THERMAL_PECI"
Michał Żygowski48be6b22019-06-27 12:19:18 +0200212 # FAN2 available on fan header but unused
213 device pnp 2e.0 off end # FDC
214 device pnp 2e.1 on # Serial Port 1
215 io 0x60 = 0x3f8
216 irq 0x70 = 4
217 end
218 device pnp 2e.4 on # Environment Controller
219 io 0x60 = 0xa40
220 io 0x62 = 0xa30
221 irq 0x70 = 9
222 end
223 device pnp 2e.5 off end # Keyboard
224 device pnp 2e.6 off end # Mouse
225 device pnp 2e.7 off end # GPIO
226 device pnp 2e.a off end # IR
227 end
Felix Singer1f7510f2023-11-12 18:34:28 +0000228 end
229 device ref smbus on end
Michał Żygowski48be6b22019-06-27 12:19:18 +0200230 end
Michał Żygowski7896b8c2020-06-19 17:15:51 +0200231 chip drivers/crb
232 device mmio 0xfed40000 on end
233 end
Michał Żygowski48be6b22019-06-27 12:19:18 +0200234end