chip northbridge/intel/sandybridge
	# IGD Displays
	register "gfx" = "GMA_STATIC_DISPLAYS(0)"

	register "spd_addresses" = "{0x50, 0, 0x52, 0}"
	register "max_mem_clock_mhz" = "800"
	register "ec_present" = "1"

	register "usb3.hs_port_switch_mask" = "0xf"
	register "usb3.mode" = "3"
	register "usb3.preboot_support" = "1"
	register "usb3.xhci_streams" = "1"

	chip cpu/intel/model_206ax
		device cpu_cluster 0 on end

		register "acpi_c2" = "CPU_ACPI_C6"
		register "acpi_c3" = "CPU_ACPI_DISABLED"
	end

	device domain 0 on
		device ref host_bridge on end # host bridge
		device ref peg10 on end # PCIe Bridge x16
		device ref igd on end # vga controller

		chip southbridge/intel/bd82x6x # Intel Series 6 Cougar Point PCH
			# Enable all SATA ports 0-5
			register "sata_port_map" = "0x3f"
			# Set max SATA speed to 6.0 Gb/s (should be the default, anyway)
			register "sata_interface_speed_support" = "0x3"

			# TODO: Enable generic LPC decodes...
			register "gen1_dec" = "0x001c02e1"
			#register "gen2_dec" = "0x00000000"
			#register "gen3_dec" = "0x00000000"
			#register "gen4_dec" = "0x00000000"

			# Disable root port coalescing
			register "pcie_port_coalesce" = "false"

			register "xhci_switchable_ports"	= "0x0f"
			register "superspeed_capable_ports"	= "0x0f"
			register "usb_port_config" = "{
				{ 1, 0, 0 }, /* P0: lower left USB 3.0 (OC0) */
				{ 1, 0, 0 }, /* P1: upper left USB 3.0 (OC0) */
				{ 1, 0, 0 }, /* P2: lower right USB 3.0 (OC0) */
				{ 1, 0, 0 }, /* P3: upper right USB 3.0 (OC0) */
				{ 1, 0, 0 }, /* P4: lower USB 2.0 (OC0) */
				{ 1, 0, 0 }, /* P5: upper USB 2.0 (OC0) */
				{ 1, 0, 0 }, /* P6: front panel USB 2.0 (OC0) */
				{ 1, 0, 0 }, /* P7: front panel USB 2.0 (OC0) */
				{ 1, 0, 4 }, /* P8: internal USB 2.0 (OC4) */
				{ 1, 0, 4 }, /* P9: internal USB 2.0 (OC4) */
				{ 1, 0, 4 }, /* P10: internal USB 2.0 (OC4) */
				{ 1, 0, 4 }, /* P11: internal USB 2.0 (OC4) */
				{ 1, 0, 4 }, /* P12: internal USB 2.0 (OC4) */
				{ 1, 0, 4 }, /* P13: internal USB 2.0 (OC4) */
			}"

			device ref xhci on end # USB 3.0 Controller
			device ref mei1 on end # Management Engine Interface 1
			device ref mei2 off end # Management Engine Interface 2
			device ref me_ide_r off end # Management Engine IDE-R
			device ref me_kt off end # Management Engine KT
			device ref gbe on end # Intel Gigabit Ethernet
			device ref ehci2 on end # USB2 EHCI #2
			device ref hda on end # High Definition Audio

			# Disabling 1c.0 might break IRQ settings as it enables port coalescing
			# There are two mini PCIe x1 sockets, so one PCIe port is unrouted
			device ref pcie_rp1 on end # PCIe Port #1 mini PCIe x1?
			device ref pcie_rp2 on end # PCIe Port #2 mini PCIe x1?
			device ref pcie_rp3 on end # PCIe Port #3 second Ethernet NIC
			device ref pcie_rp4 on end # PCIe Port #4 third Ethernet NIC
			device ref pcie_rp5 on end # PCIe Port #5 first Ethernet PHY
			device ref pcie_rp6 on end # PCIe Port #6 FireWire
			device ref pcie_rp7 on end # PCIe Port #7 PCIe x1
			device ref pcie_rp8 on end # PCIe Port #8 mini PCIe x1?

			device ref ehci1 on end # USB2 EHCI #1
			device ref pci_bridge off end # PCI bridge
			device ref lpc on #LPC bridge
				chip superio/winbond/w83627dhg
					device pnp 2e.0 off #  Floppy
					end
					device pnp 2e.1 off #  Parallel Port
					end
					device pnp 2e.2 on #  Com1
						io 0x60 = 0x3f8
						irq 0x70 = 4
					end
					device pnp 2e.3 on #  Com2
						io 0x60 = 0x2f8
						irq 0x70 = 3
					end
					device pnp 2e.5 off #  Keyboard
					end
					device pnp 2e.6 off #  SPI
					end
					device pnp 2e.307 off #  GPIO 1
					end
					device pnp 2e.8 off #  WDTO#, PLED
					end
					device pnp 2e.009 on #  GPIO2 -- original firmware sets this on
					end
					device pnp 2e.109 on #  GPIO3 -- original firmware sets this on
					end
					device pnp 2e.209 off #  GPIO4
					end
					device pnp 2e.309 off #  GPIO5
					end
					device pnp 2e.a off #  ACPI
					end
					device pnp 2e.b off # HWM
					end
					device pnp 2e.c off # PECI, SST
					end
				end	#superio/winbond/w83627dhg
				chip ec/kontron/it8516e
					# Set CPU Fan to 50°C, System Fan to 75%
					register "default_fan_mode" = "{ IT8516E_MODE_THERMAL, IT8516E_MODE_PWM }"
					register "default_fan_target" = "{ 50, 75 }"

					# TODO: Check status when Linux runs
					device pnp 20e.1 on #  Com3
						io 0x60 = 0x03e8
						irq 0x70 = 4
					end
					device pnp 20e.2 on #  Com4
						io 0x60 = 0x02e8
						irq 0x70 = 3
					end
					device pnp 20e.4 off #  System Wakeup
					end
					device pnp 20e.5 on #  Mouse
						irq 0x70 = 12
					end
					device pnp 20e.6 on #  Keyboard
						io 0x60 = 0x0060
						io 0x62 = 0x0064
						irq 0x70 = 1
					end
					device pnp 20e.f off #  Shared Memory
					end
					device pnp 20e.10 off #  BRAM / RTC
					end
					device pnp 20e.11 on #  PM channel 1
						io 0x60 = 0x0062
						io 0x62 = 0x0066
						irq 0x70 = 0
					end
					device pnp 20e.12 on #  PM channel 2
						io 0x60 = 0x020c
						io 0x62 = 0x020d
						irq 0x70 = 0
					end
					device pnp 20e.17 off #  PM channel 3
					end
				end	#ec/kontron/it8516e
				# TODO: TPM on 4e
			end # LPC bridge
			device ref sata1 on end # SATA Controller 1
			device ref smbus on end # SMBus
			device ref sata2 off end # SATA Controller 2
			device ref thermal off end # Thermal
		end
	end
end
