summaryrefslogtreecommitdiff
path: root/src/mainboard/msi/ms7721/devicetree.cb
blob: d46eb846a57587a4e8890e95042af6729f963081 (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
174
175
#
# This file is part of the coreboot project.
#
# Copyright (C) 2012 Advanced Micro Devices, Inc.
# Copyright (C) 2016 Renze Nicolai <renze@rnplus.nl>
#
# 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; version 2 of the License.
#
# 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/amd/agesa/family15tn/root_complex

	device cpu_cluster 0 on
		chip cpu/amd/agesa/family15tn
			device lapic 10 on end
		end
	end

	device domain 0 on
		subsystemid 0x1022 0x1410 inherit
		chip northbridge/amd/agesa/family15tn # CPU side of HT root complex

			chip northbridge/amd/agesa/family15tn # PCI side of HT root complex
				device pci 0.0 on  end # Root Complex
				device pci 0.2 on  end # IOMMU
				device pci 1.0 on  end # Internal Graphics P2P bridge 0x990e
				device pci 1.1 on  end # Internal Multimedia
				device pci 2.0 on  end # PCIe x16
				device pci 3.0 off end # -
				device pci 4.0 on  end # PCIE Realtek LAN
				device pci 5.0 on  end # PCIE x1 (1)
				device pci 6.0 on  end # PCIE x1 (2)
				device pci 7.0 off end # LAN
				device pci 8.0 off end # NB/SB Link P2P bridge
			end	#chip northbridge/amd/agesa/family15tn # PCI side of HT root complex

			chip southbridge/amd/agesa/hudson # it is under NB/SB Link, but on the same pci bus
				device pci 10.0 on  end # USB XHCI
				device pci 10.1 on  end # USB XHCI
				device pci 11.0 on  end # SATA
				device pci 12.0 on  end # USB OHCI
				device pci 12.2 on  end # USB EHCI
				device pci 13.0 on  end # USB OHCI
				device pci 13.2 on  end # USB EHCI
				device pci 14.0 on      # SMBUS
					chip drivers/generic/generic #dimm 0
						device i2c 50 on end # 7-bit SPD address
					end
					chip drivers/generic/generic #dimm 1
						device i2c 51 on end # 7-bit SPD address
					end
				end # SM
				device pci 14.1 off end # IDE	0x439c
				device pci 14.2 on  end # Azalia (Audio)
				device pci 14.3 on      # LPC	0x439d
					chip superio/fintek/f71869ad
						register "multi_function_register_1" = "0x01"
						register "multi_function_register_2" = "0x0f"
						register "multi_function_register_3" = "0x2f"
						register "multi_function_register_4" = "0x04"
						register "multi_function_register_5" = "0x3e"

						# HWM configuration registers
						register "hwm_smbus_address" = "0x98"
						register "hwm_smbus_control_reg" = "0x02"
						register "hwm_fan_type_sel_reg" = "0x00"
						register "hwm_fan1_temp_adj_rate_reg" = "0x33"
						register "hwm_fan_mode_sel_reg" = "0x07"
						register "hwm_fan1_idx_rpm_mode" = "0x0e"
						register "hwm_fan1_seg1_speed_count" = "0xff"
						register "hwm_fan1_seg2_speed_count" = "0x0e"
						register "hwm_fan1_seg3_speed_count" = "0x07"
						register "hwm_fan1_temp_map_sel" = "0x8c"
						device pnp 4e.00 off end
						device pnp 4e.01 on	# COM1
							io 0x60 = 0x3f8
							irq 0x70 = 4
						end
						device pnp 4e.02 off	# COM2 (Level converter not populated, but may be usable?)
							io 0x60 = 0x2f8
							irq 0x70 = 3
						end
						device pnp 4e.03 on	# Parallel Port
							io 0x60 = 0x378
							irq 0x70 = 5
							drq 0x74 = 3
							irq 0xf0 = 0x44 # PRT Mode Select Register
						end
						device pnp 4e.04 on	# Hardware Monitor
							io 0x60 = 0x600
							irq 0x70 = 0
						end
						device pnp 4e.05 on     # KBC
							io 0x60 = 0x060
							irq 0x70 = 1 # Keyboard IRQ
							irq 0x72 = 12 # Mouse IRQ
						end
                                                device pnp 4e.06 on     # GPIO
							# ! GPIO config is disabled because the code in romstage.c
							# ! has already taken care of it
                                                        #io 0x60 = 0xa00
                                                        #irq 0xe0 = 0x04	# GPIO1 output
                                                        #irq 0xe1 = 0xff	# GPIO1 output data
                                                        #irq 0xe3 = 0x04	# GPIO1 drive enable
                                                        #irq 0xe4 = 0x00	# GPIO1 PME enable
                                                        #irq 0xe5 = 0x00	# GPIO1 input detect select
                                                        #irq 0xe6 = 0x40	# GPIO1 event status

                                                        #irq 0xd0 = 0x00	# GPIO2 output
                                                        #irq 0xd1 = 0xff	# GPIO2 output data
                                                        #irq 0xd3 = 0x00	# GPIO2 drive enable

                                                        #irq 0xc0 = 0x00	# GPIO3 output
                                                        #irq 0xc1 = 0xff	# GPIO3 output data

                                                        #irq 0xb0 = 0x04	# GPIO4 output
                                                        #irq 0xb1 = 0x04	# GPIO4 output data
                                                        #irq 0xb3 = 0x04	# GPIO4 drive enable
                                                        #irq 0xb4 = 0x00	# GPIO4 PME enable
                                                        #irq 0xb5 = 0x00	# GPIO4 input detect select
                                                        #irq 0xb6 = 0x00	# GPIO4 event status

                                                        #irq 0xa0 = 0x00	# GPIO5 output
                                                        #irq 0xa1 = 0x1f	# GPIO5 output data
                                                        #irq 0xa3 = 0x00	# GPIO5 drive enable
                                                        #irq 0xa4 = 0x00	# GPIO5 PME enable
                                                        #irq 0xa5 = 0xff	# GPIO5 input detect select
                                                        #irq 0xa6 = 0xe0	# GPIO5 event status

                                                        #irq 0x90 = 0x00	# GPIO6 output
                                                        #irq 0x91 = 0xff	# GPIO6 output data
                                                        #irq 0x93 = 0x00	# GPIO6 drive enable

                                                        #irq 0x80 = 0x00	# GPIO7 output
                                                        #irq 0x81 = 0xff	# GPIO7 output data
                                                        #irq 0x83 = 0x00	# GPIO7 drive enable
                                                end

						device pnp 4e.07 on end	# WDT
						device pnp 4e.08 off end	# CIR
						device pnp 4e.0a on end	# PME
					end # f71869ad
				end	#device pci 14.3 # LPC
				device pci 14.4 on  end # PCI 0x4384 (PCI slot on board)
				device pci 14.5 on  end # USB OHCI
				device pci 14.6 off end # Gec
				device pci 14.7 off end # SD
				device pci 15.0 off end # unused
				device pci 15.1 off end # unused
				device pci 15.2 off end # unused
				device pci 15.3 off end # unused

			end	#chip southbridge/amd/agesa/hudson

			device pci 18.0 on end
			device pci 18.1 on end
			device pci 18.2 on end
			device pci 18.3 on end
			device pci 18.4 on end
			device pci 18.5 on end

			register "spdAddrLookup" = "
			{
				{ {0xA0, 0xA4}, {0xA2, 0xA6}, }, // socket 0 - Channel 0 & 1 - 8-bit SPD addresses
				{ {0x00, 0x00}, {0x00, 0x00}, }, // socket 1 - Channel 0 & 1 - 8-bit SPD addresses
			}"

		end	#chip northbridge/amd/agesa/family15tn # CPU side of HT root complex
	end	#domain
end	#chip northbridge/amd/agesa/family15tn/root_complex