#
# X86_64_GENERIC -- Generic kernel configuration file for DragonFly/x86_64
#
# Check the LINT64 configuration file in sys/config, for an
# exhaustive list of options.

platform	pc64
machine		x86_64
machine_arch	x86_64
cpu		HAMMER_CPU
ident		X86_64_GENERIC
maxusers	0
#options	CPU_DISABLE_AVX

makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols

options 	INET			#InterNETworking
options 	INET6			#IPv6 communications protocols
options 	HAMMER			#Hammer Filesystem
options		HAMMER2			#HAMMER2 filesystem
options		NULLFS			#NULL filesystem
options 	FFS			#Berkeley Fast Filesystem
options 	SOFTUPDATES		#Enable FFS soft updates support
options 	UFS_DIRHASH		#Improve performance on big directories
options 	MFS			#Memory Filesystem
options 	TMPFS			#Temporary Filesystem
options 	MD_ROOT			#MD is a potential root device
options 	NFS			#Network Filesystem
options 	NFS_ROOT		#NFS usable as root device, NFS required
options 	MSDOSFS			#MSDOS Filesystem
options 	CD9660			#ISO 9660 Filesystem
options 	PROCFS			#Process filesystem
options 	SCSI_DELAY=5000		#Delay (in ms) before probing SCSI
options		IFPOLL_ENABLE		# Support mixed interrupt-polling
					# handling of network device drivers
options 	UCONSOLE		#Allow users to grab the console
options 	KTRACE			#ktrace(1) support
options 	_KPOSIX_PRIORITY_SCHEDULING
options 	ICMP_BANDLIM		#Rate limit bad replies
options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev

# ALTQ
options		ALTQ		#alternate queueing
options		ALTQ_CBQ	#class based queueing
options		ALTQ_RED	#random early detection
options		ALTQ_RIO	#triple red for diffserv (needs RED)
options		ALTQ_HFSC	#hierarchical fair service curve
options		ALTQ_PRIQ	#priority queue
options		ALTQ_FAIRQ	#fair queueing
#options	ALTQ_NOPCC	#don't use processor cycle counter
#options	ALTQ_DEBUG	#for debugging

# Debugging for Development
options 	DDB
options 	DDB_TRACE
options 	INVARIANTS

device		isa
device		acpi
device		pci

# AHCI driver, this will override NATA for AHCI devices,
# both drivers may be included.
#
device		ahci

# NVME driver, direct PCIe-attached SSD cards
#
device		nvme

# SiI3124/3132 driver
#
device		sili

# NEW-ATA (NATA) and ATAPI devices
#
device		nata
device		natadisk		# ATA disk drives
device		natapicd		# ATAPI CDROM drives
device		natapifd		# ATAPI floppy drives
device		natapist		# ATAPI tape drives
device		natapicam		# Emulate ATAPI devices as SCSI
device		nataraid		# support for ATA software RAID
					# controllers
options 	ATA_STATIC_ID		# Static device numbering

# SCSI Controllers
device		amd		# AMD 53C974 (Tekram DC-390(T))
device		isp		# Qlogic family
#device		ispfw		# Firmware for QLogic HBAs- normally a module
device		mpr			# LSI-Logic MPT-Fusion 3
device		mps		# LSI-Logic MPT-Fusion 2
device		mpt		# LSI-Logic MPT/Fusion
device		ncr		# NCR/Symbios Logic
device		sym		# NCR/Symbios Logic (newer chipsets)
options 	SYM_SETUP_LP_PROBE_MAP=0x40
				# Allow ncr to attach legacy NCR devices when
				# both sym and ncr are configured

device		adv0	at isa?
device		adw
device		bt

# SCSI peripherals
device		scbus		# SCSI bus (required)
device		da		# Direct Access (disks)
device		sa		# Sequential Access (tape etc)
device		cd		# CD
device		pass		# Passthrough device (direct SCSI access)
device		sg		# Passthrough device (linux scsi generic)

# RAID controllers interfaced to the SCSI subsystem
device		arcmsr		# Areca SATA II RAID
device		asr		# DPT SmartRAID V, VI and Adaptec SCSI RAID
device		ciss		# Compaq SmartRAID 5* series
device		dpt		# DPT Smartcache - See LINT64 for options!
device		"hpt27xx"	# Highpoint RocketRAID 27xx series
device		hptiop		# Highpoint RocketRAID 3xxx series
device		hptmv		# Highpoint RocketRAID 182x
device		hptrr		# Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx
device		iir		# Intel Integrated RAID
device		mly		# Mylex AcceleRAID/eXtremeRAID
device		mrsas		# LSI MegaRAID SAS (Thunderbolt series and up)
device		twa		# 3ware 9000 series PATA/SATA RAID
device		tws		# 3ware 9750 series SATA/SAS RAID

