clockmod: Properly implement Intel software controlled clock modulation
[dragonfly.git] / sys / config / X86_64_GENERIC
1 #
2 # X86_64_GENERIC -- Generic kernel configuration file for DragonFly/x86_64
3 #
4 # Check the LINT configuration file in sys/config, for an
5 # exhaustive list of options.
6
7 platform        pc64
8 machine         x86_64
9 machine_arch    x86_64
10 cpu             HAMMER_CPU
11 ident           X86_64_GENERIC
12 maxusers        0
13 #options        CPU_DISABLE_AVX
14
15 makeoptions     DEBUG=-g                #Build kernel with gdb(1) debug symbols
16
17 options         INET                    #InterNETworking
18 options         INET6                   #IPv6 communications protocols
19 options         HAMMER                  #Hammer Filesystem
20 options         NULLFS                  #NULL filesystem
21 options         FFS                     #Berkeley Fast Filesystem
22 options         FFS_ROOT                #FFS usable as root device [keep this!]
23 options         SOFTUPDATES             #Enable FFS soft updates support
24 options         UFS_DIRHASH             #Improve performance on big directories
25 options         MFS                     #Memory Filesystem
26 options         TMPFS                   #Temporary Filesystem
27 options         MD_ROOT                 #MD is a potential root device
28 options         NFS                     #Network Filesystem
29 options         NFS_ROOT                #NFS usable as root device, NFS required
30 options         MSDOSFS                 #MSDOS Filesystem
31 options         CD9660                  #ISO 9660 Filesystem
32 options         PROCFS                  #Process filesystem
33 #options        COMPAT_43               #Compatible with BSD 4.3
34 options         SCSI_DELAY=5000         #Delay (in ms) before probing SCSI
35 options         IFPOLL_ENABLE           # Support mixed interrupt-polling
36                                         # handling of network device drivers
37 options         UCONSOLE                #Allow users to grab the console
38 options         KTRACE                  #ktrace(1) support
39 options         SYSVSHM                 #SYSV-style shared memory
40 options         SYSVMSG                 #SYSV-style message queues
41 options         SYSVSEM                 #SYSV-style semaphores
42 options         P1003_1B                #Posix P1003_1B real-time extensions
43 options         _KPOSIX_PRIORITY_SCHEDULING
44 options         ICMP_BANDLIM            #Rate limit bad replies
45 options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
46 options         AHC_REG_PRETTY_PRINT    # Print register bitfields in debug
47                                         # output.  Adds ~128k to driver.
48 options         AHD_REG_PRETTY_PRINT    # Print register bitfields in debug
49                                         # output.  Adds ~215k to driver.
50 options         DSCHED_FQ               # Fair-queuing disk scheduler
51
52 # ALTQ
53 options         ALTQ            #alternate queueing
54 options         ALTQ_CBQ        #class based queueing
55 options         ALTQ_RED        #random early detection
56 options         ALTQ_RIO        #triple red for diffserv (needs RED)
57 options         ALTQ_HFSC       #hierarchical fair service curve
58 options         ALTQ_PRIQ       #priority queue
59 options         ALTQ_FAIRQ      #fair queueing
60 #options        ALTQ_NOPCC      #don't use processor cycle counter
61 #options        ALTQ_DEBUG      #for debugging
62
63 # Debugging for Development
64 options         DDB
65 options         DDB_TRACE
66 options         INVARIANTS
67
68 device          isa
69 device          pci
70
71 # AHCI driver, this will override NATA for AHCI devices,
72 # both drivers may be included.
73 #
74 device          ahci
75
76 # SiI3124/3132 driver
77 #
78 device          sili
79
80 # NEW-ATA (NATA) and ATAPI devices
81 #
82 device          nata
83 device          natadisk                # ATA disk drives
84 device          natapicd                # ATAPI CDROM drives
85 device          natapifd                # ATAPI floppy drives
86 device          natapist                # ATAPI tape drives
87 device          natapicam               # Emulate ATAPI devices as SCSI
88 device          nataraid                # support for ATA software RAID
89                                         # controllers
90 device          natausb                 # ATA-over-USB support
91 options         ATA_STATIC_ID           # Static device numbering
92
93 # SCSI Controllers
94 device          ahc             # AHA2940 and onboard AIC7xxx devices
95 device          ahd             # AHA39320/29320 and onboard AIC79xx devices
96 device          amd             # AMD 53C974 (Tekram DC-390(T))
97 device          isp             # Qlogic family
98 #device         ispfw           # Firmware for QLogic HBAs- normally a module
99 device          mpt             # LSI-Logic MPT/Fusion
100 device          mps             # LSI-Logic MPT-Fusion 2
101 device          ncr             # NCR/Symbios Logic
102 device          sym             # NCR/Symbios Logic (newer chipsets)
103 options         SYM_SETUP_LP_PROBE_MAP=0x40
104                                 # Allow ncr to attach legacy NCR devices when
105                                 # both sym and ncr are configured
106
107 device          adv0    at isa?
108 device          adw
109 device          bt
110 device          aic
111
112 device          ncv             # NCR 53C500
113 device          nsp             # Workbit Ninja SCSI-3
114 device          stg             # TMC 18C30/18C50
115
116 # SCSI peripherals
117 device          scbus           # SCSI bus (required)
118 device          da              # Direct Access (disks)
119 device          sa              # Sequential Access (tape etc)
120 device          cd              # CD
121 device          pass            # Passthrough device (direct SCSI access)
122 device          sg              # Passthrough device (linux scsi generic)
123
124 # RAID controllers interfaced to the SCSI subsystem
125 device          arcmsr          # Areca SATA II RAID
126 device          asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
127 device          ciss            # Compaq SmartRAID 5* series
128 device          dpt             # DPT Smartcache - See LINT for options!
129 device          "hpt27xx"       # Highpoint RocketRAID 27xx series
130 device          hptiop          # Highpoint RocketRAID 3xxx series
131 device          hptmv           # Highpoint RocketRAID 182x
132 device          hptrr           # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx
133 device          iir             # Intel Integrated RAID
134 device          mly             # Mylex AcceleRAID/eXtremeRAID
135 device          twa             # 3ware 9000 series PATA/SATA RAID
136 device          tws             # 3ware 9750 series SATA/SAS RAID
137
138 # RAID controllers
139 device          aac             # Adaptec FSA RAID, Dell PERC2/PERC3
140 device          aacp            # SCSI passthrough for aac (requires CAM)
141 device          amr             # AMI MegaRAID
142 device          amrp            # SCSI Passthrough interface (optional, CAM req.)
143 device          ida             # Compaq Smart RAID
144 device          ips             # IBM ServeRAID
145 device          mlx             # Mylex DAC960 family
146 device          mfi             # LSI MegaRAID SAS
147 device          mfip            # LSI MegaRAID SAS passthrough, requires CAM
148 device          twe             # 3ware Escalade 7000/8000's
149
150 # VirtIO support
151 device          virtio          # VirtIO core
152 device          virtio_blk      # VirtIO disk driver
153 device          virtio_pci      # VirtIO transport over PCI bus
154
155 # atkbdc0 controls both the keyboard and the PS/2 mouse
156 device          atkbdc0 at isa? port IO_KBD
157 device          atkbd0  at atkbdc? irq 1
158 device          psm0    at atkbdc? irq 12
159
160 device          vga0    at isa?
161
162 # kbdmux is the keyboard multiplexer
163 device          kbdmux
164
165 # splash screen/screen saver
166 pseudo-device   splash
167
168 # syscons is the default console driver, resembling an SCO console
169 device          sc0     at isa? flags 0x100
170 options         SC_PIXEL_MODE           # add support for the raster text mode
171
172 device          agp             # support several AGP chipsets
173
174 # Intel performance-energy bias
175 device          perfbias
176 # Intel software controlled clock modulation
177 device          clockmod
178
179 # HW monitoring devices
180 #device         aps0    at isa? port 0x1600
181 device          lm0     at isa? port 0x290
182 device          it0     at isa? port 0x290
183 device          it1     at isa? port 0xc00
184 device          it2     at isa? port 0xd00
185 device          it3     at isa? port 0x228
186 device          wbsio0  at isa? port 0x2e
187 device          wbsio1  at isa? port 0x4e
188 device          lm#3    at wbsio?
189
190 # PCCARD (PCMCIA) support
191 device          pccard
192 device          cardbus
193 device          cbb
194
195 # Serial (COM) ports
196 device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
197 device          sio1    at isa? port IO_COM2 irq 3
198 device          sio2    at isa? disable port IO_COM3 irq 5
199 device          sio3    at isa? disable port IO_COM4 irq 9
200
201 # Parallel port
202 device          ppc0    at isa? irq 7
203 device          ppbus           # Parallel port bus (required)
204 device          lpt             # Printer
205 device          plip            # TCP/IP over parallel
206 device          ppi             # Parallel port interface device
207 #device         vpo             # Requires scbus and da
208
209 # PCI Ethernet NICs.
210 device          de              # DEC/Intel DC21x4x (``Tulip'')
211 device          txp             # 3Com 3cR990 (``Typhoon'')
212 device          vx              # 3Com 3c590, 3c595 (``Vortex'')
213
214 device          em              # Intel PRO/1000 adapter Gigabit Ethernet Card (``Wiseman'')
215                                 # Requires ig_hal
216 device          igb             # Intel Pro/1000 (82575, 82576, 82580, i350)
217                                 # Requires ig_hal
218 device          ig_hal          # Intel PRO/1000 hardware abstraction layer
219 device          ix              # Intel PRO/10GbE PCIE Ethernet Family
220
221 device          oce             # Emulex OneConnect 10Gb
222
223 # PCI Ethernet NICs that use the common MII bus controller code.
224 # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
225 device          miibus          # MII bus support
226 device          ae              # Attansic/Atheros L2 Fast Ethernet
227 device          age             # Attansic/Atheros L1 Gigabit Ethernet
228 device          alc             # Atheros AR8131/AR8132
229 device          ale             # Atheros AR8121/AR8113/AR8114
230 device          bce             # Broadcom NetXtreme II Gigabit Ethernet
231 device          bfe             # Broadcom BCM440x 10/100 Ethernet
232 device          bnx             # Broadcom NetXtreme 5718/57785 Gigabit Ethernet
233 device          dc              # DEC/Intel 21143 and various workalikes
234 device          et              # Agere ET1310 10/100/1000 Ethernet
235 device          fxp             # Intel EtherExpress PRO/100B (82557, 82558)
236 device          jme             # JMicron Gigabit/Fast Ethernet
237 device          pcn             # AMD Am79C97x PCI 10/100 NICs
238 device          rl              # RealTek 8129/8139
239 device          re              # RealTek 8139C+/8169
240 device          sf              # Adaptec AIC-6915 (``Starfire'')
241 device          sis             # Silicon Integrated Systems SiS 900/SiS 7016
242 device          sk              # SysKonnect GEnesis, LinkSys EG1023, D-Link
243 device          ste             # Sundance ST201 (D-Link DFE-550TX)
244 device          tl              # Texas Instruments ThunderLAN
245 device          tx              # SMC EtherPower II (83c170 ``EPIC'')
246 device          vge             # VIA 612x GigE
247 device          vr              # VIA Rhine, Rhine II
248 device          wb              # Winbond W89C840F
249 device          xl              # 3Com 3c90x (``Boomerang'', ``Cyclone'')
250 device          bge             # Broadcom BCM570x (``Tigon III'')
251 device          stge            # Sundance/Tamarack TC9021 Gigabit Ethernet
252 device          msk             # Marvell/SysKonnect Yukon II Gigabit Ethernet
253 device          nfe             # NVIDIA nForce MCP 10/100/Gigabit Ethernet
254
255 # ISA Ethernet NICs.
256 # 'device ed' requires 'device miibus'
257 device          ed0     at isa? disable port 0x280 irq 10 iomem 0xd8000
258 device          ex
259 # Xircom Ethernet
260 device          xe
261
262 # Wireless NIC cards
263 options         IEEE80211_DEBUG         #enable debugging msgs
264 options         IEEE80211_SUPPORT_MESH  #enable 802.11s D3.0 support
265 options         IEEE80211_SUPPORT_TDMA  #enable TDMA support
266 device          wlan            # 802.11 support
267 device          wlan_ccmp       # 802.11 CCMP support
268 device          wlan_tkip       # 802.11 TKIP support
269 device          wlan_wep        # 802.11 WEP support
270 #device         wlan_amrr       # AMRR
271
272 # Aironet 4500/4800 802.11 wireless NICs.  Note: the declaration below will
273 # work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
274 # mode (the factory default). If you set the switches on your ISA
275 # card for a manually chosen I/O address and IRQ, you must specify
276 # those parameters here.
277 device          an
278 device          ath             # Atheros NICs
279 device          ath_hal         # Atheros Hardware Access Layer
280 options         AH_SUPPORT_AR5416       # enable AR5416 tx/rx descriptors
281 device          ath_rate_sample # Atheros Sample TX rate control algorithm
282 device          ral             # Ralink Technology 802.11 wireless NIC
283 device          iwn             # Intel
284 #device         rtw             # RealTek 802.11 wireless NIC
285 # WaveLAN/IEEE 802.11 wireless NICs.  Note: the WaveLAN/IEEE really
286 # exists only as a PCMCIA device, so there is no ISA attachment needed
287 # and resources will always be dynamically assigned by the pccard code.
288 device          wi
289
290 device          lnc0    at isa? disable port 0x280 irq 10 drq 0
291 device          cs0     at isa? disable port 0x300
292 device          sn0     at isa? disable port 0x300 irq 10
293
294 # Pseudo devices - the number indicates how many units to allocate.
295 pseudo-device   loop            # Network loopback
296 pseudo-device   ether           # Ethernet support
297 pseudo-device   sl      1       # Kernel SLIP
298 pseudo-device   ppp     1       # Kernel PPP
299 pseudo-device   tun             # Packet tunnel.
300 pseudo-device   pty             # Pseudo-ttys (telnet etc)
301 pseudo-device   md              # Memory "disks"
302 pseudo-device   gif             # IPv6 and IPv4 tunneling
303 pseudo-device   faith   1       # IPv6-to-IPv4 relaying (translation)
304
305 # CARP support
306 options         CARP
307 pseudo-device   carp
308
309 # The `bpf' pseudo-device enables the Berkeley Packet Filter.
310 # Be aware of the administrative consequences of enabling this!
311 pseudo-device   bpf             #Berkeley packet filter
312
313 pseudo-device   crypto          # core crypto support, used by wlan
314
315 # USB support
316 #
317 # NOTE: If you enable 'usb4bsd' you must also disable 'usb' and rebuild
318 #       the world with WANT_USB4BSD=true in /etc/make.conf, in addition
319 #       to rebuilding the kernel.
320 #
321 device          uhci            # UHCI PCI->USB interface
322 device          ohci            # OHCI PCI->USB interface
323 device          usb             # USB Bus (required)
324 #device         "usb4bsd"       # use this instead of usb for the new stack
325 device          ugen            # Generic
326 device          uhid            # "Human Interface Devices"
327 device          ukbd            # Keyboard
328 device          ulpt            # Printer
329 device          umass           # Disks/Mass storage - Requires scbus and da
330 device          ums             # Mouse
331 device          uscanner        # Scanners
332 device          urio            # Diamond Rio MP3 Player
333 # USB Ethernet, requires mii
334 device          aue             # ADMtek USB ethernet
335 device          axe             # ASIX Electronics USB Ethernet
336 device          cue             # CATC USB ethernet
337 device          kue             # Kawasaki LSI USB ethernet
338 device          rue             # RealTek 8150 based USB ethernet
339 # USB wireless NICs, requires wlan, wlan_amrr
340 #device         rum             # Ralink Technology RT2501USB/RT2601USB
341 #device         ural            # Ralink Technology RT2500USB
342
343 # FireWire support
344 device          firewire        # FireWire bus code
345 device          sbp             # SCSI over FireWire (Requires scbus and da)
346 device          fwe             # Ethernet over FireWire (non-standard!)
347
348 # MMC/SD
349 device          mmc
350 device          mmcsd
351 device          sdhci