# TODO: i810E actually!
chip northbridge/intel/i82810			# Northbridge
  device cpu_cluster 0 on			# APIC cluster
    chip cpu/intel/socket_PGA370		# CPU
      device lapic 0 on end			# APIC
    end
  end
  device domain 0 on
    device pci 0.0 on end			# Host bridge
    device pci 1.0 on end			# Onboard VGA
    chip southbridge/intel/i82801ax		# Southbridge
      register "ide0_enable" = "1"
      register "ide1_enable" = "1"

      device pci 1e.0 on end			# PCI bridge
      device pci 1f.0 on			# ISA/LPC bridge
        # TODO: PC87364 actually!
        # TODO: Check Super I/O settings and compare to superiotool -d.
        chip superio/nsc/pc87360		# Super I/O
          device pnp 2e.0 on			# Floppy
            io 0x60 = 0x3f0
            irq 0x70 = 6
            drq 0x74 = 2
          end
          device pnp 2e.1 on			# Parallel port
            io 0x60 = 0x378
            irq 0x70 = 7
            drq 0x74 = 3
          end
          device pnp 2e.2 on			# Com2
            io 0x60 = 0x2f8
            irq 0x70 = 3
          end
          device pnp 2e.3 on			# Com1
            io 0x60 = 0x3f8
            irq 0x70 = 4
          end
          device pnp 2e.4 off end		# SWC
          device pnp 2e.5 off end		# PS/2 mouse
          device pnp 2e.6 on			# PS/2 keyboard
            io 0x60 = 0x60
            io 0x62 = 0x64
            irq 0x70 = 1
          end
          device pnp 2e.7 off end		# GPIO
          device pnp 2e.8 off end		# ACB
          device pnp 2e.9 off end		# FSCM
          device pnp 2e.a off end		# WDT
        end
      end
      device pci 1f.1 on end			# IDE
      device pci 1f.2 on end			# USB
      device pci 1f.3 on end			# SMBus
      device pci 1f.5 on end			# AC'97 audio
      device pci 1f.6 off end			# AC'97 modem (N/A ?)
    end
  end
end

