chip northbridge/amd/amdk8/root_complex
        device cpu_cluster 0 on
                chip cpu/amd/socket_AM2
                        device lapic 0 on end
                end
        end
	device domain 0 on
		subsystemid 0x1039 0x1234 inherit
		chip northbridge/amd/amdk8 #mc0
			device pci 18.0 on
				#  devices on link 0, link 0 == LDT 0
			        chip southbridge/sis/sis966
					device pci 0.0 on end   # Northbridge
					device pci 1.0 on		# AGP bridge
						device pci 0.0 on end
					end
                			device pci 2.0 on # LPC
						chip superio/ite/it8716f
							device pnp 2e.0 off #  Floppy (N/A)
                	                 			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 (N/A)
                	                 			io 0x60 = 0x2f8
                	                			irq 0x70 = 3
							end
                	        			device pnp 2e.3 off #  Parallel port (N/A)
                	                 			io 0x60 = 0x378
                	                			irq 0x70 = 7
							end
                	        			device pnp 2e.4 on #  EC
                	                 			io 0x60 = 0x290
                	                 			io 0x62 = 0x230
                	                			irq 0x70 = 9
							end
							device pnp 2e.5 off #  PS/2 keyboard (N/A)
                	                 			io 0x60 = 0x60
                	                 			io 0x62 = 0x64
                	                			irq 0x70 = 1
							end
							device pnp 2e.6 off #  Mouse (N/A)
                	                			irq 0x70 = 12
							end
                	        			device pnp 2e.8 off #  MIDI (N/A)
								io 0x60 = 0x300
								irq 0x70 = 10
							end
                	        			device pnp 2e.9 off #  GAME (N/A)
								io 0x60 = 0x220
							end
                	        			device pnp 2e.a off end #  CIR (N/A)
						end
					end

                                        device pci 2.5 off end # IDE (SiS5513)
                                        device pci 2.6 off end # Modem (SiS7013)
                                        device pci 2.7 off end # Audio (SiS7012)
                                        device pci 3.0 on end # USB (SiS7001,USB1.1)
                                        device pci 3.1 on end # USB (SiS7001,USB1.1)
                                        device pci 3.3 on end # USB (SiS7002,USB2.0)
                                        device pci 4.0 on end # NIC (SiS191)
                                        device pci 5.0 on end # SATA (SiS1183,Native Mode)
                                        device pci 6.0 on end # PCI-e x1
                                        device pci 7.0 on end # PCI-e x1
                                        device pci a.0 off end
                                        device pci b.0 off end
                                        device pci c.0 off end
                                        device pci d.0 off end
                                        device pci e.0 off end
                                        device pci f.0 off end # HD Audio (SiS7502)

                                        register "ide0_enable" = "1"
                                        register "ide1_enable" = "1"
                                        register "sata0_enable" = "1"
                                        register "sata1_enable" = "1"
				end
			end #  device pci 18.0
			device pci 18.0 on end # Link 1
			device pci 18.0 on end
			device pci 18.1 on end
			device pci 18.2 on end
			device pci 18.3 on end
		end # mc0

	end # PCI 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 # io
#               device pnp 0.9 off end # io
#       end
end #root_complex
