summaryrefslogtreecommitdiff
path: root/src/soc/amd/glinda/chipset.cb
blob: bf7d67d81b670ed7b6ec226ec76ca06f28f0d16a (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
# TODO: Update for Glinda

chip soc/amd/glinda
	device cpu_cluster 0 on
		ops amd_cpu_bus_ops
	end
	device domain 0 on
		ops glinda_pci_domain_ops
		device pci 00.0 alias gnb on ops glinda_root_complex_operations end
		device pci 00.2 alias iommu off ops amd_iommu_ops end

		device pci 01.0 on end # Dummy Host Bridge

		device pci 02.0 on end # Dummy Host Bridge, do not disable
		device pci 02.1 alias gpp_bridge_0 off ops amd_external_pcie_gpp_ops end
		device pci 02.2 alias gpp_bridge_1 off ops amd_external_pcie_gpp_ops end
		device pci 02.3 alias gpp_bridge_2 off ops amd_external_pcie_gpp_ops end
		device pci 02.4 alias gpp_bridge_3 off ops amd_external_pcie_gpp_ops end
		device pci 02.5 alias gpp_bridge_4 off ops amd_external_pcie_gpp_ops end
		device pci 02.6 alias gpp_bridge_5 off ops amd_external_pcie_gpp_ops end

		device pci 08.0 on end # Dummy Host Bridge, do not disable
		device pci 08.1 alias gpp_bridge_a off  # Internal GPP Bridge 0 to Bus A
			ops amd_internal_pcie_gpp_ops
			device pci 0.0 alias gfx off ops amd_graphics_ops end # Internal GPU (GFX)
			device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ)
			device pci 0.2 alias crypto off end # Crypto Coprocessor
			device pci 0.3 alias xhci_0 off
				ops xhci_pci_ops
				chip drivers/usb/acpi
					register "type" = "UPC_TYPE_HUB"
					device usb 0.0 alias xhci_0_root_hub off
						chip drivers/usb/acpi
							device usb 3.0 alias usb3_port0 off end
						end
						chip drivers/usb/acpi
							device usb 2.0 alias usb2_port0 off end
						end
						chip drivers/usb/acpi
							device usb 2.1 alias usb2_port1 off end
						end
					end
				end
			end
			device pci 0.4 alias xhci_1 off
				ops xhci_pci_ops
				chip drivers/usb/acpi
					register "type" = "UPC_TYPE_HUB"
					device usb 0.0 alias xhci_1_root_hub off
						chip drivers/usb/acpi
							device usb 3.0 alias usb3_port2 off end
						end
						chip drivers/usb/acpi
							device usb 3.1 alias usb3_port3 off end
						end
						chip drivers/usb/acpi
							device usb 2.0 alias usb2_port2 off end
						end
						chip drivers/usb/acpi
							device usb 2.1 alias usb2_port3 off end
						end
						chip drivers/usb/acpi
							device usb 2.2 alias usb2_port4 off end
						end
					end
				end
			end
			device pci 0.5 alias acp off ops amd_acp_ops end # Audio Processor (ACP)
			device pci 0.6 alias hda off end # Audio Processor HD Audio Controller (main AZ)
			device pci 0.7 alias mp2 off end # Sensor Fusion Hub (MP2)
		end
		device pci 08.2 alias gpp_bridge_b off ops amd_internal_pcie_gpp_ops end # Internal GPP Bridge 1 to Bus B
		device pci 08.3 alias gpp_bridge_c off # Internal GPP Bridge 2 to Bus C
			ops amd_internal_pcie_gpp_ops
			device pci 0.0 alias xhci_2 off end # Might also be a dummy device with different PCI DID
			# When using this as XHCI2, the mainboard devicetree needs to add ops xhci_pci_ops
		end

		device pci 14.0 alias smbus on ops amd_smbus_ops end # primary FCH function
		device pci 14.3 alias lpc_bridge on ops amd_lpc_ops end

		device pci 18.0 alias data_fabric_0 on ops amd_data_fabric_ops end
		device pci 18.1 alias data_fabric_1 on ops amd_data_fabric_ops end
		device pci 18.2 alias data_fabric_2 on ops amd_data_fabric_ops end
		device pci 18.3 alias data_fabric_3 on ops amd_data_fabric_ops end
		device pci 18.4 alias data_fabric_4 on ops amd_data_fabric_ops end
		device pci 18.5 alias data_fabric_5 on ops amd_data_fabric_ops end
		device pci 18.6 alias data_fabric_6 on ops amd_data_fabric_ops end
		device pci 18.7 alias data_fabric_7 on ops amd_data_fabric_ops end
	end

	device mmio 0xfedc2000 alias i2c_0 off ops soc_amd_i2c_mmio_ops end
	device mmio 0xfedc3000 alias i2c_1 off ops soc_amd_i2c_mmio_ops end
	device mmio 0xfedc4000 alias i2c_2 off ops soc_amd_i2c_mmio_ops end
	device mmio 0xfedc5000 alias i2c_3 off ops soc_amd_i2c_mmio_ops end
	device mmio 0xfedc9000 alias uart_0 off ops amd_uart_mmio_ops end
	device mmio 0xfedca000 alias uart_1 off ops amd_uart_mmio_ops end
	device mmio 0xfedce000 alias uart_2 off ops amd_uart_mmio_ops end
	device mmio 0xfedcf000 alias uart_3 off ops amd_uart_mmio_ops end
	device mmio 0xfedd1000 alias uart_4 off ops amd_uart_mmio_ops end
end