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