GENERIC revision 1.83 1 1.83 christos # $NetBSD: GENERIC,v 1.83 2014/08/18 06:31:24 christos Exp $
2 1.37 garbled #
3 1.48 phx # machine description file for GENERIC NAS
4 1.37 garbled #
5 1.37 garbled # This machine description file is used to generate the default NetBSD
6 1.37 garbled # kernel. The generic kernel does not include all options, subsystems
7 1.37 garbled # and device drivers, but should be useful for most applications.
8 1.37 garbled #
9 1.37 garbled # The machine description file can be customised for your specific
10 1.37 garbled # machine to reduce the kernel size and improve its performance.
11 1.37 garbled #
12 1.37 garbled # For further information on compiling NetBSD kernels, see the config(8)
13 1.37 garbled # man page.
14 1.37 garbled #
15 1.37 garbled # For further information on hardware support for this architecture, see
16 1.37 garbled # the intro(4) man page. For further information about kernel options
17 1.37 garbled # for this architecture, see the options(4) man page. For an explanation
18 1.37 garbled # of each device driver in this file see the section 4 man page for the
19 1.37 garbled # device.
20 1.37 garbled
21 1.37 garbled include "arch/sandpoint/conf/std.sandpoint"
22 1.37 garbled
23 1.37 garbled options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24 1.37 garbled
25 1.83 christos #ident "GENERIC-$Revision: 1.83 $"
26 1.37 garbled
27 1.37 garbled maxusers 32
28 1.37 garbled
29 1.48 phx #options ALTIVEC # Include AltiVec support
30 1.37 garbled
31 1.67 phx # Standard system options
32 1.67 phx #options INSECURE # disable kernel security levels
33 1.67 phx
34 1.67 phx options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
35 1.67 phx options KTRACE
36 1.67 phx
37 1.81 phx options SYSVMSG # System V message queues
38 1.81 phx options SYSVSEM # System V semaphores
39 1.81 phx options SYSVSHM # System V shared memory
40 1.67 phx
41 1.67 phx #options MODULAR # module(7) support
42 1.67 phx #options USERCONF # userconf(4) support
43 1.37 garbled
44 1.67 phx #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
45 1.67 phx options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
46 1.51 nisimura
47 1.67 phx # Enable experimental buffer queue strategy for better responsiveness under
48 1.67 phx # high disk I/O load. Use it with caution - it's not proven to be stable yet.
49 1.67 phx #options BUFQ_READPRIO
50 1.67 phx #options BUFQ_PRIOCSCAN
51 1.67 phx
52 1.67 phx # Diagnostic/debugging support options
53 1.67 phx #options DIAGNOSTIC # cheap kernel consistency checks
54 1.67 phx #options DEBUG # expensive debugging checks/support
55 1.37 garbled options DDB
56 1.37 garbled #options DDB_HISTORY_SIZE=100 # Enable history editing in DDB
57 1.67 phx #options TRAP_PANICWAIT
58 1.37 garbled #options PMAPCHECK
59 1.37 garbled #options PMAPDEBUG
60 1.67 phx options MSGBUFSIZE=65536
61 1.67 phx
62 1.67 phx #makeoptions DEBUG="-g"
63 1.37 garbled
64 1.37 garbled # Compatibility options
65 1.37 garbled options COMPAT_NOMID # NetBSD 0.8, 386BSD, and BSDI
66 1.37 garbled options COMPAT_09 # NetBSD 0.9
67 1.37 garbled options COMPAT_10 # NetBSD 1.0
68 1.37 garbled options COMPAT_11 # NetBSD 1.1
69 1.37 garbled options COMPAT_12 # NetBSD 1.2, 386BSD, and BSDI
70 1.37 garbled options COMPAT_13 # NetBSD 1.3, 386BSD, and BSDI
71 1.37 garbled options COMPAT_14 # NetBSD 1.4
72 1.37 garbled options COMPAT_15 # NetBSD 1.5
73 1.37 garbled options COMPAT_16 # NetBSD 1.6
74 1.37 garbled options COMPAT_20 # NetBSD 2.0
75 1.37 garbled options COMPAT_30 # NetBSD 3.0
76 1.39 nisimura options COMPAT_40 # NetBSD 4.0
77 1.43 mrg options COMPAT_50 # NetBSD 5.0 compatibility.
78 1.74 apb options COMPAT_60 # NetBSD 6.0 compatibility.
79 1.82 apb options COMPAT_70 # NetBSD 7.0 compatibility.
80 1.37 garbled options COMPAT_43 # 4.3BSD, 386BSD, and BSDI
81 1.37 garbled #options COMPAT_386BSD_MBRPART # recognize old partition ID
82 1.67 phx #options COMPAT_LINUX # binary compatibility with Linux
83 1.37 garbled #options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended.
84 1.52 phx options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
85 1.37 garbled
86 1.67 phx # Wedge support
87 1.83 christos options DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances
88 1.83 christos options DKWEDGE_METHOD_GPT # Supports GPT partitions as wedges
89 1.83 christos options DKWEDGE_METHOD_BSDLABEL # Support disklabel entries as wedges
90 1.83 christos options DKWEDGE_METHOD_MBR # Support MBR partitions as wedges
91 1.83 christos options DKWEDGE_METHOD_APPLE # Support Apple partitions as wedges
92 1.37 garbled
93 1.67 phx # File systems
94 1.37 garbled file-system FFS # UFS
95 1.37 garbled file-system EXT2FS # second extended file system (linux)
96 1.37 garbled #file-system LFS # log-structured file system
97 1.37 garbled file-system MFS # memory file system
98 1.37 garbled file-system NFS # Network File System client
99 1.37 garbled #file-system NTFS # Windows/NT file system (experimental)
100 1.69 phx file-system CD9660 # ISO 9660 + Rock Ridge file system
101 1.48 phx file-system MSDOSFS # MS-DOS file system
102 1.37 garbled file-system FDESC # /dev/fd
103 1.37 garbled file-system KERNFS # /kern
104 1.37 garbled file-system NULLFS # loopback file system
105 1.37 garbled #file-system OVERLAY # overlay file system
106 1.48 phx file-system PROCFS # /proc
107 1.37 garbled #file-system UMAPFS # NULLFS + uid and gid remapping
108 1.37 garbled #file-system UNION # union file system
109 1.37 garbled #file-system CODA # Coda File System; also needs vcoda (below)
110 1.37 garbled #file-system SMBFS # experimental - CIFS; also needs nsmb (below)
111 1.37 garbled file-system PTYFS # /dev/ptm support
112 1.37 garbled file-system TMPFS # Efficient memory file-system
113 1.37 garbled
114 1.37 garbled # File system options
115 1.55 bouyer options QUOTA # legacy UFS quotas
116 1.55 bouyer options QUOTA2 # new, in-filesystem UFS quotas
117 1.37 garbled #options FFS_EI # FFS Endian Independent support
118 1.63 dholland options WAPBL # File system journaling support
119 1.37 garbled options NFSSERVER # Network File System server
120 1.37 garbled #options FFS_NO_SNAPSHOT # No FFS snapshot support
121 1.37 garbled #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
122 1.37 garbled
123 1.67 phx #options NFS_BOOT_DHCP
124 1.67 phx options NFS_BOOT_BOOTPARAM,NFS_BOOT_BOOTP
125 1.67 phx
126 1.57 phx # Networking options
127 1.57 phx #options GATEWAY # packet forwarding
128 1.57 phx options INET # IP + ICMP + TCP + UDP
129 1.52 phx options INET6 # IPV6
130 1.57 phx #options IPSEC # IP security
131 1.57 phx #options IPSEC_DEBUG # debug for IP security
132 1.57 phx #options MROUTING # IP multicast routing
133 1.57 phx #options PIM # Protocol Independent Multicast
134 1.57 phx #options NETATALK # AppleTalk networking protocols
135 1.57 phx #options PPP_BSDCOMP # BSD-Compress compression support for PPP
136 1.57 phx #options PPP_DEFLATE # Deflate compression support for PPP
137 1.57 phx #options PPP_FILTER # Active filter support for PPP (requires BPF)
138 1.57 phx #options IPFILTER_LOG # ipmon(8) log support
139 1.57 phx #options IPFILTER_LOOKUP # ippool(8) support
140 1.57 phx #options IPFILTER_COMPAT # Compat for IP-Filter
141 1.57 phx #options IPFILTER_DEFAULT_BLOCK # block all packets by default
142 1.37 garbled #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
143 1.37 garbled
144 1.37 garbled #options ALTQ # Manipulate network interfaces' output queues
145 1.37 garbled #options ALTQ_BLUE # Stochastic Fair Blue
146 1.37 garbled #options ALTQ_CBQ # Class-Based Queueing
147 1.37 garbled #options ALTQ_CDNR # Diffserv Traffic Conditioner
148 1.37 garbled #options ALTQ_FIFOQ # First-In First-Out Queue
149 1.37 garbled #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
150 1.37 garbled #options ALTQ_HFSC # Hierarchical Fair Service Curve
151 1.37 garbled #options ALTQ_LOCALQ # Local queueing discipline
152 1.37 garbled #options ALTQ_PRIQ # Priority Queueing
153 1.37 garbled #options ALTQ_RED # Random Early Detection
154 1.37 garbled #options ALTQ_RIO # RED with IN/OUT
155 1.37 garbled #options ALTQ_WFQ # Weighted Fair Queueing
156 1.37 garbled
157 1.67 phx # These options enable verbose messages for several subsystems.
158 1.67 phx # Warning, these may compile large string tables into the kernel!
159 1.67 phx #options PCIVERBOSE # verbose PCI device autoconfig messages
160 1.67 phx #options MIIVERBOSE # verbose PHY autoconfig messages
161 1.67 phx #options PCI_CONFIG_DUMP # verbosely dump PCI config space
162 1.67 phx #options SCSIVERBOSE # human readable SCSI error messages
163 1.67 phx #options USBVERBOSE # verbose USB device autoconfig messages
164 1.37 garbled
165 1.67 phx # Kernel root file system and dump configuration
166 1.37 garbled config netbsd root on ? type ?
167 1.37 garbled
168 1.37 garbled #
169 1.67 phx # Device configuration
170 1.37 garbled #
171 1.56 phx mainbus0 at root
172 1.56 phx cpu* at mainbus0
173 1.62 phx
174 1.65 phx #cfi0 at mainbus0
175 1.65 phx #nor* at cfi?
176 1.65 phx #flash* at nor?
177 1.62 phx
178 1.66 phx nhpow0 at mainbus0 # NH230/231 power,LED,buttons
179 1.66 phx
180 1.67 phx #options PCI_NETBSD_CONFIGURE
181 1.56 phx pci* at mainbus0 bus ?
182 1.56 phx pchb* at pci? dev ? function ? # PCI host bridge
183 1.37 garbled
184 1.56 phx eumb* at mainbus0
185 1.56 phx com0 at eumb? unit 0 # console at 0x4500
186 1.56 phx #com1 at eumb? unit 1
187 1.56 phx satmgr0 at eumb? unit 1 # satmgr at 0x4600
188 1.56 phx ociic* at eumb?
189 1.56 phx iic* at ociic?
190 1.56 phx rs5c372rtc* at iic? addr 0x32
191 1.58 phx s390rtc* at iic? addr 0x30
192 1.65 phx pcf8563rtc* at iic? addr 0x51
193 1.65 phx dsrtc* at iic? addr 0x68
194 1.59 phx strtc* at iic? addr 0x68
195 1.59 phx options STRTC_NO_WATCHDOG
196 1.59 phx options STRTC_NO_USERRAM
197 1.37 garbled
198 1.37 garbled # PCI IDE controllers - see pciide(4) for supported hardware.
199 1.56 phx acardide* at pci? dev ? function ? # Acard IDE controllers
200 1.52 phx cmdide* at pci? dev ? function ? # CMD tech IDE controllers
201 1.52 phx iteide* at pci? dev ? function ? # IT Express IDE controllers
202 1.37 garbled satalink* at pci? dev ? function ? # SiI SATALink controllers
203 1.68 phx viaide* at pci? dev ? function ? # VIA IDE controllers
204 1.37 garbled
205 1.37 garbled # ATA (IDE) bus support
206 1.37 garbled atabus* at ata?
207 1.37 garbled
208 1.37 garbled # IDE drives
209 1.81 phx # Flags are used only with controllers that support DMA operations
210 1.81 phx # and mode settings (e.g. some pciide controllers)
211 1.81 phx # The lowest order four bits (rightmost digit) of the flags define the PIO
212 1.81 phx # mode to use, the next set of four bits the DMA mode and the third set the
213 1.81 phx # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
214 1.81 phx # to use, and the last bit must be 1 for this setting to be used.
215 1.81 phx # For DMA and UDMA, 0xf (1111) means 'disable'.
216 1.81 phx # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
217 1.81 phx # (0xc=1100, 0xa=1010, 0xf=1111)
218 1.81 phx # 0x0000 means "use whatever the drive claims to support".
219 1.81 phx wd* at atabus? drive ? flags 0x0000
220 1.81 phx
221 1.81 phx # ATAPI bus support
222 1.81 phx atapibus* at atapi?
223 1.81 phx
224 1.81 phx # ATAPI devices
225 1.81 phx # flags have the same meaning as for IDE drives.
226 1.81 phx cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
227 1.81 phx sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
228 1.81 phx uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
229 1.37 garbled
230 1.37 garbled # PCI network interfaces
231 1.56 phx ral* at pci? dev ? function ? # Ralink Technology RT25x0 802.11a/b/g
232 1.37 garbled re* at pci? dev ? function ? # Realtek 8139C+/8169/8169S/8110S
233 1.46 phx skc* at pci? dev ? function ? # Marvell Yukon Gigabit Ethernet
234 1.46 phx sk* at skc? # Marvell Yukon Gigabit Ethernet
235 1.56 phx stge* at pci? dev ? function ? # Sundance ST1023 Gigabit
236 1.56 phx tlp* at pci? dev ? function ? # DEC Tulip and similar
237 1.56 phx wm* at pci? dev ? function ? # Intel 8254x Gigabit Ethernet
238 1.37 garbled
239 1.37 garbled inphy* at mii? phy ? # Intel 82555 PHYs
240 1.37 garbled nsphy* at mii? phy ? # NS83840 PHYs
241 1.37 garbled rgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs
242 1.37 garbled makphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs
243 1.37 garbled ukphy* at mii? phy ? # generic unknown PHYs
244 1.37 garbled
245 1.66 phx # GPIO devices
246 1.66 phx gpio* at gpiobus?
247 1.66 phx
248 1.37 garbled # USB Controller and Devices
249 1.37 garbled ehci* at pci? dev ? function ? # Enhanced Host Controller
250 1.37 garbled ohci* at pci? dev ? function ? # Open Host Controller
251 1.37 garbled
252 1.37 garbled # USB bus support
253 1.37 garbled usb* at ehci?
254 1.37 garbled usb* at ohci?
255 1.37 garbled
256 1.37 garbled # USB Hubs
257 1.37 garbled uhub* at usb?
258 1.37 garbled uhub* at uhub? port ?
259 1.37 garbled
260 1.52 phx # USB HID devices
261 1.52 phx uhidev* at uhub? port ? configuration ? interface ? # USB HID device
262 1.52 phx uthum* at uhidev? reportid ? # TEMPerHUM sensors
263 1.52 phx uhid* at uhidev? reportid ? # USB Generic HID
264 1.52 phx
265 1.54 phx # USB video
266 1.54 phx uvideo* at uhub? # USB Video Class capture devices
267 1.54 phx video* at videobus?
268 1.54 phx
269 1.52 phx # USB printer
270 1.81 phx ulpt* at uhub? port ? configuration ? interface ?
271 1.52 phx
272 1.37 garbled # USB Mass Storage
273 1.37 garbled umass* at uhub? port ? configuration ? interface ?
274 1.37 garbled wd* at umass?
275 1.37 garbled
276 1.81 phx # USB scanners
277 1.81 phx #uscanner* at uhub? port ?
278 1.81 phx ugen* at uhub? port ? configuration ? interface ? # USB Generic driver
279 1.81 phx
280 1.81 phx # SCSI bus support
281 1.81 phx scsibus* at umass?
282 1.81 phx
283 1.81 phx # SCSI devices
284 1.81 phx sd* at scsibus? target ? lun ? # SCSI disk drives
285 1.81 phx cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
286 1.35 elad
287 1.70 phx
288 1.68 phx #
289 1.68 phx # Pseudo-Devices
290 1.68 phx #
291 1.68 phx #pseudo-device crypto # /dev/crypto device
292 1.68 phx #pseudo-device swcrypto # software crypto implementation
293 1.68 phx
294 1.68 phx # disk/mass storage pseudo-devices
295 1.77 christos #pseudo-device ccd # concatenated/striped disk devices
296 1.77 christos #pseudo-device cgd # cryptographic disk devices
297 1.68 phx pseudo-device fss # file system snapshot device
298 1.68 phx #pseudo-device putter # for puffs and pud
299 1.68 phx
300 1.78 christos pseudo-device raid # RAIDframe disk driver
301 1.68 phx options RAID_AUTOCONFIG # auto-configuration of RAID components
302 1.68 phx # Options to enable various other RAIDframe RAID types.
303 1.68 phx #options RF_INCLUDE_EVENODD=1
304 1.68 phx #options RF_INCLUDE_RAID5_RS=1
305 1.68 phx #options RF_INCLUDE_PARITYLOGGING=1
306 1.68 phx #options RF_INCLUDE_CHAINDECLUSTER=1
307 1.68 phx #options RF_INCLUDE_INTERDECLUSTER=1
308 1.68 phx #options RF_INCLUDE_PARITY_DECLUSTERING=1
309 1.68 phx #options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
310 1.67 phx
311 1.68 phx pseudo-device vnd
312 1.68 phx #options VND_COMPRESSION # compressed vnd(4)
313 1.67 phx
314 1.67 phx # network pseudo-devices
315 1.67 phx pseudo-device loop
316 1.67 phx pseudo-device bpfilter # packet filter
317 1.68 phx #pseudo-device carp # Common Address Redundancy Protocol
318 1.67 phx #pseudo-device ppp # Point-to-Point Protocol
319 1.67 phx #pseudo-device pppoe # PPP over Ethernet (RFC 2516)
320 1.67 phx #pseudo-device ipfilter
321 1.67 phx #pseudo-device pf # PF packet filter
322 1.67 phx #pseudo-device pflog # PF log if
323 1.67 phx #pseudo-device sl # Serial Line IP
324 1.67 phx #pseudo-device vlan # IEEE 802.1q encapsulation
325 1.67 phx #pseudo-device tun # network tunneling over tty
326 1.67 phx #pseudo-device tap # virtual Ethernet
327 1.67 phx #pseudo-device gre # generic L3 over IP tunnel
328 1.67 phx #pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
329 1.67 phx #pseudo-device faith # IPv[46] tcp relay translation i/f
330 1.67 phx #pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
331 1.68 phx #pseudo-device vlan # IEEE 802.1q encapsulation
332 1.67 phx #pseudo-device bridge # simple inter-network bridging
333 1.67 phx #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
334 1.67 phx #pseudo-device agr # IEEE 802.3ad link aggregation
335 1.68 phx
336 1.68 phx #
337 1.68 phx # accept filters
338 1.68 phx #pseudo-device accf_data # "dataready" accept filter
339 1.68 phx #pseudo-device accf_http # "httpready" accept filter
340 1.67 phx
341 1.67 phx # miscellaneous pseudo-devices
342 1.67 phx pseudo-device pty
343 1.67 phx pseudo-device clockctl # user control of clock subsystem
344 1.67 phx pseudo-device ksyms # /dev/ksyms
345 1.68 phx #pseudo-device lockstat # lock profiling
346 1.68 phx
347 1.68 phx # a pseudo device needed for Coda # also needs CODA (above)
348 1.78 christos #pseudo-device vcoda # coda minicache <-> venus comm.
349 1.68 phx
350 1.68 phx # a pseudo device needed for SMBFS
351 1.68 phx #pseudo-device nsmb # experimental - SMB requester
352 1.67 phx
353 1.67 phx # userland interface to drivers, including autoconf and properties retrieval
354 1.67 phx pseudo-device drvctl
355 1.67 phx
356 1.35 elad # Veriexec
357 1.35 elad #
358 1.35 elad # a pseudo device needed for veriexec
359 1.78 christos #pseudo-device veriexec
360 1.35 elad #
361 1.35 elad # Uncomment the fingerprint methods below that are desired. Note that
362 1.35 elad # removing fingerprint methods will have almost no impact on the kernel
363 1.35 elad # code size.
364 1.35 elad #
365 1.68 phx #options VERIFIED_EXEC_FP_RMD160
366 1.68 phx #options VERIFIED_EXEC_FP_SHA256
367 1.68 phx #options VERIFIED_EXEC_FP_SHA384
368 1.68 phx #options VERIFIED_EXEC_FP_SHA512
369 1.68 phx #options VERIFIED_EXEC_FP_SHA1
370 1.68 phx #options VERIFIED_EXEC_FP_MD5
371 1.67 phx
372 1.68 phx #options PAX_MPROTECT=0 # PaX mprotect(2) restrictions
373 1.68 phx #options PAX_ASLR=0 # PaX Address Space Layout Randomization
374