summaryrefslogtreecommitdiff
path: root/src/mainboard/asrock/h81m-hds/devicetree.cb
blob: 32b59780920734dbe6d10eccd20b00f6fb51fb68 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
##
## This file is part of the coreboot project.
##
## Copyright (C) 2018 Tristan Corrick <tristan@corrick.kiwi>
##
## This program is free software: you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation, either version 2 of the License, or
## (at your option) any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
## GNU General Public License for more details.
##

chip northbridge/intel/haswell
	register "gpu_ddi_e_connected" = "1"

	device cpu_cluster 0 on
		chip cpu/intel/haswell
			register "c1_acpower" = "1"
			register "c1_battery" = "1"
			register "c2_acpower" = "3"
			register "c2_battery" = "3"
			register "c3_acpower" = "5"
			register "c3_battery" = "5"

			device lapic 0 on end
			device lapic 0xacac off end
		end
	end

	device domain 0 on
		device pci 00.0 on # Host bridge
			subsystemid 0x1849 0x0c00
		end

		device pci 01.0 on # PCIe graphics
			subsystemid 0x1849 0x0c01
		end

		device pci 02.0 on # VGA controller
			subsystemid 0x1849 0x0402
		end

		device pci 03.0 on # Mini-HD audio
			subsystemid 0x1849 0x0c0c
		end

		chip southbridge/intel/lynxpoint
			register "pirqa_routing" = "0x8b"
			register "pirqb_routing" = "0x80"
			register "pirqc_routing" = "0x8b"
			register "pirqd_routing" = "0x8a"
			register "pirqe_routing" = "0x80"
			register "pirqf_routing" = "0x80"
			register "pirqg_routing" = "0x80"
			register "pirqh_routing" = "0x8a"

			register "sata_ahci" = "1"
			register "sata_port_map" = "0x33"

			register "gen1_dec" = "0x00000295" # Super I/O HWM

			device pci 14.0 on      # xHCI controller
				subsystemid 0x1849 0x8c31
			end
			device pci 16.0 on      # Management Engine interface 1
				subsystemid 0x1849 0x8c3a
			end
			device pci 16.1 off end # Management Engine interface 2
			device pci 16.2 off end # Management Engine IDE-R
			device pci 16.3 off end # Management Engine KT
			device pci 19.0 off end # Intel Gigabit Ethernet
			device pci 1a.0 on      # EHCI controller #2
				subsystemid 0x1849 0x8c2d
			end
			device pci 1b.0 on      # HD audio controller
				subsystemid 0x1849 0x7662
			end
			device pci 1c.0 on      # PCIe port #1
				subsystemid 0x1849 0x8c10
			end
			device pci 1c.1 off end # PCIe port #2
			device pci 1c.2 off end # PCIe port #3
			device pci 1c.3 on      # Realtek Gigabit Ethernet
				subsystemid 0x1849 0x8c16
				chip drivers/net
					register "customized_leds" = "0x0824"
					device pci 00.0 on
						subsystemid 0x1849 0x8168
					end
				end
			end
			device pci 1c.4 on      # ASMedia USB controller
				subsystemid 0x1849 0x8c18
				device pci 00.0 on
					subsystemid 0x1849 0x1042
				end
			end
			device pci 1c.5 on      # PCIe 1x slot
				subsystemid 0x1849 0x8c1a
			end
			device pci 1c.6 off end # PCIe port #7
			device pci 1c.7 off end # PCIe port #8
			device pci 1d.0 on      # EHCI controller #1
				subsystemid 0x1849 0x8c26
			end
			device pci 1f.0 on      # LPC bridge
				subsystemid 0x1849 0x8c5c

				chip superio/nuvoton/nct6776
					device pnp 2e.0   off end # Floppy
					device pnp 2e.1   on      # Parallel
						io  0x60 = 0x0378
						irq 0x70 = 7
						drq 0x74 = 4      # No DMA
						irq 0xf0 = 0x3c   # Printer mode
					end
					device pnp 2e.2   on      # UART A
						io  0x60 = 0x03f8
						irq 0x70 = 4
					end
					device pnp 2e.3   on      # IR
						io  0x60 = 0x02f8
						irq 0x70 = 3
					end
					device pnp 2e.5   on      # PS/2 KBC
						io  0x60 = 0x0060
						io  0x62 = 0x0064
						irq 0x70 = 1      # Keyboard
						irq 0x72 = 12     # Mouse
					end
					device pnp 2e.6   off end # CIR
					device pnp 2e.7   off end # GPIO8
					device pnp 2e.107 off end # GPIO9
					device pnp 2e.8   off end # WDT
					device pnp 2e.108 off end # GPIO0
					device pnp 2e.208 off end # GPIOA
					device pnp 2e.308 off end # GPIO base
					device pnp 2e.109 off end # GPIO1
					device pnp 2e.209 off end # GPIO2
					device pnp 2e.309 off end # GPIO3
					device pnp 2e.409 off end # GPIO4
					device pnp 2e.509 off end # GPIO5
					device pnp 2e.609 off end # GPIO6
					device pnp 2e.709 off end # GPIO7
					device pnp 2e.a   off end # ACPI
					device pnp 2e.b   on      # HWM, LED
						io  0x60 = 0x0290
						io  0x62 = 0
						irq 0x70 = 0
					end
					device pnp 2e.d   off end # VID
					device pnp 2e.e   off end # CIR wake-up
					device pnp 2e.f   off end # GPIO PP/OD
					device pnp 2e.14  off end # SVID
					device pnp 2e.16  off end # Deep sleep
					device pnp 2e.17  off end # GPIOA
				end
			end
			device pci 1f.2 on # SATA controller 1
				subsystemid 0x1849 0x8c02
			end
			device pci 1f.3 on # SMBus
				subsystemid 0x1849 0x8c22
			end
			device pci 1f.5 off end # SATA controller 2
			device pci 1f.6 off end # Thermal
		end
	end
end