# RAID controllers
device		aac		# Adaptec FSA RAID, Dell PERC2/PERC3
device		aacp		# SCSI passthrough for aac (requires CAM)
device		amr		# AMI MegaRAID
device		amrp		# SCSI Passthrough interface (optional, CAM req.)
device		ida		# Compaq Smart RAID
device		ips		# IBM ServeRAID
device		mlx		# Mylex DAC960 family
device		mfi		# LSI MegaRAID SAS
device		mfip		# LSI MegaRAID SAS passthrough, requires CAM
device		twe		# 3ware Escalade 7000/8000's

# VirtIO support
device		virtio		# VirtIO core
device		virtio_balloon	# VirtIO Memory Balloon device
device		virtio_blk	# VirtIO disk driver
device		virtio_scsi	# VirtIO SCSI driver
device		vtnet		# VirtIO network driver

# VMware support
device		pvscsi		# VMware PVSCSI
device		vmx		# VMware VMXNET3 Ethernet

# atkbdc0 controls both the keyboard and the PS/2 mouse
device		atkbdc0	at isa? port IO_KBD
device		atkbd0	at atkbdc? irq 1
device		psm0	at atkbdc? irq 12

device		vga0	at isa?

# kbdmux is the keyboard multiplexer
device		kbdmux

# splash screen/screen saver
pseudo-device	splash

# syscons is the default console driver, resembling an SCO console
# only one syscons with efi framebuffer flag (0x400) allowed
device		sc0	at nexus? flags 0x500
options 	SC_PIXEL_MODE		# add support for the raster text mode
options		SC_DFLT_FONT
makeoptions	SC_DFLT_FONT=cp437

device		agp		# support several AGP chipsets

# Intel performance-energy bias
device		perfbias
# Intel software controlled clock modulation
device		clockmod

# HW monitoring devices
#device		aps0	at isa? port 0x1600
device		lm0	at isa? port 0x290
device		it0	at isa?	port 0x290
device		it1	at isa?	port 0xc00
device		it2	at isa?	port 0xd00
device		it3	at isa?	port 0x228
device		wbsio0	at isa? port 0x2e
device		wbsio1	at isa? port 0x4e
device		amdtemp
# Intel Core and newer CPUs on-die digital thermal sensor support
device		coretemp
device		dimm		# DIMM information (location, etc.)
device		coremctl	# support Intel Core and E3 memory controller
device		ecc		# support AMD8000, Intel E3 and Intel E5 ECC
				# requires coremctl and dimm.
device		memtemp		# support Intel Core, E3 and E5 memory thermal
				# sensor.
				# requires coremctl and dimm.

# PCCARD (PCMCIA) support
device		pccard
device		cardbus
device		cbb

# Serial (COM) ports
device		sio0	at isa? port IO_COM1 flags 0x10 irq 4
device		sio1	at isa? port IO_COM2 irq 3
device		sio2	at isa? disable port IO_COM3 irq 5
device		sio3	at isa? disable port IO_COM4 irq 9

# PCI Ethernet NICs.
device		de		# DEC/Intel DC21x4x (``Tulip'')
device		txp		# 3Com 3cR990 (``Typhoon'')

device		em		# Intel PRO/1000 adapter Gigabit Ethernet Card (``Wiseman'')
				# Requires ig_hal
device		igb		# Intel Pro/1000 (82575, 82576, 82580, i350)
				# Requires ig_hal
device		ig_hal		# Intel PRO/1000 hardware abstraction layer
device		ix		# Intel PRO/10GbE PCIE Ethernet Family

device		oce		# Emulex OneConnect 10Gb

# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
device		miibus		# MII bus support
device		ae		# Attansic/Atheros L2 Fast Ethernet
device		age		# Attansic/Atheros L1 Gigabit Ethernet
device		alc		# Atheros AR8131/AR8132
device		ale		# Atheros AR8121/AR8113/AR8114
device		bce		# Broadcom NetXtreme II Gigabit Ethernet
device		bfe		# Broadcom BCM440x 10/100 Ethernet
device		bnx		# Broadcom NetXtreme 5718/57785 Gigabit Ethernet
device		dc		# DEC/Intel 21143 and various workalikes
device		et		# Agere ET1310 10/100/1000 Ethernet
device		fxp		# Intel EtherExpress PRO/100B (82557, 82558)
device		jme		# JMicron Gigabit/Fast Ethernet
device		pcn		# AMD Am79C97x PCI 10/100 NICs
device		rl		# RealTek 8129/8139
device		re		# RealTek 8139C+/8169
device		sf		# Adaptec AIC-6915 (``Starfire'')
device		sis		# Silicon Integrated Systems SiS 900/SiS 7016
device		sk		# SysKonnect GEnesis, LinkSys EG1023, D-Link
device		ste		# Sundance ST201 (D-Link DFE-550TX)
device		tl		# Texas Instruments ThunderLAN
device		tx		# SMC EtherPower II (83c170 ``EPIC'')
device		vge		# VIA 612x GigE
device		vr		# VIA Rhine, Rhine II
device		wb		# Winbond W89C840F
device		xl		# 3Com 3c90x (``Boomerang'', ``Cyclone'')
device		bge		# Broadcom BCM570x (``Tigon III'')
device		stge		# Sundance/Tamarack TC9021 Gigabit Ethernet
device		msk		# Marvell/SysKonnect Yukon II Gigabit Ethernet
device		nfe		# NVIDIA nForce MCP 10/100/Gigabit Ethernet
device		xe		# Xircom Ethernet

# Wireless NIC cards
options 	IEEE80211_DEBUG		#enable debugging msgs
options 	IEEE80211_SUPPORT_MESH	#enable 802.11s D3.0 support
options 	IEEE80211_SUPPORT_TDMA	#enable TDMA support
device		wlan		# 802.11 support
device		wlan_ccmp	# 802.11 CCMP support
device		wlan_tkip	# 802.11 TKIP support
device		wlan_wep	# 802.11 WEP support
#device		wlan_amrr	# AMRR
device		ath		# Atheros NICs
device		ath_hal		# Atheros Hardware Access Layer
options 	AH_SUPPORT_AR5416	# enable AR5416 tx/rx descriptors
device		ath_rate_sample	# Atheros Sample TX rate control algorithm
device		siba_bwn	# Sonic Inc. Silicon Backplane needed for bwn
device		bwn		# Broadcom BCM43xx NICs using v4 firmware
device		ral		# Ralink Technology 802.11 wireless NIC
device		iwn		# Intel IEEE 802.11n wireless network driver
#device		rtw		# RealTek 802.11 wireless NIC
device		wpi		# Intel 3945ABG Wireless LAN IEEE 802.11 driver
# WaveLAN/IEEE 802.11 wireless NICs.  Note: the WaveLAN/IEEE really
# exists only as a PCMCIA device, so there is no ISA attachment needed
# and resources will always be dynamically assigned by the pccard code.
device		wi

device		lnc0	at isa? disable port 0x280 irq 10 drq 0
device		sn0	at isa? disable port 0x300 irq 10

# Pseudo devices - the number indicates how many units to allocate.
pseudo-device	loop		# Network loopback
pseudo-device	ether		# Ethernet support
pseudo-device	tun		# Packet tunnel.
pseudo-device	pty		# Pseudo-ttys (telnet etc)
pseudo-device	md		# Memory "disks"
pseudo-device	vn		# File image "disks"
pseudo-device	gif		# IPv6 and IPv4 tunneling
pseudo-device   lagg

# CARP support
options		CARP
pseudo-device	carp

# The `bpf' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
pseudo-device	bpf		#Berkeley packet filter

device		crypto		# core crypto support, used by wlan
device		cryptodev	# /dev/crypto for access to h/w

# USB support
#
device		usb		# USB Bus (required)
device		uhci		# UHCI PCI->USB interface
device		ohci		# OHCI PCI->USB interface
device		uhid		# "Human Interface Devices"
device		ukbd		# Keyboard
device		ulpt		# Printer
device		umass		# Disks/Mass storage - Requires scbus and da
# USB Ethernet, requires mii
device		axe		# ASIX Electronics USB Ethernet
device		aue		# ADMtek USB ethernet
device		cue		# CATC USB ethernet
device		kue		# Kawasaki LSI USB ethernet
# USB wireless NICs, requires wlan, wlan_amrr
#device		rum		# Ralink Technology RT2501USB/RT2601USB

# FireWire support
device		firewire	# FireWire bus code
device		sbp		# SCSI over FireWire (Requires scbus and da)
device		fwe		# Ethernet over FireWire (non-standard!)

# MMC/SD
device		mmc
device		mmcsd
device		sdhci

# RNG
#
device		aesni		# hardware crypto/RNG for AES-NI
device		rdrand		# hardware RNG for RdRand

device		gpio_acpi
device		gpio_intel	# GPIO support for Intel SoCs
#device		ichiic
device		smbus		# Bus support, required for smb below.
device		smbacpi

# evdev interface
device		evdev		# input event device support
options		EVDEV_SUPPORT	# evdev support in legacy drivers