GENERIC revision 1.174 1 1.174 christos # $NetBSD: GENERIC,v 1.174 2024/01/29 18:27:11 christos Exp $
2 1.23 gmcgarry #
3 1.23 gmcgarry # GENERIC machine description file
4 1.130 tsutsui #
5 1.23 gmcgarry # This machine description file is used to generate the default NetBSD
6 1.23 gmcgarry # kernel. The generic kernel does not include all options, subsystems
7 1.23 gmcgarry # and device drivers, but should be useful for most applications.
8 1.23 gmcgarry #
9 1.23 gmcgarry # The machine description file can be customised for your specific
10 1.23 gmcgarry # machine to reduce the kernel size and improve its performance.
11 1.23 gmcgarry #
12 1.23 gmcgarry # For further information on compiling NetBSD kernels, see the config(8)
13 1.23 gmcgarry # man page.
14 1.23 gmcgarry #
15 1.23 gmcgarry # For further information on hardware support for this architecture, see
16 1.23 gmcgarry # the intro(4) man page. For further information about kernel options
17 1.23 gmcgarry # for this architecture, see the options(4) man page. For an explanation
18 1.23 gmcgarry # of each device driver in this file see the section 4 man page for the
19 1.23 gmcgarry # device.
20 1.1 soren
21 1.1 soren include "arch/cobalt/conf/std.cobalt"
22 1.1 soren
23 1.31 atatat options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24 1.31 atatat
25 1.174 christos #ident "GENERIC-$Revision: 1.174 $"
26 1.1 soren
27 1.1 soren maxusers 32
28 1.1 soren
29 1.1 soren # Standard system options
30 1.1 soren options KTRACE # system call tracing support
31 1.1 soren options SYSVMSG # System V message queues
32 1.1 soren options SYSVSEM # System V semaphores
33 1.1 soren options SYSVSHM # System V shared memory
34 1.93 tsutsui options NTP # network time protocol
35 1.33 lukem options USERCONF # userconf(4) support
36 1.26 jdolecek #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
37 1.61 atatat options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
38 1.38 junyoung
39 1.156 sevan # Alternate buffer queue strategies for better responsiveness under high
40 1.156 sevan # disk I/O load.
41 1.73 tsutsui #options BUFQ_READPRIO
42 1.162 sevan options BUFQ_PRIOCSCAN
43 1.1 soren
44 1.1 soren # Debugging options
45 1.128 matt options DIAGNOSTIC # extra kernel sanity checking
46 1.168 thorpej #options DEBUG # extra kernel debugging support
47 1.1 soren options DDB # kernel dynamic debugger
48 1.1 soren #options DDB_HISTORY_SIZE=100 # enable history editing in DDB
49 1.128 matt makeoptions DEBUG="-g" # compile full symbol table
50 1.128 matt makeoptions CPUFLAGS="-march=vr5000"
51 1.1 soren
52 1.1 soren # Compatibility options
53 1.154 mrg include "conf/compat_netbsd16.config"
54 1.1 soren #options EXEC_ECOFF # exec ECOFF binaries
55 1.1 soren #options COMPAT_ULTRIX # binary compatibility with Ultrix
56 1.1 soren
57 1.1 soren # File systems
58 1.1 soren file-system FFS # Berkeley Fast Filesystem
59 1.21 lukem file-system EXT2FS # second extended file system (linux)
60 1.1 soren file-system NFS # Sun NFS-compatible filesystem client
61 1.93 tsutsui file-system KERNFS # kernel data-structure filesystem
62 1.93 tsutsui file-system NULLFS # NULL layered filesystem
63 1.7 soren #file-system OVERLAY # overlay file system
64 1.1 soren file-system MFS # memory-based filesystem
65 1.1 soren file-system FDESC # user file descriptor filesystem
66 1.1 soren #file-system UMAPFS # uid/gid remapping filesystem
67 1.93 tsutsui file-system LFS # Log-based filesystem (still experimental)
68 1.93 tsutsui file-system PROCFS # /proc
69 1.93 tsutsui file-system CD9660 # ISO 9660 + Rock Ridge file system
70 1.93 tsutsui file-system UNION # union file system
71 1.93 tsutsui file-system MSDOSFS # MS-DOS FAT filesystem(s).
72 1.1 soren #file-system CODA # Coda File System; also needs vcoda (below)
73 1.93 tsutsui file-system PTYFS # /dev/pts/N support
74 1.125 chs file-system TMPFS # Efficient memory file-system
75 1.90 reinoud #file-system UDF # experimental - OSTA UDF CD/DVD file-system
76 1.1 soren
77 1.1 soren # File system options
78 1.171 simonb #options FFS_EI # FFS Endian Independent support
79 1.171 simonb #options FFS_NO_SNAPSHOT # No FFS snapshot support
80 1.129 bouyer options QUOTA # legacy UFS quotas
81 1.129 bouyer options QUOTA2 # new, in-filesystem UFS quotas
82 1.171 simonb options UFS_DIRHASH # UFS Large Directory Hashing
83 1.171 simonb options UFS_EXTATTR # Extended attribute support for UFS1
84 1.133 dholland options WAPBL # File system journaling support
85 1.171 simonb options LFS_DIRHASH # LFS version of UFS_DIRHASH - experimental
86 1.171 simonb options NFSSERVER # Network File System server
87 1.1 soren
88 1.1 soren # Networking options
89 1.1 soren #options GATEWAY # IP packet forwarding
90 1.1 soren options INET # Internet protocols
91 1.93 tsutsui options INET6 # IPV6
92 1.1 soren #options IPSEC # IP security
93 1.1 soren #options IPSEC_DEBUG # debug for IP security
94 1.1 soren #options MROUTING # packet forwarding of multicast packets
95 1.62 manu #options PIM # Protocol Independent Multicast
96 1.1 soren #options NETATALK # AppleTalk (over Ethernet) protocol
97 1.1 soren #options PPP_BSDCOMP # BSD-Compress compression support for PPP
98 1.1 soren #options PPP_DEFLATE # Deflate compression support for PPP
99 1.10 soren #options PPP_FILTER # Active filter support for PPP (requires bpf)
100 1.17 abs #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
101 1.1 soren
102 1.59 abs #options ALTQ # Manipulate network interfaces' output queues
103 1.59 abs #options ALTQ_BLUE # Stochastic Fair Blue
104 1.59 abs #options ALTQ_CBQ # Class-Based Queueing
105 1.59 abs #options ALTQ_CDNR # Diffserv Traffic Conditioner
106 1.59 abs #options ALTQ_FIFOQ # First-In First-Out Queue
107 1.59 abs #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
108 1.59 abs #options ALTQ_HFSC # Hierarchical Fair Service Curve
109 1.59 abs #options ALTQ_LOCALQ # Local queueing discipline
110 1.59 abs #options ALTQ_PRIQ # Priority Queueing
111 1.59 abs #options ALTQ_RED # Random Early Detection
112 1.59 abs #options ALTQ_RIO # RED with IN/OUT
113 1.59 abs #options ALTQ_WFQ # Weighted Fair Queueing
114 1.59 abs
115 1.143 alnsn # JIT compiler for bpfilter
116 1.143 alnsn #options SLJIT
117 1.143 alnsn #options BPFJIT
118 1.143 alnsn
119 1.1 soren # These options enable verbose messages for several subsystems.
120 1.1 soren # Warning, these may compile large string tables into the kernel!
121 1.1 soren options PCIVERBOSE # verbose PCI device autoconfig messages
122 1.1 soren #options PCI_CONFIG_DUMP # verbosely dump PCI config space
123 1.21 lukem options SCSIVERBOSE # human readable SCSI error messages
124 1.98 tsutsui options MIIVERBOSE # verbose PHY autoconfig messages
125 1.1 soren
126 1.1 soren options NFS_BOOT_DHCP
127 1.1 soren
128 1.1 soren config netbsd root on ? type ?
129 1.1 soren
130 1.1 soren mainbus0 at root
131 1.1 soren
132 1.1 soren cpu0 at mainbus?
133 1.1 soren
134 1.94 tsutsui mcclock0 at mainbus? addr 0x10000070
135 1.94 tsutsui
136 1.1 soren com0 at mainbus? addr 0x1c800000 level 3
137 1.55 thorpej options COM_16650
138 1.1 soren
139 1.115 tsutsui zsc0 at mainbus? addr 0x1c800000 irq 4
140 1.115 tsutsui zstty0 at zsc0 channel 0
141 1.115 tsutsui zstty1 at zsc0 channel 1
142 1.115 tsutsui
143 1.158 christos lcdpanel0 at mainbus? addr 0x1f000000
144 1.40 soren
145 1.1 soren gt0 at mainbus? addr 0x14000000
146 1.1 soren
147 1.1 soren pci* at gt0
148 1.1 soren pchb* at pci? dev ? function ?
149 1.1 soren pcib* at pci? dev ? function ?
150 1.1 soren
151 1.71 tsutsui options PCI_NETBSD_CONFIGURE
152 1.71 tsutsui
153 1.54 jonathan # Cryptographic Devices
154 1.54 jonathan
155 1.54 jonathan # PCI cryptographic devices
156 1.54 jonathan hifn* at pci? dev ? function ? # Hifn 7755/7811/795x
157 1.54 jonathan ubsec* at pci? dev ? function ? # Broadcom 5501/5601/580x/582x
158 1.54 jonathan
159 1.1 soren # PCI serial/parallel interfaces
160 1.113 tsutsui puc* at pci? dev ? function ? # PCI "universal" comm. cards
161 1.113 tsutsui com* at puc? port ?
162 1.1 soren #lpt* at puc? port ?
163 1.1 soren #cy* at pci? dev ? function ? # Cyclades Cyclom-Y serial cards
164 1.1 soren
165 1.1 soren # PCI SCSI controllers
166 1.1 soren #adv* at pci? dev ? function ? # AdvanSys 1200[A,B], 9xx[U,UA]
167 1.1 soren #adw* at pci? dev ? function ? # AdvanSys 9xxUW SCSI
168 1.1 soren ahc* at pci? dev ? function ? # Adaptec [23]94x, aic78x0 SCSI
169 1.1 soren #bha* at pci? dev ? function ? # BusLogic 9xx SCSI
170 1.1 soren #dpt* at pci? dev ? function ? # DPT SmartCache/SmartRAID
171 1.1 soren #isp* at pci? dev ? function ? # Qlogic ISP [12]0x0 SCSI/FC
172 1.4 soren siop* at pci? dev ? function ? # NCR 53c8xx SCSI
173 1.44 bouyer esiop* at pci? dev ? function ? # NCR 53c82s75xx SCSI and newer
174 1.1 soren #pcscp* at pci? dev ? function ? # AMD 53c974 PCscsi-PCI SCSI
175 1.1 soren
176 1.1 soren # SCSI bus support
177 1.1 soren #scsibus* at adv?
178 1.1 soren #scsibus* at adw?
179 1.1 soren scsibus* at ahc?
180 1.1 soren #scsibus* at bha?
181 1.1 soren #scsibus* at dpt?
182 1.1 soren #scsibus* at isp?
183 1.4 soren scsibus* at siop?
184 1.44 bouyer scsibus* at esiop?
185 1.1 soren #scsibus* at pcscp?
186 1.1 soren
187 1.1 soren # SCSI devices
188 1.1 soren sd* at scsibus? target ? lun ? # SCSI disk drives
189 1.1 soren st* at scsibus? target ? lun ? # SCSI tape drives
190 1.93 tsutsui cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
191 1.7 soren #ch* at scsibus? target ? lun ? # SCSI autochangers
192 1.1 soren #ss* at scsibus? target ? lun ? # SCSI scanners
193 1.10 soren #uk* at scsibus? target ? lun ? # SCSI unknown
194 1.1 soren
195 1.1 soren # RAID controllers and devices
196 1.1 soren #cac* at pci? dev ? function ? # Compaq array controller
197 1.1 soren #ca* at cac? unit ? # Compaq array disk device
198 1.1 soren
199 1.1 soren # IDE and related devices
200 1.1 soren # PCI IDE controllers - see pciide(4) for supported hardware.
201 1.1 soren # The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
202 1.1 soren # how to set up DMA modes for this chip. This may work, or may cause
203 1.1 soren # a machine hang with some controllers.
204 1.47 bouyer pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver
205 1.47 bouyer acardide* at pci? dev ? function ? # Acard IDE controllers
206 1.114 tsutsui #aceride* at pci? dev ? function ? # Acer Lab IDE controllers
207 1.114 tsutsui #artsata* at pci? dev ? function ? # Intel i31244 SATA controller
208 1.47 bouyer cmdide* at pci? dev ? function ? # CMD tech IDE controllers
209 1.114 tsutsui #cypide* at pci? dev ? function ? # Cypress IDE controllers
210 1.47 bouyer hptide* at pci? dev ? function ? # Triones/HighPoint IDE controllers
211 1.114 tsutsui #optiide* at pci? dev ? function ? # Opti IDE controllers
212 1.47 bouyer pdcide* at pci? dev ? function ? # Promise IDE controllers
213 1.64 bouyer pdcsata* at pci? dev ? function ? # Promise SATA150 controllers
214 1.52 thorpej satalink* at pci? dev ? function ? # SiI SATALink controllers
215 1.114 tsutsui #siside* at pci? dev ? function ? # SiS IDE controllers
216 1.114 tsutsui #slide* at pci? dev ? function ? # Symphony Labs IDE controllers
217 1.47 bouyer viaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers
218 1.47 bouyer
219 1.47 bouyer # ATA bus
220 1.50 tsutsui atabus* at ata?
221 1.46 bouyer
222 1.1 soren # IDE drives
223 1.1 soren # Flags are used only with controllers that support DMA operations
224 1.1 soren # and mode settings (e.g. some pciide controllers)
225 1.1 soren # The lowest order four bits (rightmost digit) of the flags define the PIO
226 1.1 soren # mode to use, the next set of four bits the DMA mode and the third set the
227 1.1 soren # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
228 1.1 soren # to use, and the last bit must be 1 for this setting to be used.
229 1.1 soren # For DMA and UDMA, 0xf (1111) means 'disable'.
230 1.1 soren # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
231 1.1 soren # (0xc=1100, 0xa=1010, 0xf=1111)
232 1.1 soren # 0x0000 means "use whatever the drive claims to support".
233 1.46 bouyer wd* at atabus? drive ? flags 0x0000
234 1.1 soren
235 1.1 soren # PCI network interfaces
236 1.1 soren #ep* at pci? dev ? function ? # 3Com 3c59x
237 1.18 hubertf #ex* at pci? dev ? function ? # 3Com 90x[BC]
238 1.1 soren #epic* at pci? dev ? function ? # SMC EPIC/100 Ethernet
239 1.1 soren #fxp* at pci? dev ? function ? # Intel EtherExpress PRO10+/100B
240 1.166 thorpej #pcn* at pci? dev ? function ? # PCnet-PCI Ethernet
241 1.1 soren #ne* at pci? dev ? function ? # NE2000-compatible Ethernet
242 1.1 soren #ntwoc* at pci? dev ? function ? # Riscom/N2 PCI Sync Serial
243 1.97 tsutsui ral* at pci? dev ? function ? # ralink wifi
244 1.1 soren #sip* at pci? dev ? function ? # SiS 900 Ethernet
245 1.1 soren #tl* at pci? dev ? function ? # ThunderLAN-based Ethernet
246 1.30 mycroft tlp* at pci? dev ? function ? # DECchip 21x4x and clones
247 1.1 soren #vr* at pci? dev ? function ? # VIA Rhine Fast Ethernet
248 1.3 groo #rtk* at pci? dev ? function ? # Realtek 8129/8139
249 1.1 soren
250 1.1 soren # MII/PHY support
251 1.1 soren #exphy* at mii? phy ? # 3Com internal PHYs
252 1.27 wiz #icsphy* at mii? phy ? # ICS189x PHYs
253 1.1 soren #inphy* at mii? phy ? # Intel 82555 PHYs
254 1.1 soren #iophy* at mii? phy ? # Intel 82553 PHYs
255 1.1 soren lxtphy* at mii? phy ? # Level One LXT-970 PHYs
256 1.1 soren #nsphy* at mii? phy ? # NS83840 PHYs
257 1.1 soren #nsphyter* at mii? phy ? # NS83843 PHYs
258 1.1 soren #qsphy* at mii? phy ? # Quality Semiconductor QS6612
259 1.1 soren #sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs
260 1.1 soren #tlphy* at mii? phy ? # ThunderLAN PHYs
261 1.1 soren #tqphy* at mii? phy ? # TDK Semiconductor PHYs
262 1.1 soren #ukphy* at mii? phy ? # generic unknown PHYs
263 1.1 soren
264 1.76 kiyohara # PCI IEEE1394 controllers
265 1.76 kiyohara #fwohci* at pci? dev ? function ? # IEEE1394 Open Host Controller
266 1.76 kiyohara
267 1.76 kiyohara #ieee1394if* at fwohci?
268 1.76 kiyohara #fwip* at ieee1394if? # IP over IEEE1394
269 1.76 kiyohara #sbp* at ieee1394if? euihi ? euilo ?
270 1.76 kiyohara #scsibus* at sbp?
271 1.76 kiyohara
272 1.1 soren # PCI audio devices
273 1.1 soren #clcs* at pci? dev ? function ? # Cirrus Logic CS4280
274 1.1 soren #eap* at pci? dev ? function ? # Ensoniq AudioPCI
275 1.119 tsutsui #emuxki* at pci? dev ? function ? # SoundBlaster Live!
276 1.1 soren #eso* at pci? dev ? function ? # ESS Solo-1 PCI AudioDrive
277 1.1 soren #fms* at pci? dev ? function ? # Forte Media FM801
278 1.1 soren #sv* at pci? dev ? function ? # S3 SonicVibes
279 1.1 soren
280 1.119 tsutsui # Audio support
281 1.119 tsutsui #audio* at audiobus?
282 1.119 tsutsui
283 1.151 christos #spkr* at audio? # PC speaker (synthesized)
284 1.149 nat
285 1.1 soren # Pseudo-devices
286 1.1 soren
287 1.85 thorpej pseudo-device crypto # /dev/crypto device
288 1.86 thorpej pseudo-device swcrypto # software crypto implementation
289 1.54 jonathan
290 1.1 soren # Disk/mass storage pseudo-devices
291 1.138 christos #pseudo-device ccd # concatenated disk devices
292 1.138 christos #pseudo-device cgd # cryptographic disk devices
293 1.139 christos pseudo-device raid # RAIDframe disk driver
294 1.25 oster options RAID_AUTOCONFIG # auto-configuration of RAID
295 1.25 oster # Options to enable various other RAIDframe RAID types.
296 1.25 oster # options RF_INCLUDE_EVENODD=1
297 1.25 oster # options RF_INCLUDE_RAID5_RS=1
298 1.25 oster # options RF_INCLUDE_PARITYLOGGING=1
299 1.25 oster # options RF_INCLUDE_CHAINDECLUSTER=1
300 1.25 oster # options RF_INCLUDE_INTERDECLUSTER=1
301 1.25 oster # options RF_INCLUDE_PARITY_DECLUSTERING=1
302 1.25 oster # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
303 1.124 pooka pseudo-device fss # file system snapshot device
304 1.127 hannken #pseudo-device md # memory disk device (ramdisk)
305 1.93 tsutsui pseudo-device vnd # disk-like interface to files
306 1.77 hubertf #options VND_COMPRESSION # compressed vnd(4)
307 1.1 soren
308 1.1 soren # Network pseudo-devices
309 1.91 rpaulo pseudo-device bpfilter # Berkeley packet filter
310 1.162 sevan pseudo-device carp # Common Address Redundancy Protocol
311 1.159 maxv pseudo-device npf # NPF packet filter
312 1.1 soren pseudo-device loop # network loopback
313 1.92 cube #pseudo-device ppp # Point-to-Point Protocol
314 1.97 tsutsui pseudo-device pppoe # PPP over Ethernet (RFC 2516)
315 1.92 cube #pseudo-device sl # Serial Line IP
316 1.92 cube #pseudo-device tun # network tunneling over tty
317 1.65 cube #pseudo-device tap # virtual Ethernet
318 1.92 cube #pseudo-device gre # generic L3 over IP tunnel
319 1.92 cube #pseudo-device gif # RFC1933 tunnel
320 1.92 cube #pseudo-device faith # IPv[46] tcp relay translation
321 1.92 cube #pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
322 1.14 bouyer pseudo-device vlan # IEEE 802.1q encapsulation
323 1.22 atatat pseudo-device bridge # simple inter-network bridging
324 1.170 roy #pseudo-device vether # Virtual Ethernet for bridge
325 1.108 martin pseudo-device agr # IEEE 802.3ad link aggregation
326 1.1 soren
327 1.117 tls #
328 1.117 tls # accept filters
329 1.117 tls pseudo-device accf_data # "dataready" accept filter
330 1.117 tls pseudo-device accf_http # "httpready" accept filter
331 1.117 tls
332 1.1 soren # Miscellaneous pseudo-devices
333 1.13 jdolecek pseudo-device pty # pseudo-terminals
334 1.140 christos #pseudo-device sequencer # MIDI sequencer
335 1.1 soren #options RND_COM # use "com" randomness (BROKEN)
336 1.32 lukem pseudo-device clockctl # user control of clock subsystem
337 1.49 cdi pseudo-device nullcons # no-op console
338 1.172 riastrad pseudo-device swwdog # software watchdog timer -- swwdog(4)
339 1.1 soren
340 1.1 soren # A pseudo device needed for Coda # also needs CODA (above)
341 1.139 christos #pseudo-device vcoda # coda minicache <-> venus comm.
342 1.118 tsutsui
343 1.43 ragge pseudo-device ksyms # /dev/ksyms
344 1.88 elad
345 1.162 sevan include "dev/veriexec.config"
346 1.173 abs
347 1.173 abs # Pull in optional local configuration - always at end
348 1.173 abs cinclude "arch/cobalt/conf/GENERIC.local"
349