blob: c24cd028e1d76c32cf1fd27107b2bfe7df90589d [file] [log] [blame]
Duncan Laurie558602f2018-10-31 10:38:16 -07001chip soc/intel/cannonlake
2
3 # GPE configuration
4 # Note that GPE events called out in ASL code rely on this
5 # route. i.e. If this route changes then the affected GPE
6 # offset bits also need to be changed.
7 register "gpe0_dw0" = "PMC_GPP_A"
8 register "gpe0_dw1" = "PMC_GPP_C"
9 register "gpe0_dw2" = "PMC_GPP_D"
10
Duncan Laurie7a70b662018-10-31 13:19:21 -070011 # EC host command ranges
12 register "gen1_dec" = "0x00040931" # 0x930-0x937
13 register "gen2_dec" = "0x00040941" # 0x940-0x947
14 register "gen3_dec" = "0x000c0951" # 0x950-0x95f
15
Duncan Laurie558602f2018-10-31 10:38:16 -070016 # FSP configuration
17 register "SaGv" = "3"
18 register "HeciEnabled" = "1"
19 register "SataSalpSupport" = "1"
Lijian Zhao6b2c9b12018-12-06 17:07:25 -080020 register "SataMode" = "Sata_AHCI"
Duncan Laurie558602f2018-10-31 10:38:16 -070021 register "SataPortsEnable[0]" = "1"
22 register "SataPortsEnable[1]" = "1"
23 register "SataPortsEnable[2]" = "1"
24 register "SataPortsDevSlp[0]" = "1"
25 register "SataPortsDevSlp[1]" = "1"
26 register "SataPortsDevSlp[2]" = "1"
27 register "InternalGfx" = "1"
28 register "SkipExtGfxScan" = "1"
29 register "VmxEnable" = "1"
30
31 register "speed_shift_enable" = "1"
32 register "s0ix_enable" = "1"
Duncan Laurie833a3a82018-11-20 17:33:12 -080033 register "dptf_enable" = "1"
Lijian Zhao43825e82018-12-13 09:26:39 -080034 register "dmipwroptimize" = "1"
35 register "satapwroptimize" = "1"
Duncan Laurie558602f2018-10-31 10:38:16 -070036
37 # Intel Common SoC Config
Duncan Laurie86b3a3b2018-12-01 17:19:23 -080038 register "usb2_ports[0]" = "USB2_PORT_TYPE_C(OC_SKIP)" # Left Type-C Port
39 register "usb2_ports[1]" = "USB2_PORT_LONG(OC0)" # Right Type-A Port 1
40 register "usb2_ports[2]" = "USB2_PORT_LONG(OC1)" # Left Type-A Port
41 register "usb2_ports[3]" = "USB2_PORT_LONG(OC2)" # Right Type-A Port 2
Duncan Laurie558602f2018-10-31 10:38:16 -070042 register "usb2_ports[4]" = "USB2_PORT_EMPTY"
43 register "usb2_ports[5]" = "USB2_PORT_LONG(OC_SKIP)" # Camera
44 register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # WWAN
45 register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # USH
Duncan Laurie86b3a3b2018-12-01 17:19:23 -080046 register "usb2_ports[8]" = "USB2_PORT_MID(OC_SKIP)" # Fingerprint
47 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # Bluetooth
Duncan Laurie558602f2018-10-31 10:38:16 -070048
Duncan Laurie86b3a3b2018-12-01 17:19:23 -080049 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Left Type-C Port
50 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC0)" # Right Type-A Port 1
51 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC1)" # Left Type-A Port
52 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC2)" # Right Type-A Port 2
53 register "usb3_ports[4]" = "USB3_PORT_DEFAULT(OC_SKIP)" # WWAN
Duncan Laurie558602f2018-10-31 10:38:16 -070054 register "usb3_ports[5]" = "USB3_PORT_EMPTY"
55
56 # Intel Common SoC Config
57 #+-------------------+---------------------------+
58 #| Field | Value |
59 #+-------------------+---------------------------+
60 #| chipset_lockdown | CHIPSET_LOCKDOWN_COREBOOT |
61 #| I2C0 | Touchscreen |
62 #| I2C1 | Touchpad |
63 #| I2C4 | H1 TPM |
64 #+-------------------+---------------------------+
65 register "common_soc_config" = "{
66 .chipset_lockdown = CHIPSET_LOCKDOWN_COREBOOT,
67 .i2c[0] = {
68 .speed = I2C_SPEED_FAST,
69 },
70 .i2c[1] = {
71 .speed = I2C_SPEED_FAST,
Duncan Lauried2226062018-12-05 15:41:03 -080072 .rise_time_ns = 290,
73 .fall_time_ns = 110,
Duncan Laurie558602f2018-10-31 10:38:16 -070074 },
75 .i2c[4] = {
76 .early_init = 1,
77 .speed = I2C_SPEED_FAST,
Duncan Lauried2226062018-12-05 15:41:03 -080078 .rise_time_ns = 280,
79 .fall_time_ns = 90,
Duncan Laurie558602f2018-10-31 10:38:16 -070080 },
81 }"
82
83 # PCIe port 8 for Card Reader
84 register "PcieRpEnable[7]" = "1"
85 register "PcieClkSrcUsage[4]" = "7"
86 register "PcieClkSrcClkReq[4]" = "4"
87
88 # PCIe port 9 for LAN
89 register "PcieRpEnable[8]" = "1"
Lijian Zhaoffe4aed2018-12-06 22:53:44 -080090 register "PcieClkSrcUsage[3]" = "PCIE_CLK_LAN"
Duncan Laurie558602f2018-10-31 10:38:16 -070091 register "PcieClkSrcClkReq[3]" = "3"
92
93 # PCIe port 10 for M.2 2230 WLAN
94 register "PcieRpEnable[9]" = "1"
95 register "PcieClkSrcUsage[1]" = "9"
96 register "PcieClkSrcClkReq[1]" = "1"
97
98 # PCIe port 12 for M.2 3042
99 register "PcieRpEnable[11]" = "1"
100 register "PcieClkSrcUsage[0]" = "11"
101 register "PcieClkSrcClkReq[0]" = "0"
102
103 # PCIe port 13 for M.2 2280 SSD
104 register "PcieRpEnable[12]" = "1"
105 register "PcieClkSrcUsage[2]" = "12"
106 register "PcieClkSrcClkReq[2]" = "2"
107
108 device cpu_cluster 0 on
109 device lapic 0 on end
110 end
111 device domain 0 on
112 device pci 00.0 on end # Host Bridge
113 device pci 02.0 on end # Integrated Graphics Device
114 device pci 04.0 on end # SA Thermal device
115 device pci 12.0 on end # Thermal Subsystem
116 device pci 12.5 off end # UFS SCS
117 device pci 12.6 off end # GSPI #2
Duncan Laurieb0c726b2018-12-05 15:54:52 -0800118 device pci 13.0 off end # Integrated Sensor Hub
Duncan Laurie86b3a3b2018-12-01 17:19:23 -0800119 device pci 14.0 on
120 chip drivers/usb/acpi
121 register "desc" = ""Root Hub""
122 register "type" = "UPC_TYPE_HUB"
123 device usb 0.0 on
124 chip drivers/usb/acpi
125 register "desc" = ""Left Type-C Port""
126 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
127 register "group" = "ACPI_PLD_GROUP(1, 1)"
128 device usb 2.0 on end
129 end
130 chip drivers/usb/acpi
131 register "desc" = ""Right Type-A Port 1""
132 register "type" = "UPC_TYPE_A"
133 register "group" = "ACPI_PLD_GROUP(2, 1)"
134 device usb 2.1 on end
135 end
136 chip drivers/usb/acpi
137 register "desc" = ""Left Type-A Port""
138 register "type" = "UPC_TYPE_A"
139 register "group" = "ACPI_PLD_GROUP(1, 2)"
140 device usb 2.2 on end
141 end
142 chip drivers/usb/acpi
143 register "desc" = ""Right Type-A Port 2""
144 register "type" = "UPC_TYPE_A"
145 register "group" = "ACPI_PLD_GROUP(2, 2)"
146 device usb 2.4 on end
147 end
148 chip drivers/usb/acpi
149 register "desc" = ""Camera""
150 register "type" = "UPC_TYPE_INTERNAL"
151 device usb 2.5 on end
152 end
153 chip drivers/usb/acpi
154 register "desc" = ""WWAN""
155 register "type" = "UPC_TYPE_INTERNAL"
156 device usb 2.6 on end
157 end
158 chip drivers/usb/acpi
159 register "desc" = ""USH""
160 register "type" = "UPC_TYPE_INTERNAL"
161 device usb 2.7 on end
162 end
163 chip drivers/usb/acpi
164 register "desc" = ""Fingerprint""
165 register "type" = "UPC_TYPE_INTERNAL"
166 device usb 2.8 on end
167 end
168 chip drivers/usb/acpi
169 register "desc" = ""Bluetooth""
170 register "type" = "UPC_TYPE_INTERNAL"
171 device usb 2.9 on end
172 end
173 chip drivers/usb/acpi
174 register "desc" = ""Left Type-C Port""
175 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
176 register "group" = "ACPI_PLD_GROUP(1, 1)"
177 device usb 3.0 on end
178 end
179 chip drivers/usb/acpi
180 register "desc" = ""Right Type-A Port 1""
181 register "type" = "UPC_TYPE_USB3_A"
182 register "group" = "ACPI_PLD_GROUP(2, 1)"
183 device usb 3.1 on end
184 end
185 chip drivers/usb/acpi
186 register "desc" = ""Left Type-A Port""
187 register "type" = "UPC_TYPE_USB3_A"
188 register "group" = "ACPI_PLD_GROUP(1, 2)"
189 device usb 3.2 on end
190 end
191 chip drivers/usb/acpi
192 register "desc" = ""Right Type-A Port 2""
193 register "type" = "UPC_TYPE_USB3_A"
194 register "group" = "ACPI_PLD_GROUP(2, 2)"
195 device usb 3.3 on end
196 end
197 chip drivers/usb/acpi
198 register "desc" = ""WWAN""
199 register "type" = "UPC_TYPE_INTERNAL"
200 device usb 3.4 on end
201 end
202 end
203 end
204 end # USB xHCI
Duncan Laurie558602f2018-10-31 10:38:16 -0700205 device pci 14.1 off end # USB xDCI (OTG)
Subrata Banik69b18f02018-11-06 16:59:56 +0530206 chip drivers/intel/wifi
207 register "wake" = "PME_B0_EN_BIT"
208 device pci 14.3 on end # CNVi wifi
209 end
Duncan Laurie558602f2018-10-31 10:38:16 -0700210 device pci 14.5 off end # SDCard
Chris Zhou6a5b53b2018-11-26 16:15:49 +0800211 device pci 15.0 on
212 chip drivers/i2c/generic
213 register "hid" = ""MLFS0000""
214 register "desc" = ""Melfas Touchscreen""
215 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_C23_IRQ)"
216 register "probed" = "1"
217 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E7)"
218 register "enable_delay_ms" = "5"
219 register "has_power_resource" = "1"
220 device i2c 10 on end
221 end
222 end # I2C #0
Duncan Laurie558602f2018-10-31 10:38:16 -0700223 device pci 15.1 on
Chris Zhou40a69f32018-12-12 20:21:38 +0800224 chip drivers/i2c/generic
225 register "hid" = ""ELAN0000""
226 register "desc" = ""ELAN Touchpad""
227 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_B3_IRQ)"
228 register "probed" = "1"
Duncan Laurie558602f2018-10-31 10:38:16 -0700229 device i2c 2c on end
230 end
231 end # I2C #1
232 device pci 15.2 off end # I2C #2
233 device pci 15.3 off end # I2C #3
234 device pci 16.0 on end # Management Engine Interface 1
235 device pci 16.1 off end # Management Engine Interface 2
236 device pci 16.2 off end # Management Engine IDE-R
237 device pci 16.3 off end # Management Engine KT Redirection
238 device pci 16.4 off end # Management Engine Interface 3
239 device pci 16.5 off end # Management Engine Interface 4
240 device pci 17.0 on end # SATA
241 device pci 19.0 on
242 chip drivers/i2c/tpm
243 register "hid" = ""GOOG0005""
244 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_D18_IRQ)"
245 device i2c 50 on end
246 end
247 end # I2C #4
248 device pci 19.1 off end # I2C #5
249 device pci 19.2 on end # UART #2
250 device pci 1a.0 off end # eMMC
251 device pci 1c.0 on end # PCI Express Port 1 (USB)
252 device pci 1c.1 off end # PCI Express Port 2 (USB)
253 device pci 1c.2 off end # PCI Express Port 3 (USB)
254 device pci 1c.3 off end # PCI Express Port 4 (USB)
255 device pci 1c.4 off end # PCI Express Port 5 (USB)
256 device pci 1c.5 off end # PCI Express Port 6
257 device pci 1c.6 off end # PCI Express Port 7
258 device pci 1c.7 on end # PCI Express Port 8
259 device pci 1d.0 on end # PCI Express Port 9
260 device pci 1d.1 on end # PCI Express Port 10
261 device pci 1d.2 off end # PCI Express Port 11
262 device pci 1d.3 on end # PCI Express Port 12
263 device pci 1d.4 on end # PCI Express Port 13 (x4)
264 device pci 1e.0 off end # UART #0
265 device pci 1e.1 off end # UART #1
266 device pci 1e.2 off end # GSPI #0
267 device pci 1e.3 off end # GSPI #1
Duncan Laurie7a70b662018-10-31 13:19:21 -0700268 device pci 1f.0 on
269 chip ec/google/wilco
270 device pnp 0c09.0 on end
271 end
272 end # LPC/eSPI
Duncan Laurie558602f2018-10-31 10:38:16 -0700273 device pci 1f.1 on end # P2SB
274 device pci 1f.2 on end # Power Management Controller
275 device pci 1f.3 on end # Intel HDA
276 device pci 1f.4 on end # SMBus
277 device pci 1f.5 on end # PCH SPI
278 device pci 1f.6 on end # GbE
279 end
280end