GENERIC revision 1.204 1 # $NetBSD: GENERIC,v 1.204 2024/01/29 18:27:10 christos 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.204 $"
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 NFSSERVER # Network File System server
116
117 # Networking options
118 #options GATEWAY # IP packet forwarding
119 options INET # IP + ICMP + TCP + UDP
120 options INET6 # IPV6
121 #options IPSEC # IP security
122 #options IPSEC_DEBUG # debug for IP security
123 #options MROUTING # IP multicast routing
124 #options PIM # Protocol Independent Multicast
125 #options NETATALK # AppleTalk networking protocols
126 options PPP_BSDCOMP # BSD-Compress compression support for PPP
127 options PPP_DEFLATE # Deflate compression support for PPP
128 options PPP_FILTER # Active filter support for PPP (requires bpf)
129 #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
130
131 #options ALTQ # Manipulate network interfaces' output queues
132 #options ALTQ_BLUE # Stochastic Fair Blue
133 #options ALTQ_CBQ # Class-Based Queueing
134 #options ALTQ_CDNR # Diffserv Traffic Conditioner
135 #options ALTQ_FIFOQ # First-In First-Out Queue
136 #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
137 #options ALTQ_HFSC # Hierarchical Fair Service Curve
138 #options ALTQ_LOCALQ # Local queueing discipline
139 #options ALTQ_PRIQ # Priority Queueing
140 #options ALTQ_RED # Random Early Detection
141 #options ALTQ_RIO # RED with IN/OUT
142 #options ALTQ_WFQ # Weighted Fair Queueing
143
144 # JIT compiler for bpfilter
145 #options SLJIT
146 #options BPFJIT
147
148 # These options enable verbose messages for several subsystems.
149 # Warning, these may compile large string tables into the kernel!
150 #options EISAVERBOSE # verbose EISA device autoconfig messages
151 options MIIVERBOSE # verbose PHY autoconfig messages
152 options PCIVERBOSE # verbose PCI device autoconfig messages
153 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
154 options SCSIVERBOSE # human readable SCSI error messages
155
156 # wscons terminal emulation
157 options WSEMUL_VT100 # VT100 emulation
158 options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
159
160 # Kernel root file system and dump configuration.
161 options NFS_BOOT_DHCP
162 config netbsd root on ? type ?
163 #config netbsd root on sd0a type ffs
164 #config netbsd root on ? type nfs
165
166 #
167 # Device configuration
168 #
169
170 mainbus0 at root
171 cpu* at mainbus0
172
173 #### Jazz-Internal bus devices
174
175 # PLATFORM_ACER_PICA_61
176 # PLATFORM_MICROSOFT_JAZZ
177 # PLATFORM_NEC_J96A
178 # PLATFORM_NEC_JC94
179 # PLATFORM_NEC_R94
180 # PLATFORM_NEC_R96
181 # PLATFORM_NEC_RAX94
182 # PLATFORM_NEC_RD94
183 jazzio* at mainbus0 # Jazz-Internal bus host bridge.
184
185 timer0 at jazzio?
186 mcclock0 at jazzio?
187 #pc0 at jazzio?
188 #opms0 at jazzio?
189 vga0 at jazzio? # Jazz localbus VGA
190 pckbc0 at jazzio? # PC keyboard controller
191 com0 at jazzio?
192 com1 at jazzio?
193 lpt0 at jazzio?
194 sn0 at jazzio?
195
196 fdc0 at jazzio?
197 fd* at fdc? drive ?
198
199 asc0 at jazzio? flags 0x000000 # NCR53C9x SCSI
200 osiop* at jazzio? flags 0x00000 # NCR53C710 SCSI
201 oosiop* at jazzio? # NCR53C700 SCSI
202
203 #### ISA bus devices
204
205 # PLATFORM_ACER_PICA_61
206 # PLATFORM_MICROSOFT_JAZZ
207 # PLATFORM_NEC_J96A
208 # PLATFORM_NEC_R94
209 # PLATFORM_NEC_R96
210 jazzisabr* at mainbus0 # Jazz-(E)ISA bus bridge.
211 isa* at jazzisabr?
212
213 # PLATFORM_DESKTECH_ARCSTATION_I
214 arcsisabr* at mainbus0 # DeskStation rPC44 ISA host bridge.
215 isa* at arcsisabr?
216
217 # PLATFORM_DESKTECH_TYNE
218 tyneisabr* at mainbus0 # DeskStation Tyne ISA host bridge.
219 isa* at tyneisabr?
220
221 #isadma0 at isa?
222
223 isapnp0 at isa?
224
225 timer0 at isa? port 0x40 irq 0
226 mcclock0 at isa? port 0x70
227
228 #pc0 at isa? irq 1 # generic PC console device
229 #opms0 at isa? irq 12 # PS/2 auxiliary port mouse
230 vga0 at isa?
231 #options VGA_RASTERCONSOLE
232 options VGA_RESET
233 pckbc0 at isa? # PC keyboard controller
234 com0 at isa? port 0x3f8 irq 4
235 com1 at isa? port 0x2f8 irq 3
236 com2 at isa? port 0x3e8 irq 4
237 com3 at isa? port 0x2e8 irq 3
238 #ast0 at isa? port 0x1a0 irq 3 # AST 4-port serial cards
239 #com* at ast? slave ?
240
241 # Joystick driver. Probe is a little strange; add only if you have one.
242 #joy0 at isa? port 0x201
243
244 # ISA ST506, ESDI, and IDE controllers
245 # Use flags 0x01 if you want to try to use 32bits data I/O (the driver will
246 # fall back to 16bits I/O if 32bits I/O are not functional).
247 # Some controllers pass the initial 32bit test, but will fail later.
248 wdc0 at isa? port 0x1f0 irq 14 flags 0x00
249 #wdc1 at isa? port 0x170 irq 15 flags 0x00
250 wdc* at isapnp?
251
252 # ISA parallel printer interfaces
253 lpt0 at isa? port 0x378 irq 7
254
255 # ISA network interfaces
256 #ec0 at isa? port 0x250 iomem 0xd8000 irq 9 # 3Com 3c503 Ethernet
257 ep* at isa? port ? irq ? # 3C509 ethernet cards
258 ep* at isapnp? # 3C509B ethernet card
259 ne0 at isa? port 0x280 irq 9 # NE[12]000 ethernet cards
260 ne1 at isa? port 0x300 irq 10
261 ne* at isapnp? # NE[12]000 PnP ethernet
262 we0 at isa? port 0x280 iomem 0xd0000 irq 9 # WD/SMC Ethernet
263 we1 at isa? port 0x300 iomem 0xcc000 irq 10
264
265 # XXX - should be configured
266 #btl0 at isa? port 0x330 irq ? drq ?
267
268 #### PCI bus devices
269
270 # PLATFORM_NEC_JC94
271 # PLATFORM_NEC_RAX94
272 # PLATFORM_NEC_RD94
273 necpb* at mainbus0 # NEC RISCstation PCI host bridge.
274 pci* at necpb?
275 pci* at ppb? bus ?
276 options PCI_NETBSD_CONFIGURE
277
278 ppb* at pci? dev ? function ? # PCI-PCI bridges
279
280 # PCI cryptographic devices
281 #hifn* at pci? dev ? function ? # Hifn 7755/7811/795x
282 #ubsec* at pci? dev ? function ? # Broadcom 5501/5601/580x/582x
283
284 #vga* at pci? dev ? function ?
285 tga* at pci? dev ? function ? # DEC ZLXp-E[123] Graphics
286
287 # PCI SCSI controllers
288 adv* at pci? dev ? function ? # AdvanSys 1200[A,B], 9xx[U,UA]
289 ahc* at pci? dev ? function ? # Adaptec [23]94x, aic78x0 SCSI
290 iha* at pci? dev ? function ? # Initio INIC-940/950 SCSI
291 njs* at pci? dev ? function ? # Workbit NinjaSCSI-32
292 pcscp* at pci? dev ? function ? # AMD Am53c974 PCscsi-PCI SCSI
293 siop* at pci? dev ? function ? # NCR/Symbios 53c8xx SCSI
294 esiop* at pci? dev ? function ? # NCR/Symbios 53c875/95/1010
295 trm* at pci? dev ? function ? # Tekram DC-395/315 SCSI
296
297 # PCI IDE controllers - see pciide(4) for supported hardware.
298 # The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
299 # how to set up DMA modes for this chip. This may work, or may cause
300 # a machine hang with some controllers.
301 pciide* at pci? dev ? function ? flags 0x0000 # GENERIC pciide driver
302 acardide* at pci? dev ? function ? # Acard IDE controllers
303 #aceride* at pci? dev ? function ? # Acer Lab IDE controllers
304 #artsata* at pci? dev ? function ? # Intel i31244 SATA controller
305 cmdide* at pci? dev ? function ? # CMD tech IDE controllers
306 #cypide* at pci? dev ? function ? # Cypress IDE controllers
307 hptide* at pci? dev ? function ? # Triones/HighPoint IDE controllers
308 optiide* at pci? dev ? function ? # Opti IDE controllers
309 pdcide* at pci? dev ? function ? # Promise IDE controllers
310 pdcsata* at pci? dev ? function ? # Promise SATA150 controllers
311 satalink* at pci? dev ? function ? # SiI SATALink controllers
312 #siside* at pci? dev ? function ? # SiS IDE controllers
313 #slide* at pci? dev ? function ? # Symphony Labs IDE controllers
314 viaide* at pci? dev ? function ? # VIA/AMD/Nvidia IDE controllers
315
316 # PCI network devices
317 #an* at pci? dev ? function ? # Aironet PC4500/PC4800 (802.11)
318 bge* at pci? dev ? function ? # Broadcom 570x gigabit Ethernet
319 ep* at pci? dev ? function ? # 3Com 3c59x
320 epic* at pci? dev ? function ? # SMC EPIC/100 Ethernet
321 ex* at pci? dev ? function ? # 3Com 90x[BC]
322 fxp* at pci? dev ? function ? # Intel EtherExpress PRO
323 gsip* at pci? dev ? function ? # NS83820 Gigabit Ethernet
324 #hme* at pci? dev ? function ? # Sun STP2002-STQ
325 #mtd* at pci? dev ? function ? # Myson MTD803 3-in-1 Ethernet
326 ne* at pci? dev ? function ? # NE2000-compatible
327 #ntwoc* at pci? dev ? function ? # Riscom/N2 PCI Sync Serial
328 pcn* at pci? dev ? function ? # AMD PCnet-PCI Ethernet
329 re* at pci? dev ? function ? # Realtek 8139C+/8169/8110S
330 rtk* at pci? dev ? function ? # Realtek 8129/8139
331 sf* at pci? dev ? function ? # Adaptec AIC-6915 Ethernet
332 sip* at pci? dev ? function ? # SiS 900/DP83815 Ethernet
333 #skc* at pci? dev ? function ? # SysKonnect SK9821
334 #sk* at skc? # SysKonnect SK9821
335 ste* at pci? dev ? function ? # Sundance ST-201 Ethernet
336 #stge* at pci? dev ? function ? # Sundance/Tamarack TC9021
337 #ti* at pci? dev ? function ? # Alteon ACEnic gigabit Ethernet
338 tl* at pci? dev ? function ? # ThunderLAN-based Ethernet
339 tlp* at pci? dev ? function ? # DECchip 21x4x and clones
340 vge* at pci? dev ? function ? # VIA VT612X Gigabit Ethernet
341 vr* at pci? dev ? function ? # VIA Rhine Fast Ethernet
342 #wi* at pci? dev ? function ? # Intersil Prism Mini-PCI
343 wm* at pci? dev ? function ? # Intel 82543/82544 gigabit
344
345 #### MII/PHY support
346 acphy* at mii? phy ? # Altima AC101 and AMD Am79c874 PHYs
347 amhphy* at mii? phy ? # AMD 79c901 Ethernet PHYs
348 bmtphy* at mii? phy ? # Broadcom BCM5201 and BCM5202 PHYs
349 brgphy* at mii? phy ? # Broadcom BCM5400-family PHYs
350 ciphy* at mii? phy ? # Cicada CS8201 Gig-E PHYs
351 dmphy* at mii? phy ? # Davicom DM9101 PHYs
352 exphy* at mii? phy ? # 3Com internal PHYs
353 #gentbi* at mii? phy ? # Generic Ten-Bit 1000BASE-[CLS]X PHYs
354 glxtphy* at mii? phy ? # Level One LXT-1000 PHYs
355 gphyter* at mii? phy ? # NS83861 Gig-E PHY
356 icsphy* at mii? phy ? # Integrated Circuit Systems ICS189x
357 ikphy* at mii? phy ? # Intel 82563 PHYs
358 inphy* at mii? phy ? # Intel 82555 PHYs
359 iophy* at mii? phy ? # Intel 82553 PHYs
360 lxtphy* at mii? phy ? # Level One LXT-970 PHYs
361 makphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs
362 nsphy* at mii? phy ? # NS83840 PHYs
363 nsphyter* at mii? phy ? # NS83843 PHYs
364 qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs
365 sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs
366 tlphy* at mii? phy ? # ThunderLAN PHYs
367 tqphy* at mii? phy ? # TDK Semiconductor PHYs
368 ukphy* at mii? phy ? # generic unknown PHYs
369 #urlphy* at mii? phy ? # Realtek RTL8150L internal PHYs
370
371 # SCSI bus support
372 scsibus* at scsi?
373
374 #### SCSI bus devices
375
376 sd* at scsibus? target ? lun ?
377 st* at scsibus? target ? lun ?
378 cd* at scsibus? target ? lun ?
379 ch* at scsibus? target ? lun ?
380 ss* at scsibus? target ? lun ?
381 uk* at scsibus? target ? lun ?
382
383 # ATA (IDE) bus support
384 atabus* at ata?
385
386 # IDE drives
387 # Flags are used only with controllers that support DMA operations
388 # and mode settings (e.g. some pciide controllers)
389 # The lowest order four bits (rightmost digit) of the flags define the PIO
390 # mode to use, the next set of four bits the DMA mode and the third set the
391 # UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
392 # to use, and the last bit must be 1 for this setting to be used.
393 # For DMA and UDMA, 0xf (1111) means 'disable'.
394 # 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
395 # (0xc=1100, 0xa=1010, 0xf=1111)
396 # 0x0000 means "use whatever the drive claims to support".
397 wd* at atabus? drive ? flags 0x0000
398
399 # ATAPI bus support
400 atapibus* at atapi?
401
402 #### ATAPI bus devices
403
404 # flags have the same meaning as for IDE drives.
405 cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
406 sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
407 uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
408
409 #### Workstation Console attachments
410
411 wsdisplay* at vga?
412 wsdisplay* at tga?
413 pckbd* at pckbc? # PC keyboard (kbd port)
414 wskbd* at pckbd?
415 pms* at pckbc? # PS/2-style mouse (aux port)
416 wsmouse* at pms?
417
418 #### Pseudo devices
419
420 pseudo-device crypto # /dev/crypto device
421 pseudo-device swcrypto # software crypto implementation
422
423 # disk/mass storage pseudo-devices
424 pseudo-device ccd # concatenated/striped disk devices
425 #pseudo-device cgd # cryptographic disk devices
426 #pseudo-device raid # RAIDframe disk driver
427 #options RAID_AUTOCONFIG
428 # Options to enable various other RAIDframe RAID types.
429 #options RF_INCLUDE_EVENODD=1
430 #options RF_INCLUDE_RAID5_RS=1
431 #options RF_INCLUDE_PARITYLOGGING=1
432 #options RF_INCLUDE_CHAINDECLUSTER=1
433 #options RF_INCLUDE_INTERDECLUSTER=1
434 #options RF_INCLUDE_PARITY_DECLUSTERING=1
435 #options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
436 pseudo-device fss # file system snapshot device
437 pseudo-device md # memory disk device (ramdisk)
438 pseudo-device vnd # disk-like interface to files
439 #options VND_COMPRESSION # compressed vnd(4)
440 #pseudo-device putter # for puffs and pud
441
442 # network pseudo-devices
443 pseudo-device bpfilter # Berkeley packet filter
444 #pseudo-device carp # Common Address Redundancy Protocol
445 pseudo-device npf # NPF packet filter
446 pseudo-device loop # network loopback
447 pseudo-device ppp # Point-to-Point Protocol
448 pseudo-device pppoe # PPP over Ethernet (RFC 2516)
449 pseudo-device sl # Serial Line IP
450 pseudo-device tun # network tunneling over tty
451 pseudo-device tap # virtual Ethernet
452 #pseudo-device gre # generic L3 over IP tunnel
453 #pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
454 #pseudo-device faith # IPv[46] tcp relay translation i/f
455 #pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
456 pseudo-device vlan # IEEE 802.1q encapsulation
457 pseudo-device bridge # simple inter-network bridging
458 pseudo-device vether # Virtual Ethernet for bridge
459 #pseudo-device agr # IEEE 802.3ad link aggregation
460
461 #
462 # accept filters
463 #pseudo-device accf_data # "dataready" accept filter
464 #pseudo-device accf_http # "httpready" accept filter
465
466 # miscellaneous pseudo-devices
467 pseudo-device pty # pseudo-terminals
468 #pseudo-device sequencer # MIDI sequencer
469 # rnd works; RND_COM does not on port arc yet.
470 #options RND_COM # use "com" randomness as well (BROKEN)
471 pseudo-device clockctl # user control of clock subsystem
472 pseudo-device swwdog # software watchdog timer -- swwdog(4)
473
474 # a pseudo device needed for Coda # also needs CODA (above)
475 #pseudo-device vcoda # coda minicache <-> venus comm.
476
477 # mouse & keyboard multiplexor pseudo-devices
478 #pseudo-device wsmux
479 pseudo-device ksyms # /dev/ksyms
480
481 #include "dev/veriexec.config"
482
483 # Pull in optional local configuration - always at end
484 cinclude "arch/arc/conf/GENERIC.local"
485