payloads/edk2: Disable the CPU Timer Lib unless supported
[coreboot.git] / src / mainboard / asrock / h110m / devicetree.cb
bloba45127c0b33f6a2ac2010bd6925bcbe1f3a12fea
1 ## SPDX-License-Identifier: GPL-2.0-only
3 chip soc/intel/skylake
5 register "deep_sx_config" = "DSX_EN_WAKE_PIN"
7 register "eist_enable" = "1"
9 # GPE configuration
10 # Note that GPE events called out in ASL code rely on this
11 # route. i.e. If this route changes then the affected GPE
12 # offset bits also need to be changed.
13 register "gpe0_dw0" = "GPP_B"
14 register "gpe0_dw1" = "GPP_D"
15 register "gpe0_dw2" = "GPP_E"
17 # Enable DPTF
18 register "dptf_enable" = "1"
20 # FSP Configuration
21 register "PrimaryDisplay" = "Display_PEG"
23 # Enabling SLP_S3#, SLP_S4#, SLP_SUS and SLP_A Stretch
24 # SLP_S3 Minimum Assertion Width. Values 0: 60us, 1: 1ms, 2: 50ms, 3: 2s
25 register "PmConfigSlpS3MinAssert" = "0x02"
27 # SLP_S4 Minimum Assertion Width. Values 0: default, 1: 1s, 2: 2s, 3: 3s, 4: 4s
28 register "PmConfigSlpS4MinAssert" = "0x04"
30 # SLP_SUS Minimum Assertion Width. Values 0: 0ms, 1: 500ms, 2: 1s, 3: 4s
31 register "PmConfigSlpSusMinAssert" = "0x03"
33 # SLP_A Minimum Assertion Width. Values 0: 0ms, 1: 4s, 2: 98ms, 3: 2s
34 register "PmConfigSlpAMinAssert" = "0x03"
36 # PL2 override 91W
37 register "power_limits_config" = "{
38 .tdp_pl2_override = 91,
41 # Send an extra VR mailbox command for the PS4 exit issue
42 register "SendVrMbxCmd" = "2"
44 device cpu_cluster 0 on
45 device lapic 0 on end
46 end
47 device domain 0 on
48 device pci 00.0 on # Host Bridge
49 subsystemid 0x1849 0x191f
50 end
51 device pci 01.0 on # PEG
52 subsystemid 0x1849 0x1901
53 register "Peg0MaxLinkWidth" = "Peg0_x16"
55 # Configure PCIe clockgen in PCH
56 register "PcieRpClkReqSupport[0]" = "1"
57 register "PcieRpClkReqNumber[0]" = "0"
58 register "PcieRpClkSrcNumber[0]" = "0"
59 end
60 device pci 02.0 on # Integrated Graphics Device
61 subsystemid 0x1849 0x1912
62 end
63 device pci 04.0 on end # Thermal Subsystem
64 device pci 08.0 off end # Gaussian Mixture Model
65 device pci 14.0 on # USB xHCI
66 subsystemid 0x1849 0xa131
68 register "usb2_ports[0]" = "USB2_PORT_MID(OC0)"
69 register "usb2_ports[1]" = "USB2_PORT_MID(OC0)"
70 register "usb2_ports[2]" = "USB2_PORT_MID(OC4)"
71 register "usb2_ports[3]" = "USB2_PORT_MID(OC4)"
72 register "usb2_ports[4]" = "USB2_PORT_MID(OC2)"
73 register "usb2_ports[5]" = "USB2_PORT_MID(OC2)"
74 register "usb2_ports[6]" = "USB2_PORT_MID(OC0)"
75 register "usb2_ports[7]" = "USB2_PORT_MID(OC0)"
76 register "usb2_ports[8]" = "USB2_PORT_MID(OC0)"
77 register "usb2_ports[9]" = "USB2_PORT_MID(OC0)"
78 register "usb2_ports[10]" = "USB2_PORT_MID(OC1)"
79 register "usb2_ports[11]" = "USB2_PORT_MID(OC1)"
80 register "usb2_ports[12]" = "USB2_PORT_MID(OC_SKIP)"
81 register "usb2_ports[13]" = "USB2_PORT_MID(OC_SKIP)"
83 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC0)"
84 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC0)"
85 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC3)"
86 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC3)"
87 register "usb3_ports[4]" = "USB3_PORT_DEFAULT(OC1)"
88 register "usb3_ports[5]" = "USB3_PORT_DEFAULT(OC1)"
89 register "usb3_ports[6]" = "USB3_PORT_DEFAULT(OC_SKIP)"
90 register "usb3_ports[7]" = "USB3_PORT_DEFAULT(OC_SKIP)"
91 register "usb3_ports[8]" = "USB3_PORT_DEFAULT(OC_SKIP)"
92 register "usb3_ports[9]" = "USB3_PORT_DEFAULT(OC_SKIP)"
93 end
94 device pci 14.1 off end # USB xDCI (OTG)
95 device pci 14.2 on # Thermal Subsystem
96 subsystemid 0x1849 0xa131
97 end
98 device pci 15.0 off end # I2C #0
99 device pci 15.1 off end # I2C #1
100 device pci 15.2 off end # I2C #2
101 device pci 15.3 off end # I2C #3
102 device pci 16.0 on # Management Engine Interface 1
103 subsystemid 0x1849 0xa131
105 device pci 16.1 off end # Management Engine Interface 2
106 device pci 16.2 off end # Management Engine IDE-R
107 device pci 16.3 off end # Management Engine KT Redirection
108 device pci 16.4 off end # Management Engine Interface 3
109 device pci 17.0 on # SATA
110 subsystemid 0x1849 0xa102
111 register "SataSalpSupport" = "1"
112 # SATA4 and SATA5 are located in the lower right corner of the board,
113 # but they are not populated. This is because the same PCB is used to
114 # make boards with better PCHs, which can have up to six SATA ports.
115 # However, the H110 PCH only has four SATA ports, which explains why
116 # two connectors are missing.
117 register "SataPortsEnable" = "{ \
118 [0] = 1, \
119 [1] = 1, \
120 [2] = 1, \
121 [3] = 1, \
124 device pci 19.0 off end # UART #2
125 device pci 19.1 off end # I2C #5
126 device pci 19.2 off end # I2C #4
127 device pci 1c.0 on end # PCI Express Port 1
128 device pci 1c.1 off end # PCI Express Port 2
129 device pci 1c.2 off end # PCI Express Port 3
130 device pci 1c.3 off end # PCI Express Port 4
131 device pci 1c.4 on # PCI Express Port 5 - PCIE slot
132 register "PcieRpEnable[4]" = "1"
133 register "PcieRpClkReqSupport[4]" = "1"
134 register "PcieRpClkReqNumber[4]" = "2"
135 register "PcieRpAdvancedErrorReporting[4]" = "1"
136 register "PcieRpLtrEnable[4]" = "1"
137 register "PcieRpClkSrcNumber[4]" = "2"
138 register "PcieRpHotPlug[4]" = "1"
140 device pci 1c.5 on # PCI Express Port 6 - Onboard LAN
141 register "PcieRpEnable[5]" = "1"
143 # Disable CLKREQ#, since onboard LAN is always present
144 register "PcieRpClkReqSupport[5]" = "0"
145 register "PcieRpAdvancedErrorReporting[5]" = "1"
146 register "PcieRpLtrEnable[5]" = "1"
147 register "PcieRpClkSrcNumber[5]" = "1"
149 device pci 1c.6 on # PCI Express Port 7 - PCIE slot
150 register "PcieRpEnable[6]" = "1"
151 register "PcieRpClkReqSupport[6]" = "1"
152 register "PcieRpClkReqNumber[6]" = "3"
153 register "PcieRpAdvancedErrorReporting[6]" = "1"
154 register "PcieRpLtrEnable[6]" = "1"
155 register "PcieRpClkSrcNumber[6]" = "3"
156 register "PcieRpHotPlug[6]" = "1"
158 device pci 1c.7 off end # PCI Express Port 8
159 device pci 1d.0 off end # PCI Express Port 9
160 device pci 1d.1 off end # PCI Express Port 10
161 device pci 1d.2 off end # PCI Express Port 11
162 device pci 1d.3 off end # PCI Express Port 12
163 device pci 1e.0 off end # UART #0
164 device pci 1e.1 off end # UART #1
165 device pci 1e.2 off end # GSPI #0
166 device pci 1e.3 off end # GSPI #1
167 device pci 1e.4 off end # eMMC
168 device pci 1e.5 off end # SDIO
169 device pci 1e.6 off end # SDCard
170 device pci 1f.0 on # LPC bridge
171 subsystemid 0x1849 0x1a43
173 # Set @0x280-0x2ff I/O Range for SuperIO HWM
174 register "gen1_dec" = "0x007c0281"
176 # Set LPC Serial IRQ mode
177 register "serirq_mode" = "SERIRQ_CONTINUOUS"
179 chip superio/common
180 device pnp 2e.0 on # passes SIO base addr to SSDT gen
182 chip superio/nuvoton/nct6791d
183 device pnp 2e.1 on
184 # Global Control Registers
185 # Device IRQ Polarity
186 irq 0x13 = 0x00
187 irq 0x14 = 0x00
188 # Global Option
189 irq 0x24 = 0xfb
190 irq 0x27 = 0x10
191 # Multi Function
192 irq 0x1a = 0xb0
193 irq 0x1b = 0xe6
194 irq 0x2a = 0x04
195 irq 0x2c = 0x40
196 irq 0x2d = 0x03
198 # Parallel Port
199 io 0x60 = 0x0378
200 irq 0x70 = 7
201 drq 0x74 = 4 # No DMA
202 irq 0xf0 = 0x3c # Printer mode
204 device pnp 2e.2 on # UART A
205 io 0x60 = 0x03f8
206 irq 0x70 = 4
208 device pnp 2e.3 on # IR
209 io 0x60 = 0x02f8
210 irq 0x70 = 3
212 device pnp 2e.5 on # PS/2 KBC
213 io 0x60 = 0x0060
214 io 0x62 = 0x0064
215 irq 0x70 = 1 # Keyboard
216 irq 0x72 = 12 # Mouse
218 device pnp 2e.6 off end # CIR
219 device pnp 2e.7 on # GPIO6
220 irq 0xf6 = 0xff
221 irq 0xf7 = 0xff
222 irq 0xf8 = 0xff
224 device pnp 2e.107 on # GPIO7
225 irq 0xe0 = 0x7f
226 irq 0xe1 = 0x0d
228 device pnp 2e.207 on # GPIO8
229 irq 0xe6 = 0xff
230 irq 0xe7 = 0xff
231 irq 0xed = 0xff
233 device pnp 2e.8 off end # WDT
234 device pnp 2e.108 on end # GPIO0
235 device pnp 2e.308 off end # GPIO base
236 device pnp 2e.408 off end # WDTMEM
237 device pnp 2e.708 on end # GPIO1
238 device pnp 2e.9 on end # GPIO2
239 device pnp 2e.109 on # GPIO3
240 irq 0xe4 = 0x7b
241 irq 0xe5 = 0x02
242 irq 0xea = 0x04
244 device pnp 2e.209 on # GPIO4
245 irq 0xf0 = 0x7f
246 irq 0xf1 = 0x80
248 device pnp 2e.309 on # GPIO5
249 irq 0xf4 = 0xdf
250 irq 0xf5 = 0xd5
252 device pnp 2e.a on
253 # Power RAM in S3 and let the PCH
254 # handle power failure actions
255 irq 0xe4 = 0x70
256 # Set HWM reset source to LRESET#
257 irq 0xe7 = 0x01
258 end # ACPI
259 device pnp 2e.b on # HWM, LED
260 io 0x60 = 0x0290
261 io 0x62 = 0
262 irq 0x70 = 0
264 device pnp 2e.d off end # BCLK, WDT2, WDT_MEM
265 device pnp 2e.e off end # CIR wake-up
266 device pnp 2e.f off end # GPIO PP/OD
267 device pnp 2e.14 off end # SVID, Port 80 UART
268 device pnp 2e.16 off end # DS5
269 device pnp 2e.116 off end # DS3
270 device pnp 2e.316 on end # PCHDSW
271 device pnp 2e.416 off end # DSWWOPT
272 device pnp 2e.516 on end # DS3OPT
273 device pnp 2e.616 on end # DSDSS
274 device pnp 2e.716 off end # DSPU
275 end # chip superio/nuvoton/nct6791d
277 end # device pnp 2e.0
278 end # chip superio/common
280 chip drivers/pc80/tpm
281 device pnp 4e.0 on end # TPM module
283 end # LPC Interface
284 device pci 1f.1 on end # P2SB
285 device pci 1f.2 on end # Power Management Controller
286 device pci 1f.3 on # Intel HDA
287 register "PchHdaVcType" = "Vc1"
289 device pci 1f.4 on end # SMBus
290 device pci 1f.5 on end # PCH SPI
291 device pci 1f.6 off end # GbE