blob: e2af00f4ed90739b2be8075688ffbbbc7e1eae3b [file] [log] [blame]
Furquan Shaikh06cd9032016-12-14 12:10:21 -08001chip soc/intel/skylake
2
3 # Enable deep Sx states
4 register "deep_s3_enable" = "1"
5 register "deep_s5_enable" = "1"
6 register "deep_sx_config" = "DSX_EN_LAN_WAKE_PIN | DSX_EN_WAKE_PIN"
7
8 # GPE configuration
9 # Note that GPE events called out in ASL code rely on this
10 # route. i.e. If this route changes then the affected GPE
11 # offset bits also need to be changed.
12 register "gpe0_dw0" = "GPP_B"
13 register "gpe0_dw1" = "GPP_D"
14 register "gpe0_dw2" = "GPP_E"
15
16 # EC host command ranges are in 0x800-0x8ff & 0x200-0x20f
17 register "gen1_dec" = "0x00fc0801"
18 register "gen2_dec" = "0x000c0201"
19 # EC memory map range is 0x900-0x9ff
20 register "gen3_dec" = "0x00fc0901"
21
Sumeet Pawnikard56fae12017-02-20 10:34:01 +053022 # Enable DPTF
23 register "dptf_enable" = "1"
24
Furquan Shaikh06cd9032016-12-14 12:10:21 -080025 # FSP Configuration
26 register "ProbelessTrace" = "0"
27 register "EnableLan" = "0"
28 register "EnableSata" = "0"
29 register "SataSalpSupport" = "0"
30 register "SataMode" = "0"
31 register "SataPortsEnable[0]" = "0"
32 register "EnableAzalia" = "1"
33 register "DspEnable" = "1"
34 register "IoBufferOwnership" = "3"
35 register "EnableTraceHub" = "0"
36 register "XdciEnable" = "0"
37 register "SsicPortEnable" = "0"
38 register "SmbusEnable" = "1"
39 register "Cio2Enable" = "0"
40 register "ScsEmmcEnabled" = "1"
41 register "ScsEmmcHs400Enabled" = "1"
Furquan Shaikhb3b5dd92017-01-11 20:32:55 -080042 register "ScsSdCardEnabled" = "2"
Furquan Shaikh06cd9032016-12-14 12:10:21 -080043 register "IshEnable" = "0"
44 register "PttSwitch" = "0"
45 register "InternalGfx" = "1"
46 register "SkipExtGfxScan" = "1"
47 register "Device4Enable" = "1"
48 register "HeciEnabled" = "0"
49 register "FspSkipMpInit" = "1"
50 register "SaGv" = "3"
51 register "SerialIrqConfigSirqEnable" = "1"
52 register "PmConfigSlpS3MinAssert" = "2" # 50ms
53 register "PmConfigSlpS4MinAssert" = "1" # 1s
54 register "PmConfigSlpSusMinAssert" = "1" # 500ms
55 register "PmConfigSlpAMinAssert" = "3" # 2s
56 register "PmTimerDisabled" = "1"
57 register "SendVrMbxCmd" = "1" # IMVP8 workaround
58
59 register "pirqa_routing" = "PCH_IRQ11"
60 register "pirqb_routing" = "PCH_IRQ10"
61 register "pirqc_routing" = "PCH_IRQ11"
62 register "pirqd_routing" = "PCH_IRQ11"
63 register "pirqe_routing" = "PCH_IRQ11"
64 register "pirqf_routing" = "PCH_IRQ11"
65 register "pirqg_routing" = "PCH_IRQ11"
66 register "pirqh_routing" = "PCH_IRQ11"
67
68 # VR Settings Configuration for 5 Domains
69 #+----------------+-------+-------+-------------+-------------+-------+
70 #| Domain/Setting | SA | IA | Ring Sliced | GT Unsliced | GT |
71 #+----------------+-------+-------+-------------+-------------+-------+
72 #| Psi1Threshold | 20A | 20A | 20A | 20A | 20A |
73 #| Psi2Threshold | 4A | 5A | 5A | 5A | 5A |
74 #| Psi3Threshold | 1A | 1A | 1A | 1A | 1A |
75 #| Psi3Enable | 1 | 1 | 1 | 1 | 1 |
76 #| Psi4Enable | 1 | 1 | 1 | 1 | 1 |
77 #| ImonSlope | 0 | 0 | 0 | 0 | 0 |
78 #| ImonOffset | 0 | 0 | 0 | 0 | 0 |
79 #| IccMax | 7A | 34A | 34A | 35A | 35A |
80 #| VrVoltageLimit | 1.52V | 1.52V | 1.52V | 1.52V | 1.52V |
81 #+----------------+-------+-------+-------------+-------------+-------+
82 register "domain_vr_config[VR_SYSTEM_AGENT]" = "{
83 .vr_config_enable = 1,
84 .psi1threshold = VR_CFG_AMP(20),
85 .psi2threshold = VR_CFG_AMP(4),
86 .psi3threshold = VR_CFG_AMP(1),
87 .psi3enable = 1,
88 .psi4enable = 1,
89 .imon_slope = 0x0,
90 .imon_offset = 0x0,
91 .icc_max = VR_CFG_AMP(7),
92 .voltage_limit = 1520,
93 }"
94
95 register "domain_vr_config[VR_IA_CORE]" = "{
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 .icc_max = VR_CFG_AMP(34),
105 .voltage_limit = 1520,
106 }"
107
108 register "domain_vr_config[VR_RING]" = "{
109 .vr_config_enable = 1,
110 .psi1threshold = VR_CFG_AMP(20),
111 .psi2threshold = VR_CFG_AMP(5),
112 .psi3threshold = VR_CFG_AMP(1),
113 .psi3enable = 1,
114 .psi4enable = 1,
115 .imon_slope = 0x0,
116 .imon_offset = 0x0,
117 .icc_max = VR_CFG_AMP(34),
118 .voltage_limit = 1520,
119 }"
120
121 register "domain_vr_config[VR_GT_UNSLICED]" = "{
122 .vr_config_enable = 1,
123 .psi1threshold = VR_CFG_AMP(20),
124 .psi2threshold = VR_CFG_AMP(5),
125 .psi3threshold = VR_CFG_AMP(1),
126 .psi3enable = 1,
127 .psi4enable = 1,
128 .imon_slope = 0x0,
129 .imon_offset = 0x0,
130 .icc_max = VR_CFG_AMP(35),
131 .voltage_limit = 1520,
132 }"
133
134 register "domain_vr_config[VR_GT_SLICED]" = "{
135 .vr_config_enable = 1,
136 .psi1threshold = VR_CFG_AMP(20),
137 .psi2threshold = VR_CFG_AMP(5),
138 .psi3threshold = VR_CFG_AMP(1),
139 .psi3enable = 1,
140 .psi4enable = 1,
141 .imon_slope = 0x0,
142 .imon_offset = 0x0,
143 .icc_max = VR_CFG_AMP(35),
144 .voltage_limit = 1520,
145 }"
146
147 # Enable Root port 1.
148 register "PcieRpEnable[0]" = "1"
149 # Enable CLKREQ#
150 register "PcieRpClkReqSupport[0]" = "1"
151 # RP 1 uses SRCCLKREQ1#
152 register "PcieRpClkReqNumber[0]" = "1"
153
154 register "usb2_ports[0]" = "USB2_PORT_LONG(OC0)" # Type-C Port 1
155 register "usb2_ports[1]" = "USB2_PORT_MID(OC_SKIP)" # Type-A Port
156 register "usb2_ports[2]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth
157 register "usb2_ports[4]" = "USB2_PORT_LONG(OC1)" # Type-C Port 2
158 register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # Type-A Port
159 register "usb2_ports[8]" = "USB2_PORT_MID(OC_SKIP)" # Type-A Port
160
161 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC0)" # Type-C Port 1
162 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC1)" # Type-C Port 2
163 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A Port
164 register "usb3_ports[3]" = "USB3_PORT_EMPTY" # Empty
165
166 register "i2c_voltage[0]" = "I2C_VOLTAGE_3V3" # Touchscreen
167 register "i2c_voltage[1]" = "I2C_VOLTAGE_3V3" # NFC
168 register "i2c_voltage[2]" = "I2C_VOLTAGE_1V8" # Camera
169 register "i2c_voltage[3]" = "I2C_VOLTAGE_1V8" # Pen
170 register "i2c_voltage[4]" = "I2C_VOLTAGE_1V8" # Camera
171 register "i2c_voltage[5]" = "I2C_VOLTAGE_1V8" # Audio
172
173 # Must leave UART0 enabled or SD/eMMC will not work as PCI
174 register "SerialIoDevMode" = "{
175 [PchSerialIoIndexI2C0] = PchSerialIoPci,
176 [PchSerialIoIndexI2C1] = PchSerialIoPci,
177 [PchSerialIoIndexI2C2] = PchSerialIoPci,
178 [PchSerialIoIndexI2C3] = PchSerialIoPci,
179 [PchSerialIoIndexI2C4] = PchSerialIoPci,
180 [PchSerialIoIndexI2C5] = PchSerialIoPci,
181 [PchSerialIoIndexSpi0] = PchSerialIoPci,
182 [PchSerialIoIndexSpi1] = PchSerialIoPci,
183 [PchSerialIoIndexUart0] = PchSerialIoPci,
184 [PchSerialIoIndexUart1] = PchSerialIoDisabled,
185 [PchSerialIoIndexUart2] = PchSerialIoSkipInit,
186 }"
187
188 register "speed_shift_enable" = "1"
189 register "tdp_pl2_override" = "7"
Sumeet Pawnikard56fae12017-02-20 10:34:01 +0530190 register "tcc_offset" = "10" # TCC of 90C
Furquan Shaikh06cd9032016-12-14 12:10:21 -0800191
Furquan Shaikhd093e4a2017-01-13 17:27:36 -0800192 # Use default SD card detect GPIO configuration
193 register "sdcard_cd_gpio_default" = "GPP_G7"
194
Furquan Shaikh06cd9032016-12-14 12:10:21 -0800195 device cpu_cluster 0 on
196 device lapic 0 on end
197 end
198 device domain 0 on
199 device pci 00.0 on end # Host Bridge
200 device pci 02.0 on end # Integrated Graphics Device
201 device pci 14.0 on end # USB xHCI
202 device pci 14.1 off end # USB xDCI (OTG)
203 device pci 14.2 on end # Thermal Subsystem
Furquan Shaikh13dae932017-01-12 02:06:47 -0800204 device pci 15.0 on
205 chip drivers/i2c/generic
206 register "hid" = ""ATML0001""
207 register "desc" = ""Atmel Touchscreen""
Furquan Shaikh61335082017-02-21 15:52:57 -0800208 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_E7_IRQ)"
Furquan Shaikh13dae932017-01-12 02:06:47 -0800209 register "probed" = "1"
210 device i2c 4b on end
211 end
212 end # I2C #0
Furquan Shaikh06cd9032016-12-14 12:10:21 -0800213 device pci 15.1 on end # I2C #1
214 device pci 15.2 on end # I2C #2
Furquan Shaikhc57c48b2017-02-15 09:53:50 -0800215 device pci 15.3 on
Furquan Shaikh5360c7e2017-02-19 01:18:09 -0800216 chip drivers/i2c/hid
217 register "generic.hid" = ""WCOM50C1""
218 register "generic.desc" = ""WCOM Digitizer""
Furquan Shaikh5b9b5932017-02-21 13:16:30 -0800219 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D1_IRQ)"
Furquan Shaikhc57c48b2017-02-15 09:53:50 -0800220 register "hid_desc_reg_offset" = "0x1"
221 device i2c 0x9 on end
222 end
223 end # I2C #3
Furquan Shaikh06cd9032016-12-14 12:10:21 -0800224 device pci 16.0 on end # Management Engine Interface 1
225 device pci 16.1 off end # Management Engine Interface 2
226 device pci 16.2 off end # Management Engine IDE-R
227 device pci 16.3 off end # Management Engine KT Redirection
228 device pci 16.4 off end # Management Engine Interface 3
229 device pci 17.0 off end # SATA
230 device pci 19.0 on end # UART #2
Rizwan Qureshi7ed1eff2017-01-13 22:22:42 +0530231 device pci 19.1 on
232 chip drivers/i2c/max98927
233 register "interleave_mode" = "1"
234 register "uid" = "0"
235 register "desc" = ""SSM4567 Right Speaker Amp""
236 register "name" = ""MAXR""
237 device i2c 39 on end
238 end
239 chip drivers/i2c/max98927
240 register "interleave_mode" = "1"
241 register "uid" = "1"
242 register "desc" = ""SSM4567 Left Speaker Amp""
243 register "name" = ""MAXL""
244 device i2c 3A on end
245 end
Rizwan Qureshia04ceaa2017-02-07 21:11:45 +0530246 chip drivers/i2c/generic
247 register "hid" = ""10EC5663""
248 register "name" = ""RT53""
249 register "desc" = ""Realtek RT5663""
Furquan Shaikh5b9b5932017-02-21 13:16:30 -0800250 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D9_IRQ)"
Rizwan Qureshia04ceaa2017-02-07 21:11:45 +0530251 register "probed" = "1"
252 device i2c 13 on end
253 end
Rizwan Qureshi7ed1eff2017-01-13 22:22:42 +0530254 end # I2C #5
Furquan Shaikh06cd9032016-12-14 12:10:21 -0800255 device pci 19.2 on end # I2C #4
256 device pci 1c.0 on
257 chip drivers/intel/wifi
258 register "wake" = "GPE0_PCI_EXP"
259 device pci 00.0 on end
260 end
261 end # PCI Express Port 1
262 device pci 1c.1 off end # PCI Express Port 2
263 device pci 1c.2 off end # PCI Express Port 3
264 device pci 1c.3 off end # PCI Express Port 4
265 device pci 1c.4 off end # PCI Express Port 5
266 device pci 1c.5 off end # PCI Express Port 6
267 device pci 1c.6 off end # PCI Express Port 7
268 device pci 1c.7 off end # PCI Express Port 8
269 device pci 1d.0 off end # PCI Express Port 9
270 device pci 1d.1 off end # PCI Express Port 10
271 device pci 1d.2 off end # PCI Express Port 11
272 device pci 1d.3 off end # PCI Express Port 12
273 device pci 1e.0 on end # UART #0
274 device pci 1e.1 off end # UART #1
275 device pci 1e.2 on end # GSPI #0
276 device pci 1e.3 on end # GSPI #1
277 device pci 1e.4 on end # eMMC
278 device pci 1e.5 off end # SDIO
Furquan Shaikhb3b5dd92017-01-11 20:32:55 -0800279 device pci 1e.6 on end # SDCard
Furquan Shaikh06cd9032016-12-14 12:10:21 -0800280 device pci 1f.0 on
281 chip ec/google/chromeec
282 device pnp 0c09.0 on end
283 end
284 end # LPC Interface
285 device pci 1f.1 on end # P2SB
286 device pci 1f.2 on end # Power Management Controller
287 device pci 1f.3 on end # Intel HDA
288 device pci 1f.4 on end # SMBus
289 device pci 1f.5 on end # PCH SPI
290 device pci 1f.6 off end # GbE
291 end
292end