# sample config for amd/mahogany_fam10
chip northbridge/amd/amdfam10/root_complex
	device cpu_cluster 0 on
		chip cpu/amd/socket_AM2r2  #L1 and DDR2
			 device lapic 0 on end
		end
	end
	device domain 0 on
		subsystemid 0x1022 0x3060 inherit
		chip northbridge/amd/amdfam10
			device pci 18.0 on #  northbridge
				chip southbridge/amd/rs780
					device pci 0.0 on end # HT  	0x9600
					device pci 1.0 on end # Internal Graphics P2P bridge 0x9602
					device pci 2.0 on end # PCIE P2P bridge (external graphics) 0x9603
					device pci 3.0 on end # PCIE P2P bridge	0x960b
					device pci 4.0 on end # PCIE P2P bridge 0x9604
					device pci 5.0 off end # PCIE P2P bridge 0x9605
					device pci 6.0 off end # PCIE P2P bridge 0x9606
					device pci 7.0 off end # PCIE P2P bridge 0x9607
					device pci 8.0 off end # NB/SB Link P2P bridge
					device pci 9.0 on end #
					device pci a.0 on end #
					register "gppsb_configuration" = "1"   # Configuration B
					register "gpp_configuration" = "3"   # Configuration D default
					register "port_enable" = "0x6fc"
					register "gfx_dev2_dev3" = "1"
					register "gfx_dual_slot" = "1"
					register "gfx_lane_reversal" = "0"
					register "gfx_tmds" = "0"
					register "gfx_compliance" = "0"
					register "gfx_reconfiguration" = "1"
					register "gfx_link_width" = "0"
				end
				chip southbridge/amd/sb700 # it is under NB/SB Link, but on the same pri bus
					device pci 11.0 on end # SATA
					device pci 12.0 on end # USB
					device pci 12.1 on end # USB
					device pci 12.2 on end # USB
					device pci 13.0 on end # USB
					device pci 13.1 on end # USB
					device pci 13.2 on end # USB
	 				device pci 14.0 on # SM
						chip drivers/generic/generic #dimm 0-0-0
							device i2c 50 on end
						end
						chip drivers/generic/generic #dimm 0-0-1
							device i2c 51 on end
						end
						chip drivers/generic/generic #dimm 0-1-0
							device i2c 52 on end
						end
						chip drivers/generic/generic #dimm 0-1-1
							device i2c 53 on end
						end
					end # SM
					device pci 14.1 on end # IDE    0x439c
					device pci 14.2 on end # HDA    0x4383
					device pci 14.3 on # LPC	0x439d
						chip superio/ite/it8718f
							device pnp 2e.0 off #  Floppy
								io 0x60 = 0x3f0
								irq 0x70 = 6
								drq 0x74 = 2
							end
							device pnp 2e.1 on #  Com1
								io 0x60 = 0x3f8
								irq 0x70 = 4
							end
							device pnp 2e.2 off #  Com2
								io 0x60 = 0x2f8
								irq 0x70 = 3
							end
							device pnp 2e.3 off #  Parallel Port
								io 0x60 = 0x378
								irq 0x70 = 7
							end
							device pnp 2e.4 off end #  EC
							device pnp 2e.5 on #  Keyboard
								io 0x60 = 0x60
								io 0x62 = 0x64
								irq 0x70 = 1
							end
							device pnp 2e.6 on #  Mouse
								irq 0x70 = 12
							end
							device pnp 2e.7 off #  GPIO, must be closed for unresolved reason.
							end
							device pnp 2e.8 off #  MIDI
								io 0x60 = 0x300
								irq 0x70 = 9
							end
							device pnp 2e.9 off #  GAME
								io 0x60 = 0x220
							end
							device pnp 2e.a off end #  CIR
						end	#superio/ite/it8718f
					end		#LPC
					device pci 14.4 on end # PCI 0x4384
					device pci 14.5 on end # USB 2
					register "boot_switch_sata_ide" = "0"	# 0: boot from SATA. 1: IDE
				end	#southbridge/amd/sb700
			end #  device pci 18.0

			device pci 18.0 on end
			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 00.5 on end
		end
	end #domain
	#for node 32 to node 63
#	device domain 0 on
#		chip northbridge/amd/amdfam10
#			  device pci 00.0 on end#  northbridge
#			  device pci 00.0 on end
#			  device pci 00.0 on end
#			  device pci 00.0 on end
#			  device pci 00.1 on end
#			  device pci 00.2 on end
#			  device pci 00.3 on end
#			  device pci 00.4 on end
#			 device pci 00.5 on end
#		end
#	end #domain

#	  chip drivers/generic/debug
#		 device pnp 0.0 off end # chip name
#		  device pnp 0.1 on end # pci_regs_all
#		  device pnp 0.2 off end # mem
#		  device pnp 0.3 off end # cpuid
#		  device pnp 0.4 off end # smbus_regs_all
#		  device pnp 0.5 off end # dual core msr
#		  device pnp 0.6 off end # cache size
#		  device pnp 0.7 off end # tsc
#		  device pnp 0.8 off end # hard reset
#		  device pnp 0.9 off end # mcp55
#		  device pnp 0.a on end # GH ext table
#	 end

end
