GENERIC revision 1.203 1 # $NetBSD: GENERIC,v 1.203 2023/02/12 14:50:38 abs Exp $
2 #
3 # GENERIC machine description file
4 #
5 # This machine description file is used to generate the default NetBSD
6 # kernel. The generic kernel does not include all options, subsystems
7 # and device drivers, but should be useful for most applications.
8 #
9 # The machine description file can be customised for your specific
10 # machine to reduce the kernel size and improve its performance.
11 #
12 # For further information on compiling NetBSD kernels, see the config(8)
13 # man page.
14 #
15 # For further information on hardware support for this architecture, see
16 # the intro(4) man page. For further information about kernel options
17 # for this architecture, see the options(4) man page. For an explanation
18 # of each device driver in this file see the section 4 man page for the
19 # device.
20
21 include "arch/arc/conf/std.arc"
22
23 options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24
25 #ident "GENERIC-$Revision: 1.203 $"
26
27 maxusers 32 # estimated number of users
28
29 # Platform support
30 options PLATFORM_ACER_PICA_61 # PICA, NEC ImageRISCstation
31 options PLATFORM_DESKTECH_ARCSTATION_I # DeskStation rPC44
32 options PLATFORM_DESKTECH_TYNE # DeskStation Tyne
33 options PLATFORM_MICROSOFT_JAZZ # MIPS Magnum
34 options PLATFORM_NEC_J96A # NEC Express 5800/240 EISA R4K
35 options PLATFORM_NEC_JC94 # NEC Express 5800/230 PCI R4K
36 options PLATFORM_NEC_R94 # NEC RISCstation 2200 EISA
37 options PLATFORM_NEC_R96 # NEC Express RISCserver, RISCserver 2200
38 options PLATFORM_NEC_RAX94 # NEC RISCstation 2200 PCI
39 options PLATFORM_NEC_RD94 # NEC RISCstation 2250
40 options PLATFORM_SNI_RM200PCI
41
42 # CPU related options
43 makeoptions CPUFLAGS="-march=mips3 -mabi=32"
44 makeoptions COPTS="-O2 -fno-unwind-tables"
45
46 # Standard system options
47
48 options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
49 options NTP # NTP phase/frequency locked loop
50
51 options KTRACE # system call tracing via ktrace(1)
52
53 options SYSVMSG # System V-like message queues
54 options SYSVSEM # System V-like semaphores
55 options SYSVSHM # System V-like memory sharing
56
57 options USERCONF # userconf(4) support
58 #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
59 options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
60
61 # Alternate buffer queue strategies for better responsiveness under high
62 # disk I/O load.
63 #options BUFQ_READPRIO
64 options BUFQ_PRIOCSCAN
65
66 # Diagnostic/debugging support options
67 #options DIAGNOSTIC # cheap kernel consistency checks
68 #options DEBUG # expensive debugging checks/support
69 options DDB # in-kernel debugger
70 #options DDB_HISTORY_SIZE=100 # enable history editing in DDB
71 #options KGDB # remote gdb
72 #options KGDB_DEVRATE=19200 # kernel gdb port rate (default 9600)
73 #options KGDB_DEV="17*256+0" # device for kernel gdb
74 #makeoptions DEBUG="-g" # compile full symbol table
75
76 # Compatibility options
77 include "conf/compat_netbsd10.config"
78
79 options COMPAT_386BSD_MBRPART # recognize old partition ID
80
81 # mipsel specific
82 #options COMPAT_ULTRIX # Ultrix binary compatibility
83 options EXEC_ECOFF # Ultrix RISC binaries are ECOFF format
84
85 # File systems
86 file-system FFS # fast filesystem
87 file-system EXT2FS # second extended file system (linux)
88 #file-system LFS # log-structured file system
89 file-system MFS # memory file system
90 #file-system NTFS # Windows/NT file system (experimental)
91 file-system CD9660 # ISO 9660 + Rock Ridge file system
92 file-system MSDOSFS # MS-DOS file system
93 file-system NFS # Network File System client
94 file-system FDESC # /dev/fd
95 file-system KERNFS # /kern
96 file-system NULLFS # loopback file system
97 #file-system OVERLAY # overlay file system
98 #file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
99 file-system PROCFS # /proc
100 #file-system UMAPFS # NULLFS + uid and gid remapping
101 #file-system UNION # union file system
102 #file-system CODA # Coda File System; also needs vcoda (below)
103 file-system PTYFS # /dev/pts/N support
104 file-system TMPFS # Efficient memory file-system
105 #file-system UDF # experimental - OSTA UDF CD/DVD file-system
106
107 # File system options
108 #options FFS_EI # FFS Endian Independent support
109 #options FFS_NO_SNAPSHOT # No FFS snapshot support
110 #options QUOTA # legacy UFS quotas
111 #options QUOTA2 # new, in-filesystem UFS quotas
112 options UFS_DIRHASH # UFS Large Directory Hashing
113 options UFS_EXTATTR # Extended attribute support for UFS1
114 options WAPBL # File system journaling support
115 #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
116 # immutable) behave as system flags.
117 options NFSSERVER # Network File System server
118
119 # Networking options
120 #options GATEWAY # IP packet forwarding
121 options INET # IP + ICMP + TCP + UDP
122 options INET6 # IPV6
123 #options IPSEC # IP security
124 #options IPSEC_DEBUG # debug for IP security
125 #options MROUTING # IP multicast routing
126 #options PIM # Protocol Independent Multicast
127 #options NETATALK # AppleTalk networking protocols
128 options PPP_BSDCOMP # BSD-Compress compression support for PPP
129 options PPP_DEFLATE # Deflate compression support for PPP
130 options PPP_FILTER # Active filter support for PPP (requires bpf)
131 #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
132
133 #options ALTQ # Manipulate network interfaces' output queues
134 #options ALTQ_BLUE # Stochastic Fair Blue
135 #options ALTQ_CBQ # Class-Based Queueing
136 #options ALTQ_CDNR # Diffserv Traffic Conditioner
137 #options ALTQ_FIFOQ # First-In First-Out Queue
138 #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
139 #options ALTQ_HFSC # Hierarchical Fair Service Curve
140 #options ALTQ_LOCALQ # Local queueing discipline
141 #options ALTQ_PRIQ # Priority Queueing
142 #options ALTQ_RED # Random Early Detection
143 #options ALTQ_RIO # RED with IN/OUT
144 #options ALTQ_WFQ # Weighted Fair Queueing
145
146 # JIT compiler for bpfilter
147 #options SLJIT
148 #options BPFJIT
149
150 # These options enable verbose messages for several subsystems.
151 # Warning, these may compile large string tables into the kernel!
152 #options EISAVERBOSE # verbose EISA device autoconfig messages
153 options MIIVERBOSE # verbose PHY autoconfig messages
154 options PCIVERBOSE # verbose PCI device autoconfig messages
155 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
156 options SCSIVERBOSE # human readable SCSI error messages
157
158 # wscons terminal emulation
159 options WSEMUL_VT100 # VT100 emulation
160 options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
161
162 # Kernel root file system and dump configuration.
163 options NFS_BOOT_DHCP
164 config netbsd root on ? type ?
165 #config netbsd root on sd0a type ffs
166 #config netbsd root on ? type nfs
167
168 #
169 # Device configuration
170 #
171
172 mainbus0 at root
173 cpu* at mainbus0
174
175 #### Jazz-Internal bus devices
176
177 # PLATFORM_ACER_PICA_61
178 # PLATFORM_MICROSOFT_JAZZ
179 # PLATFORM_NEC_J96A
180 # PLATFORM_NEC_JC94
181 # PLATFORM_NEC_R94
182 # PLATFORM_NEC_R96
183 # PLATFORM_NEC_RAX94
184 # PLATFORM_NEC_RD94
185 jazzio* at mainbus0 # Jazz-Internal bus host bridge.
186
187 timer0 at jazzio?
188 mcclock0 at jazzio?
189 #pc0 at jazzio?
190 #opms0 at jazzio?
191 vga0 at jazzio? # Jazz localbus VGA
192 pckbc0 at jazzio? # PC keyboard controller
193 com0 at jazzio?
194 com1 at jazzio?
195 lpt0 at jazzio?
196 sn0 at jazzio?
197
198 fdc0 at jazzio?
199 fd* at fdc? drive ?
200
201 asc0 at jazzio? flags 0x000000 # NCR53C9x SCSI
202 osiop* at jazzio? flags 0x00000 # NCR53C710 SCSI
203 oosiop* at jazzio? # NCR53C700 SCSI
204
205 #### ISA bus devices
206
207 # PLATFORM_ACER_PICA_61
208 # PLATFORM_MICROSOFT_JAZZ
209 # PLATFORM_NEC_J96A
210 # PLATFORM_NEC_R94
211 # PLATFORM_NEC_R96
212 jazzisabr* at mainbus0 # Jazz-(E)ISA bus bridge.
213 isa* at jazzisabr?
214
215 # PLATFORM_DESKTECH_ARCSTATION_I
216 arcsisabr* at mainbus0 # DeskStation rPC44 ISA host bridge.
217 isa* at arcsisabr?
218
219 # PLATFORM_DESKTECH_TYNE
220 tyneisabr* at mainbus0 # DeskStation Tyne ISA host bridge.
221 isa* at tyneisabr?
222
223 #isadma0 at isa?
224
225 isapnp0 at isa?
226
227 timer0 at isa? port 0x40 irq 0
228 mcclock0 at isa? port 0x70
229
230 #pc0 at isa? irq 1 # generic PC console device
231 #opms0 at isa? irq 12 # PS/2 auxiliary port mouse
232 vga0 at isa?
233 #options VGA_RASTERCONSOLE
234 options VGA_RESET
235 pckbc0 at isa? # PC keyboard controller
236 com0 at isa? port 0x3f8 irq 4
237 com1 at isa? port 0x2f8 irq 3
238 com2 at isa? port 0x3e8 irq 4
239 com3 at isa? port 0x2e8 irq 3
240 #ast0 at isa? port 0x1a0 irq 3 # AST 4-port serial cards
241 #com* at ast? slave ?
242
243 # Joystick driver. Probe is a little strange; add only if you have one.
244 #joy0 at isa? port 0x201
245
246 # ISA ST506, ESDI, and IDE controllers
247 # Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
248 # fall back to 16bits I/O if 32bits I/O are not functional).
249 # Some controllers pass the initial 32bit test, but will fail later.
250 wdc0 at isa? port 0x1f0 irq 14 flags 0x00
251 #wdc1 at isa? port 0x170 irq 15 flags 0x00
252 wdc* at isapnp?
253
254 # ISA parallel printer interfaces
255 lpt0 at isa? port 0x378 irq 7
256
257 # ISA network interfaces
258 #ec0 at isa? port 0x250 iomem 0xd8000 irq 9 # 3Com 3c503 Ethernet
259 ep* at isa? port ? irq ? # 3C509 ethernet cards
260 ep* at isapnp? # 3C509B ethernet card
261 ne0 at isa? port 0x280 irq 9 # NE[12]000 ethernet cards
262 ne1 at isa? port 0x300 irq 10
263 ne* at isapnp? # NE[12]000 PnP ethernet
264 we0 at isa? port 0x280 iomem 0xd0000 irq 9 # WD/SMC Ethernet
265 we1 at isa? port 0x300 iomem 0xcc000 irq 10
266
267 # XXX - should be configured
268 #btl0 at isa? port 0x330 irq ? drq ?
269
270 #### PCI bus devices
271
272 # PLATFORM_NEC_JC94
273 # PLATFORM_NEC_RAX94
274 # PLATFORM_NEC_RD94
275 necpb* at mainbus0 # NEC RISCstation PCI host bridge.
276 pci* at necpb?
277 pci* at ppb? bus ?
278 options PCI_NETBSD_CONFIGURE
279
280 ppb* at pci? dev ? function ? # PCI-PCI bridges
281
282 # PCI cryptographic devices
283 #hifn* at pci? dev ? function ? # Hifn 7755/7811/795x
284 #ubsec* at pci? dev ? function ? # Broadcom 5501/5601/580x/582x
285
286 #vga* at pci? dev ? function ?
287 tga* at pci? dev ? function ? # DEC ZLXp-E[123] Graphics
288
289 # PCI SCSI controllers
290 adv* at pci? dev ? function ? # AdvanSys 1200[A,B], 9xx[U,UA]
291 ahc* at pci? dev ? function ? # Adaptec [23]94x, aic78x0 SCSI
292 iha* at pci? dev ? function ? # Initio INIC-940/950 SCSI
293 njs* at pci? dev ? function ? # Workbit NinjaSCSI-32
294 pcscp* at pci? dev ? function ? # AMD Am53c974 PCscsi-PCI SCSI
295 siop* at pci? dev ? function ? # NCR/Symbios 53c8xx SCSI
296 esiop* at pci? dev ? function ? # NCR/Symbios 53c875/95/1010
297 trm* at pci? dev ? function ? # Tekram DC-395/315 SCSI
298
299 # PCI IDE controllers - see pciide(4) for supported hardware.
300 # The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
301 # how to set up DMA modes for this chip. This may work, or may cause
302 # a machine hang with some controllers.
303 pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver
304 acardide* at pci? dev ? function ? # Acard IDE controllers
305 #aceride* at pci? dev ? function ? # Acer Lab IDE controllers
306 #artsata* at pci? dev ? function ? # Intel i31244 SATA controller
307 cmdide* at pci? dev ? function ? # CMD tech IDE controllers
308 #cypide* at pci? dev ? function ? # Cypress IDE controllers
309 hptide* at pci? dev ? function ? # Triones/HighPoint IDE controllers
310 optiide* at pci? dev ? function ? # Opti IDE controllers
311 pdcide* at pci? dev ? function ? # Promise IDE controllers
312 pdcsata* at pci? dev ? function ? # Promise SATA150 controllers
313 satalink* at pci? dev ? function ? # SiI SATALink controllers
314 #siside* at pci? dev ? function ? # SiS IDE controllers
315 #slide* at pci? dev ? function ? # Symphony Labs IDE controllers
316 viaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers
317
318 # PCI network devices
319 #an* at pci? dev ? function ? # Aironet PC4500/PC4800 (802.11)
320 bge* at pci? dev ? function ? # Broadcom 570x gigabit Ethernet
321 ep* at pci? dev ? function ? # 3Com 3c59x
322 epic* at pci? dev ? function ? # SMC EPIC/100 Ethernet
323 ex* at pci? dev ? function ? # 3Com 90x[BC]
324 fxp* at pci? dev ? function ? # Intel EtherExpress PRO
325 gsip* at pci? dev ? function ? # NS83820 Gigabit Ethernet
326 #hme* at pci? dev ? function ? # Sun STP2002-STQ
327 #mtd* at pci? dev ? function ? # Myson MTD803 3-in-1 Ethernet
328 ne* at pci? dev ? function ? # NE2000-compatible
329 #ntwoc* at pci? dev ? function ? # Riscom/N2 PCI Sync Serial
330 pcn* at pci? dev ? function ? # AMD PCnet-PCI Ethernet
331 re* at pci? dev ? function ? # Realtek 8139C+/8169/8110S
332 rtk* at pci? dev ? function ? # Realtek 8129/8139
333 sf* at pci? dev ? function ? # Adaptec AIC-6915 Ethernet
334 sip* at pci? dev ? function ? # SiS 900/DP83815 Ethernet
335 #skc* at pci? dev ? function ? # SysKonnect SK9821
336 #sk* at skc? # SysKonnect SK9821
337 ste* at pci? dev ? function ? # Sundance ST-201 Ethernet
338 #stge* at pci? dev ? function ? # Sundance/Tamarack TC9021
339 #ti* at pci? dev ? function ? # Alteon ACEnic gigabit Ethernet
340 tl* at pci? dev ? function ? # ThunderLAN-based Ethernet
341 tlp* at pci? dev ? function ? # DECchip 21x4x and clones
342 vge* at pci? dev ? function ? # VIA VT612X Gigabit Ethernet
343 vr* at pci? dev ? function ? # VIA Rhine Fast Ethernet
344 #wi* at pci? dev ? function ? # Intersil Prism Mini-PCI
345 wm* at pci? dev ? function ? # Intel 82543/82544 gigabit
346
347 #### MII/PHY support
348 acphy* at mii? phy ? # Altima AC101 and AMD Am79c874 PHYs
349 amhphy* at mii? phy ? # AMD 79c901 Ethernet PHYs
350 bmtphy* at mii? phy ? # Broadcom BCM5201 and BCM5202 PHYs
351 brgphy* at mii? phy ? # Broadcom BCM5400-family PHYs
352 ciphy* at mii? phy ? # Cicada CS8201 Gig-E PHYs
353 dmphy* at mii? phy ? # Davicom DM9101 PHYs
354 exphy* at mii? phy ? # 3Com internal PHYs
355 #gentbi* at mii? phy ? # Generic Ten-Bit 1000BASE-[CLS]X PHYs
356 glxtphy* at mii? phy ? # Level One LXT-1000 PHYs
357 gphyter* at mii? phy ? # NS83861 Gig-E PHY
358 icsphy* at mii? phy ? # Integrated Circuit Systems ICS189x
359 ikphy* at mii? phy ? # Intel 82563 PHYs
360 inphy* at mii? phy ? # Intel 82555 PHYs
361 iophy* at mii? phy ? # Intel 82553 PHYs
362 lxtphy* at mii? phy ? # Level One LXT-970 PHYs
363 makphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs
364 nsphy* at mii? phy ? # NS83840 PHYs
365 nsphyter* at mii? phy ? # NS83843 PHYs
366 qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs
367 sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs
368 tlphy* at mii? phy ? # ThunderLAN PHYs
369 tqphy* at mii? phy ? # TDK Semiconductor PHYs
370 ukphy* at mii? phy ? # generic unknown PHYs
371 #urlphy* at mii? phy ? # Realtek RTL8150L internal PHYs
372
373 # SCSI bus support
374 scsibus* at scsi?
375
376 #### SCSI bus devices
377
378 sd* at scsibus? target ? lun ?
379 st* at scsibus? target ? lun ?
380 cd* at scsibus? target ? lun ?
381 ch* at scsibus? target ? lun ?
382 ss* at scsibus? target ? lun ?
383 uk* at scsibus? target ? lun ?
384
385 # ATA (IDE) bus support
386 atabus* at ata?
387
388 # IDE drives
389 # Flags are used only with controllers that support DMA operations
390 # and mode settings (e.g. some pciide controllers)
391 # The lowest order four bits (rightmost digit) of the flags define the PIO
392 # mode to use, the next set of four bits the DMA mode and the third set the
393 # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
394 # to use, and the last bit must be 1 for this setting to be used.
395 # For DMA and UDMA, 0xf (1111) means 'disable'.
396 # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
397 # (0xc=1100, 0xa=1010, 0xf=1111)
398 # 0x0000 means "use whatever the drive claims to support".
399 wd* at atabus? drive ? flags 0x0000
400
401 # ATAPI bus support
402 atapibus* at atapi?
403
404 #### ATAPI bus devices
405
406 # flags have the same meaning as for IDE drives.
407 cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
408 sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
409 uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
410
411 #### Workstation Console attachments
412
413 wsdisplay* at vga?
414 wsdisplay* at tga?
415 pckbd* at pckbc? # PC keyboard (kbd port)
416 wskbd* at pckbd?
417 pms* at pckbc? # PS/2-style mouse (aux port)
418 wsmouse* at pms?
419
420 #### Pseudo devices
421
422 pseudo-device crypto # /dev/crypto device
423 pseudo-device swcrypto # software crypto implementation
424
425 # disk/mass storage pseudo-devices
426 pseudo-device ccd # concatenated/striped disk devices
427 #pseudo-device cgd # cryptographic disk devices
428 #pseudo-device raid # RAIDframe disk driver
429 #options RAID_AUTOCONFIG
430 # Options to enable various other RAIDframe RAID types.
431 #options RF_INCLUDE_EVENODD=1
432 #options RF_INCLUDE_RAID5_RS=1
433 #options RF_INCLUDE_PARITYLOGGING=1
434 #options RF_INCLUDE_CHAINDECLUSTER=1
435 #options RF_INCLUDE_INTERDECLUSTER=1
436 #options RF_INCLUDE_PARITY_DECLUSTERING=1
437 #options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
438 pseudo-device fss # file system snapshot device
439 pseudo-device md # memory disk device (ramdisk)
440 pseudo-device vnd # disk-like interface to files
441 #options VND_COMPRESSION # compressed vnd(4)
442 #pseudo-device putter # for puffs and pud
443
444 # network pseudo-devices
445 pseudo-device bpfilter # Berkeley packet filter
446 #pseudo-device carp # Common Address Redundancy Protocol
447 pseudo-device npf # NPF packet filter
448 pseudo-device loop # network loopback
449 pseudo-device ppp # Point-to-Point Protocol
450 pseudo-device pppoe # PPP over Ethernet (RFC 2516)
451 pseudo-device sl # Serial Line IP
452 pseudo-device tun # network tunneling over tty
453 pseudo-device tap # virtual Ethernet
454 #pseudo-device gre # generic L3 over IP tunnel
455 #pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
456 #pseudo-device faith # IPv[46] tcp relay translation i/f
457 #pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
458 pseudo-device vlan # IEEE 802.1q encapsulation
459 pseudo-device bridge # simple inter-network bridging
460 pseudo-device vether # Virtual Ethernet for bridge
461 #pseudo-device agr # IEEE 802.3ad link aggregation
462
463 #
464 # accept filters
465 #pseudo-device accf_data # "dataready" accept filter
466 #pseudo-device accf_http # "httpready" accept filter
467
468 # miscellaneous pseudo-devices
469 pseudo-device pty # pseudo-terminals
470 #pseudo-device sequencer # MIDI sequencer
471 # rnd works; RND_COM does not on port arc yet.
472 #options RND_COM # use "com" randomness as well (BROKEN)
473 pseudo-device clockctl # user control of clock subsystem
474 pseudo-device swwdog # software watchdog timer -- swwdog(4)
475
476 # a pseudo device needed for Coda # also needs CODA (above)
477 #pseudo-device vcoda # coda minicache <-> venus comm.
478
479 # mouse & keyboard multiplexor pseudo-devices
480 #pseudo-device wsmux
481 pseudo-device ksyms # /dev/ksyms
482
483 #include "dev/veriexec.config"
484
485 # Pull in optional local configuration - always at end
486 cinclude "arch/arc/conf/GENERIC.local"
487