blob: 47abadc5d98bdfceb41d98f04f85d4e77435941f [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
Duncan Laurie558602f2018-10-31 10:38:16 -070098 # PCIe port 13 for M.2 2280 SSD
99 register "PcieRpEnable[12]" = "1"
100 register "PcieClkSrcUsage[2]" = "12"
101 register "PcieClkSrcClkReq[2]" = "2"
102
103 device cpu_cluster 0 on
104 device lapic 0 on end
105 end
106 device domain 0 on
107 device pci 00.0 on end # Host Bridge
108 device pci 02.0 on end # Integrated Graphics Device
109 device pci 04.0 on end # SA Thermal device
110 device pci 12.0 on end # Thermal Subsystem
111 device pci 12.5 off end # UFS SCS
112 device pci 12.6 off end # GSPI #2
Duncan Laurieb0c726b2018-12-05 15:54:52 -0800113 device pci 13.0 off end # Integrated Sensor Hub
Duncan Laurie86b3a3b2018-12-01 17:19:23 -0800114 device pci 14.0 on
115 chip drivers/usb/acpi
116 register "desc" = ""Root Hub""
117 register "type" = "UPC_TYPE_HUB"
118 device usb 0.0 on
119 chip drivers/usb/acpi
120 register "desc" = ""Left Type-C Port""
121 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
122 register "group" = "ACPI_PLD_GROUP(1, 1)"
123 device usb 2.0 on end
124 end
125 chip drivers/usb/acpi
126 register "desc" = ""Right Type-A Port 1""
127 register "type" = "UPC_TYPE_A"
128 register "group" = "ACPI_PLD_GROUP(2, 1)"
129 device usb 2.1 on end
130 end
131 chip drivers/usb/acpi
132 register "desc" = ""Left Type-A Port""
133 register "type" = "UPC_TYPE_A"
134 register "group" = "ACPI_PLD_GROUP(1, 2)"
135 device usb 2.2 on end
136 end
137 chip drivers/usb/acpi
138 register "desc" = ""Right Type-A Port 2""
139 register "type" = "UPC_TYPE_A"
140 register "group" = "ACPI_PLD_GROUP(2, 2)"
141 device usb 2.4 on end
142 end
143 chip drivers/usb/acpi
144 register "desc" = ""Camera""
145 register "type" = "UPC_TYPE_INTERNAL"
146 device usb 2.5 on end
147 end
148 chip drivers/usb/acpi
149 register "desc" = ""WWAN""
150 register "type" = "UPC_TYPE_INTERNAL"
151 device usb 2.6 on end
152 end
153 chip drivers/usb/acpi
154 register "desc" = ""USH""
155 register "type" = "UPC_TYPE_INTERNAL"
156 device usb 2.7 on end
157 end
158 chip drivers/usb/acpi
159 register "desc" = ""Fingerprint""
160 register "type" = "UPC_TYPE_INTERNAL"
161 device usb 2.8 on end
162 end
163 chip drivers/usb/acpi
164 register "desc" = ""Bluetooth""
165 register "type" = "UPC_TYPE_INTERNAL"
166 device usb 2.9 on end
167 end
168 chip drivers/usb/acpi
169 register "desc" = ""Left Type-C Port""
170 register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
171 register "group" = "ACPI_PLD_GROUP(1, 1)"
172 device usb 3.0 on end
173 end
174 chip drivers/usb/acpi
175 register "desc" = ""Right Type-A Port 1""
176 register "type" = "UPC_TYPE_USB3_A"
177 register "group" = "ACPI_PLD_GROUP(2, 1)"
178 device usb 3.1 on end
179 end
180 chip drivers/usb/acpi
181 register "desc" = ""Left Type-A Port""
182 register "type" = "UPC_TYPE_USB3_A"
183 register "group" = "ACPI_PLD_GROUP(1, 2)"
184 device usb 3.2 on end
185 end
186 chip drivers/usb/acpi
187 register "desc" = ""Right Type-A Port 2""
188 register "type" = "UPC_TYPE_USB3_A"
189 register "group" = "ACPI_PLD_GROUP(2, 2)"
190 device usb 3.3 on end
191 end
192 chip drivers/usb/acpi
193 register "desc" = ""WWAN""
194 register "type" = "UPC_TYPE_INTERNAL"
195 device usb 3.4 on end
196 end
197 end
198 end
199 end # USB xHCI
Duncan Laurie558602f2018-10-31 10:38:16 -0700200 device pci 14.1 off end # USB xDCI (OTG)
Subrata Banik69b18f02018-11-06 16:59:56 +0530201 chip drivers/intel/wifi
202 register "wake" = "PME_B0_EN_BIT"
203 device pci 14.3 on end # CNVi wifi
204 end
Duncan Laurie558602f2018-10-31 10:38:16 -0700205 device pci 14.5 off end # SDCard
Chris Zhou6a5b53b2018-11-26 16:15:49 +0800206 device pci 15.0 on
207 chip drivers/i2c/generic
208 register "hid" = ""MLFS0000""
209 register "desc" = ""Melfas Touchscreen""
210 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_C23_IRQ)"
211 register "probed" = "1"
212 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_E7)"
213 register "enable_delay_ms" = "5"
214 register "has_power_resource" = "1"
215 device i2c 10 on end
216 end
217 end # I2C #0
Duncan Laurie558602f2018-10-31 10:38:16 -0700218 device pci 15.1 on
Chris Zhou40a69f32018-12-12 20:21:38 +0800219 chip drivers/i2c/generic
220 register "hid" = ""ELAN0000""
221 register "desc" = ""ELAN Touchpad""
222 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_B3_IRQ)"
223 register "probed" = "1"
Duncan Laurie558602f2018-10-31 10:38:16 -0700224 device i2c 2c on end
225 end
226 end # I2C #1
227 device pci 15.2 off end # I2C #2
228 device pci 15.3 off end # I2C #3
229 device pci 16.0 on end # Management Engine Interface 1
230 device pci 16.1 off end # Management Engine Interface 2
231 device pci 16.2 off end # Management Engine IDE-R
232 device pci 16.3 off end # Management Engine KT Redirection
233 device pci 16.4 off end # Management Engine Interface 3
234 device pci 16.5 off end # Management Engine Interface 4
235 device pci 17.0 on end # SATA
236 device pci 19.0 on
237 chip drivers/i2c/tpm
238 register "hid" = ""GOOG0005""
239 register "irq" = "ACPI_IRQ_EDGE_LOW(GPP_D18_IRQ)"
240 device i2c 50 on end
241 end
242 end # I2C #4
243 device pci 19.1 off end # I2C #5
244 device pci 19.2 on end # UART #2
245 device pci 1a.0 off end # eMMC
246 device pci 1c.0 on end # PCI Express Port 1 (USB)
247 device pci 1c.1 off end # PCI Express Port 2 (USB)
248 device pci 1c.2 off end # PCI Express Port 3 (USB)
249 device pci 1c.3 off end # PCI Express Port 4 (USB)
250 device pci 1c.4 off end # PCI Express Port 5 (USB)
251 device pci 1c.5 off end # PCI Express Port 6
252 device pci 1c.6 off end # PCI Express Port 7
253 device pci 1c.7 on end # PCI Express Port 8
254 device pci 1d.0 on end # PCI Express Port 9
255 device pci 1d.1 on end # PCI Express Port 10
256 device pci 1d.2 off end # PCI Express Port 11
Lijian Zhaobb3d01a2018-12-20 21:34:40 -0800257 device pci 1d.3 off end # PCI Express Port 12
Duncan Laurie558602f2018-10-31 10:38:16 -0700258 device pci 1d.4 on end # PCI Express Port 13 (x4)
259 device pci 1e.0 off end # UART #0
260 device pci 1e.1 off end # UART #1
261 device pci 1e.2 off end # GSPI #0
262 device pci 1e.3 off end # GSPI #1
Duncan Laurie7a70b662018-10-31 13:19:21 -0700263 device pci 1f.0 on
264 chip ec/google/wilco
265 device pnp 0c09.0 on end
266 end
267 end # LPC/eSPI
Duncan Laurie558602f2018-10-31 10:38:16 -0700268 device pci 1f.1 on end # P2SB
269 device pci 1f.2 on end # Power Management Controller
270 device pci 1f.3 on end # Intel HDA
271 device pci 1f.4 on end # SMBus
272 device pci 1f.5 on end # PCH SPI
273 device pci 1f.6 on end # GbE
274 end
275end