blob: 08ba50607b46c3db00919861662dc8593fc7eac5 [file] [log] [blame]
Youness Alaoui047475c2017-05-08 16:50:23 -04001chip soc/intel/skylake
2
3 # Enable deep Sx states
4 register "deep_s3_enable_ac" = "0"
5 register "deep_s3_enable_dc" = "0"
Youness Alaouic5b96582017-06-19 20:47:27 -04006 register "deep_s5_enable_ac" = "0"
7 register "deep_s5_enable_dc" = "0"
Youness Alaoui047475c2017-05-08 16:50:23 -04008 register "deep_sx_config" = "DSX_EN_LAN_WAKE_PIN"
9
Youness Alaoui0601f1e2018-02-09 18:44:45 -050010 register "eist_enable" = "1"
11 register "VmxEnable" = "1"
12
Youness Alaouicb8f04d2018-03-02 16:12:04 -050013 # Set the Thermal Control Circuit (TCC) activaction value to 95C
14 # even though FSP integration guide says to set it to 100C for SKL-U
15 # (offset at 0), because when the TCC activates at 100C, the CPU
16 # will have already shut itself down from overheating protection.
17 register "tcc_offset" = "5" # TCC of 95C
18
Youness Alaoui047475c2017-05-08 16:50:23 -040019 # GPE configuration
20 # Note that GPE events called out in ASL code rely on this
21 # route. i.e. If this route changes then the affected GPE
22 # offset bits also need to be changed.
Youness Alaoui34a30a62017-05-25 13:25:41 -050023 register "gpe0_dw0" = "GPP_C"
Youness Alaoui047475c2017-05-08 16:50:23 -040024 register "gpe0_dw1" = "GPP_D"
25 register "gpe0_dw2" = "GPP_E"
26
Youness Alaoui6aa28d92018-03-13 16:53:30 -040027 # EC host command ranges are in 0x380-0x383 & 0x80-0x8f
28 register "gen1_dec" = "0x00000381"
29 register "gen2_dec" = "0x000c0081"
Youness Alaoui047475c2017-05-08 16:50:23 -040030
31 # Enable "Intel Speed Shift Technology"
32 register "speed_shift_enable" = "1"
33
Youness Alaoui3f42a26b2018-03-20 18:32:23 -040034 # Disable DPTF
35 register "dptf_enable" = "0"
Youness Alaoui047475c2017-05-08 16:50:23 -040036
37 # FSP Configuration
38 register "ProbelessTrace" = "0"
39 register "EnableLan" = "0"
Youness Alaoui9d8cd502017-05-25 15:30:35 -050040 register "EnableSata" = "1"
Youness Alaoui047475c2017-05-08 16:50:23 -040041 register "SataSalpSupport" = "0"
42 register "SataMode" = "0"
Youness Alaoui9d8cd502017-05-25 15:30:35 -050043 register "SataPortsEnable[0]" = "1"
Youness Alaouic5b96582017-06-19 20:47:27 -040044 register "SataPortsEnable[1]" = "0"
Youness Alaoui9d8cd502017-05-25 15:30:35 -050045 register "SataPortsEnable[2]" = "1"
Youness Alaouic5b96582017-06-19 20:47:27 -040046 register "SataPortsDevSlp[0]" = "0"
47 register "SataPortsDevSlp[2]" = "0"
Matt DeVillierfb1cd092017-06-22 15:54:07 -040048 register "SataSpeedLimit" = "2"
Youness Alaoui047475c2017-05-08 16:50:23 -040049 register "EnableAzalia" = "1"
Youness Alaouieacac202017-05-17 17:16:09 -040050 register "DspEnable" = "0"
51 register "IoBufferOwnership" = "0"
Youness Alaoui047475c2017-05-08 16:50:23 -040052 register "EnableTraceHub" = "0"
Youness Alaoui047475c2017-05-08 16:50:23 -040053 register "SsicPortEnable" = "0"
54 register "SmbusEnable" = "1"
55 register "Cio2Enable" = "0"
Youness Alaoui9d8cd502017-05-25 15:30:35 -050056 register "ScsEmmcEnabled" = "0"
57 register "ScsEmmcHs400Enabled" = "0"
Youness Alaoui047475c2017-05-08 16:50:23 -040058 register "ScsSdCardEnabled" = "0"
59 register "IshEnable" = "0"
60 register "PttSwitch" = "0"
61 register "InternalGfx" = "1"
62 register "SkipExtGfxScan" = "1"
63 register "Device4Enable" = "1"
64 register "HeciEnabled" = "0"
Youness Alaoui047475c2017-05-08 16:50:23 -040065 register "SaGv" = "3"
66 register "SerialIrqConfigSirqEnable" = "1"
Elyes HAOUASb0f19882018-06-09 11:59:00 +020067 register "PmConfigSlpS3MinAssert" = "2" # 50ms
68 register "PmConfigSlpS4MinAssert" = "1" # 1s
69 register "PmConfigSlpSusMinAssert" = "3" # 500ms
70 register "PmConfigSlpAMinAssert" = "3" # 2s
Matt DeVillier0ff3b732017-05-25 15:31:49 -050071 register "PmTimerDisabled" = "0"
Youness Alaoui047475c2017-05-08 16:50:23 -040072
73 register "pirqa_routing" = "PCH_IRQ11"
74 register "pirqb_routing" = "PCH_IRQ10"
75 register "pirqc_routing" = "PCH_IRQ11"
76 register "pirqd_routing" = "PCH_IRQ11"
77 register "pirqe_routing" = "PCH_IRQ11"
78 register "pirqf_routing" = "PCH_IRQ11"
79 register "pirqg_routing" = "PCH_IRQ11"
80 register "pirqh_routing" = "PCH_IRQ11"
81
Matt DeVillierfb1cd092017-06-22 15:54:07 -040082 # VR Settings Configuration for 4 Domains
Youness Alaoui3f42a26b2018-03-20 18:32:23 -040083 #+----------------+-----------+-----------+-------------+----------+
84 #| Domain/Setting | SA | IA | GT Unsliced | GT |
85 #+----------------+-----------+-----------+-------------+----------+
86 #| Psi1Threshold | 20A | 20A | 20A | 20A |
87 #| Psi2Threshold | 4A | 5A | 5A | 5A |
88 #| Psi3Threshold | 1A | 1A | 1A | 1A |
89 #| Psi3Enable | 1 | 1 | 1 | 1 |
90 #| Psi4Enable | 1 | 1 | 1 | 1 |
91 #| ImonSlope | 0 | 0 | 0 | 0 |
92 #| ImonOffset | 0 | 0 | 0 | 0 |
93 #| IccMax | 7A | 34A | 35A | 35A |
94 #| VrVoltageLimit | 1.52V | 1.52V | 1.52V | 1.52V |
95 #| AC LoadLine | 15 mOhm | 5.7 mOhm | 5.2 mOhm | 5.2 mOhm |
96 #| DC LoadLine | 14.3 mOhm | 4.83 mOhm | 4.2 mOhm | 4.2 mOhm |
97 #+----------------+-----------+-----------+-------------+----------+
Youness Alaoui047475c2017-05-08 16:50:23 -040098 register "domain_vr_config[VR_SYSTEM_AGENT]" = "{
99 .vr_config_enable = 1,
100 .psi1threshold = VR_CFG_AMP(20),
101 .psi2threshold = VR_CFG_AMP(4),
102 .psi3threshold = VR_CFG_AMP(1),
103 .psi3enable = 1,
104 .psi4enable = 1,
105 .imon_slope = 0x0,
106 .imon_offset = 0x0,
107 .icc_max = VR_CFG_AMP(7),
108 .voltage_limit = 1520,
Youness Alaoui3f42a26b2018-03-20 18:32:23 -0400109 .ac_loadline = 1500,
110 .dc_loadline = 1430,
Youness Alaoui047475c2017-05-08 16:50:23 -0400111 }"
112
113 register "domain_vr_config[VR_IA_CORE]" = "{
114 .vr_config_enable = 1,
115 .psi1threshold = VR_CFG_AMP(20),
116 .psi2threshold = VR_CFG_AMP(5),
117 .psi3threshold = VR_CFG_AMP(1),
118 .psi3enable = 1,
119 .psi4enable = 1,
120 .imon_slope = 0x0,
121 .imon_offset = 0x0,
122 .icc_max = VR_CFG_AMP(34),
123 .voltage_limit = 1520,
Youness Alaoui3f42a26b2018-03-20 18:32:23 -0400124 .ac_loadline = 570,
125 .dc_loadline = 483,
Youness Alaoui047475c2017-05-08 16:50:23 -0400126 }"
127
Youness Alaoui047475c2017-05-08 16:50:23 -0400128 register "domain_vr_config[VR_GT_UNSLICED]" = "{
129 .vr_config_enable = 1,
130 .psi1threshold = VR_CFG_AMP(20),
131 .psi2threshold = VR_CFG_AMP(5),
132 .psi3threshold = VR_CFG_AMP(1),
133 .psi3enable = 1,
134 .psi4enable = 1,
135 .imon_slope = 0x0,
136 .imon_offset = 0x0,
137 .icc_max = VR_CFG_AMP(35),
138 .voltage_limit = 1520,
Youness Alaoui3f42a26b2018-03-20 18:32:23 -0400139 .ac_loadline = 520,
140 .dc_loadline = 420,
Youness Alaoui047475c2017-05-08 16:50:23 -0400141 }"
142
143 register "domain_vr_config[VR_GT_SLICED]" = "{
144 .vr_config_enable = 1,
145 .psi1threshold = VR_CFG_AMP(20),
146 .psi2threshold = VR_CFG_AMP(5),
147 .psi3threshold = VR_CFG_AMP(1),
148 .psi3enable = 1,
149 .psi4enable = 1,
150 .imon_slope = 0x0,
151 .imon_offset = 0x0,
152 .icc_max = VR_CFG_AMP(35),
153 .voltage_limit = 1520,
Youness Alaoui3f42a26b2018-03-20 18:32:23 -0400154 .ac_loadline = 520,
155 .dc_loadline = 420,
Youness Alaoui047475c2017-05-08 16:50:23 -0400156 }"
157
Youness Alaouidebb7852017-05-25 15:40:13 -0500158 # Enable Root Ports 5 and 9
159 register "PcieRpEnable[4]" = "1"
160 register "PcieRpEnable[8]" = "1"
Youness Alaoui047475c2017-05-08 16:50:23 -0400161
Youness Alaouia8b35be2017-07-25 14:11:31 -0400162 register "usb2_ports[0]" = "USB2_PORT_TYPE_C(OC_SKIP)" # Type-C Port
163 register "usb2_ports[1]" = "USB2_PORT_MID(OC0)" # Type-A Port (right)
Youness Alaoui047475c2017-05-08 16:50:23 -0400164 register "usb2_ports[2]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth
Matt DeVillier2fa66162017-05-25 15:50:59 -0500165 register "usb2_ports[3]" = "USB2_PORT_FLEX(OC_SKIP)" # Camera
Youness Alaouia8b35be2017-07-25 14:11:31 -0400166 register "usb2_ports[5]" = "USB2_PORT_FLEX(OC2)" # Type-A Port (left)
Matt DeVillier2fa66162017-05-25 15:50:59 -0500167 register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # SD
Youness Alaoui047475c2017-05-08 16:50:23 -0400168
Youness Alaouia8b35be2017-07-25 14:11:31 -0400169 # OC1 should be for Type-C but it seems to not have been wired, according to
170 # the available schematics, even though it is labeled as USB_OC_TYPEC.
171 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-C Port
172 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC0)" # Type-A Port (right)
Matt DeVillier2fa66162017-05-25 15:50:59 -0500173 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-C Port
Youness Alaoui047475c2017-05-08 16:50:23 -0400174
Matt DeVillier2ae27422017-05-25 15:53:29 -0500175 # PL2 override 25W
176 register "tdp_pl2_override" = "25"
Youness Alaoui047475c2017-05-08 16:50:23 -0400177
Matt DeVillier2ae27422017-05-25 15:53:29 -0500178 # Send an extra VR mailbox command for the PS4 exit issue
179 register "SendVrMbxCmd" = "2"
Youness Alaoui047475c2017-05-08 16:50:23 -0400180
Subrata Banikc204aaa2017-08-17 15:49:58 +0530181 # Lock Down
Subrata Banikc4986eb2018-05-09 14:55:09 +0530182 register "common_soc_config" = "{
183 .chipset_lockdown = CHIPSET_LOCKDOWN_COREBOOT,
184 }"
Subrata Banikc204aaa2017-08-17 15:49:58 +0530185
Youness Alaoui047475c2017-05-08 16:50:23 -0400186 device cpu_cluster 0 on
187 device lapic 0 on end
188 end
189 device domain 0 on
190 device pci 00.0 on end # Host Bridge
191 device pci 02.0 on end # Integrated Graphics Device
192 device pci 14.0 on end # USB xHCI
Youness Alaouidebb7852017-05-25 15:40:13 -0500193 device pci 14.1 on end # USB xDCI (OTG)
Youness Alaoui047475c2017-05-08 16:50:23 -0400194 device pci 14.2 on end # Thermal Subsystem
195 device pci 16.0 on end # Management Engine Interface 1
196 device pci 16.1 off end # Management Engine Interface 2
197 device pci 16.2 off end # Management Engine IDE-R
198 device pci 16.3 off end # Management Engine KT Redirection
199 device pci 16.4 off end # Management Engine Interface 3
200 device pci 17.0 on end # SATA
Youness Alaouidebb7852017-05-25 15:40:13 -0500201 device pci 1c.0 on end # PCI Express Port 1
Youness Alaoui047475c2017-05-08 16:50:23 -0400202 device pci 1c.1 off end # PCI Express Port 2
203 device pci 1c.2 off end # PCI Express Port 3
204 device pci 1c.3 off end # PCI Express Port 4
205 device pci 1c.4 off end # PCI Express Port 5
206 device pci 1c.5 off end # PCI Express Port 6
207 device pci 1c.6 off end # PCI Express Port 7
208 device pci 1c.7 off end # PCI Express Port 8
Youness Alaouidebb7852017-05-25 15:40:13 -0500209 device pci 1d.0 on end # PCI Express Port 9
Youness Alaoui047475c2017-05-08 16:50:23 -0400210 device pci 1d.1 off end # PCI Express Port 10
211 device pci 1d.2 off end # PCI Express Port 11
212 device pci 1d.3 off end # PCI Express Port 12
213 device pci 1f.0 on
Elyes HAOUASb0f19882018-06-09 11:59:00 +0200214 chip ec/purism/librem
215 device pnp 0c09.0 on end
216 end
217 chip drivers/pc80/tpm
218 device pnp 0c31.0 on end
219 end
Youness Alaoui047475c2017-05-08 16:50:23 -0400220 end # LPC Interface
Youness Alaouidebb7852017-05-25 15:40:13 -0500221 device pci 1f.1 on end # P2SB
Youness Alaoui047475c2017-05-08 16:50:23 -0400222 device pci 1f.2 on end # Power Management Controller
223 device pci 1f.3 on end # Intel HDA
224 device pci 1f.4 on end # SMBus
225 device pci 1f.5 on end # PCH SPI
226 device pci 1f.6 off end # GbE
227 end
228end