xref: /netbsd-src/sys/arch/ofppc/conf/GENERIC (revision 2dd295436a0082eb4f8d294f4aa73c223413d0f2)
1# $NetBSD: GENERIC,v 1.179 2023/02/12 14:50:41 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
21include 	"arch/ofppc/conf/std.ofppc"
22
23options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
24
25#ident 		"GENERIC-$Revision: 1.179 $"
26
27maxusers	32
28
29options 	PIC_OPENPIC
30options 	PIC_DISTOPENPIC
31options 	PIC_I8259
32#options 	PIC_PREPIVR
33
34# various hacks due to bugs in Openfirmware implementation
35options 	FIRMWORKSBUGS
36
37# Standard system options
38options 	INSECURE	# disable kernel security checks
39#options 	NTP		# NTP phase/frequency locked loop
40options 	KTRACE		# system call tracing via ktrace(1)
41
42options 	SYSVMSG		# System V message queues
43options 	SYSVSEM		# System V semaphores
44options 	SYSVSHM		# System V shared memory
45
46options 	USERCONF	# userconf(4) support
47#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
48options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
49options 	RDB_PART	# Rigid Disk Block partition support
50
51# Alternate buffer queue strategies for better responsiveness under high
52# disk I/O load.
53#options 	BUFQ_READPRIO
54options 	BUFQ_PRIOCSCAN
55
56# Diagnostic/debugging support options
57#options 	DIAGNOSTIC	# cheap kernel consistency checks
58#options 	DEBUG		# expensive debugging checks/support
59options 	DDB		# in-kernel debugger
60options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
61options 	DDB_VERBOSE_HELP
62options 	TRAP_PANICWAIT
63options 	MSGBUFSIZE=32768
64
65makeoptions	DEBUG="-g"	# compile full symbol table
66
67# Compatibility option
68include 	"conf/compat_netbsd09.config"
69options 	COMPAT_386BSD_MBRPART # recognize old partition ID
70#options 	COMPAT_LINUX	# Linux binary compatibility
71#options 	COMPAT_OSSAUDIO	# Linux binary compatibility
72
73# Wedge support
74options 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
75options 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges
76#options 	DKWEDGE_METHOD_BSDLABEL	# Support disklabel entries as wedges
77#options 	DKWEDGE_METHOD_MBR	# Support MBR partitions as wedges
78options		DKWEDGE_METHOD_APPLE    # Support Apple partitions as wedges
79#options	DKWEDGE_METHOD_RDB	# Support RDB partitions as wedges
80
81# File systems
82file-system 	FFS		# UFS
83file-system 	EXT2FS		# second extended file system (linux)
84file-system 	LFS		# log-structured file system
85file-system 	MFS		# memory file system
86file-system 	NFS		# Network file System client
87file-system 	CD9660		# ISO 9660 + Rock Ridge file system
88file-system 	MSDOSFS		# MS-DOS file system
89file-system 	ADOSFS		# AmigaDOS file system
90file-system 	FDESC		# /dev/fd
91file-system 	KERNFS		# /kern
92file-system 	NULLFS		# loopback file system
93file-system 	OVERLAY		# overlay file system
94file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
95file-system 	PROCFS		# /proc
96file-system 	UMAPFS		# NULLFS + uid and gid remapping
97file-system 	UNION		# union file system
98file-system 	NTFS		# Windows NT file system
99file-system	PTYFS		# /dev/pts/N support
100file-system	TMPFS		# Efficient memory file-system
101#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
102
103# File system options
104options 	FFS_EI		# FFS Endian Independent support
105#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
106options 	QUOTA		# legacy UFS quotas
107options 	QUOTA2		# new, in-filesystem UFS quotas
108options 	UFS_DIRHASH	# UFS Large Directory Hashing
109options 	UFS_EXTATTR	# Extended attribute support for UFS1
110options 	WAPBL		# File system journaling support
111options 	LFS_DIRHASH	# LFS version of UFS_DIRHASH - experimental
112#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
113				# immutable) behave as system flags.
114options 	NFSSERVER	# Network File System server
115
116options 	NFS_BOOT_DHCP	# Support DHCP NFS root
117
118# Networking options
119#options 	GATEWAY		# packet forwarding
120options 	INET		# IP + ICMP + TCP + UDP
121options 	INET6		# IPV6
122#options 	IPSEC		# IP security
123#options 	IPSEC_DEBUG	# debug for IP security
124#options 	MROUTING	# IP multicast routing
125#options 	PIM		# Protocol Independent Multicast
126#options 	NETATALK	# AppleTalk networking protocols
127options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
128options 	PPP_DEFLATE	# Deflate compression support for PPP
129options 	PPP_FILTER	# Active filter support for PPP (requires BPF)
130#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
131
132#options 	ALTQ		# Manipulate network interfaces' output queues
133#options 	ALTQ_BLUE	# Stochastic Fair Blue
134#options 	ALTQ_CBQ	# Class-Based Queueing
135#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
136#options 	ALTQ_FIFOQ	# First-In First-Out Queue
137#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
138#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
139#options 	ALTQ_LOCALQ	# Local queueing discipline
140#options 	ALTQ_PRIQ	# Priority Queueing
141#options 	ALTQ_RED	# Random Early Detection
142#options 	ALTQ_RIO	# RED with IN/OUT
143#options 	ALTQ_WFQ	# Weighted Fair Queueing
144
145# These options enable verbose messages for several subsystems.
146# Warning, these may compile large string tables into the kernel!
147options 	MIIVERBOSE	# verbose PHY autoconfig messages
148options 	PCIVERBOSE	# verbose PCI device autoconfig messages
149#options 	PCI_CONFIG_DUMP	# verbosely dump PCI config space
150options 	SCSIVERBOSE	# human readable SCSI error messages
151options 	USBVERBOSE	# verbose USB device autoconfig messages
152
153options 	WSEMUL_VT100
154options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
155options 	WS_DEFAULT_FG=WSCOL_BLACK
156options 	WS_DEFAULT_BG=WSCOL_LIGHT_WHITE
157options 	WS_KERNEL_FG=WSCOL_GREEN
158options 	WS_KERNEL_BG=WSCOL_LIGHT_WHITE
159#options 	FONT_GALLANT12x22
160options 	FONT_BOLD8x16
161
162# Kernel root file system and dump configuration
163config		netbsd	root on ? type ?
164
165#
166# Device configuration
167#
168
169mainbus*	at root
170
171# CPUs
172cpu*		at mainbus?
173
174# Generic OpenFirmware console support
175rtas*		at mainbus?
176
177gt*		at mainbus?			# Marvell MV64361 Discovery II
178mvgbec* 	at gt? offset ?			# Gigabit Ethernet
179mvgbe0		at mvgbec? port 1 irq 9
180
181# PCI root nodes
182ofwpci*		at mainbus?
183pci*		at ofwpci? bus ?
184gtpci*		at gt? unit ?
185pci*		at gtpci? bus ?
186
187# PCI bridges
188pchb*		at pci? dev ? function ?
189ppb*		at pci? dev ? function ?
190pcib*		at pci? dev ? function ?
191
192# ISA bus support
193isa*		at pcib?
194
195# Console Devices
196genfb*		at pci? dev ? function ?
197#radeonfb*	at pci? dev ? function ?
198#voodoofb*	at pci? dev ? function ?	# 3Dfx Voodoo3
199tdvfb*		at pci? dev ? function ?	# 3Dfx Voodoo1/Voodoo2
200#options	TDVFB_CONSOLE
201pckbc0		at isa?			# pc keyboard controller
202pckbd*		at pckbc?		# PC keyboard
203pms*		at pckbc?		# PS/2 mouse for wsmouse
204#wscons stuff
205wskbd*		at pckbd? console ?
206wsmouse*	at pms? mux 0
207# make sure the console display is always wsdisplay0 XXX Why?
208wsdisplay0      at wsemuldisplaydev? console 1
209wsdisplay*      at wsemuldisplaydev?
210
211attimer0	at isa?			# AT Timer
212pcppi0		at isa?			# PC prog. periph. interface
213# FIX ISABEEP LATER
214
215# VIA VT82C686A/VT8231 Hardware Monitor and Power Management Timer
216viaenv* 	at pci? dev ? function ?
217
218# Serial Devices
219# ISA serial interfaces
220com0	at isa? port 0x3f8 irq 4	# standard PC serial ports
221com1	at isa? port 0x2f8 irq 3
222
223# Parallel Printer Interfaces
224# ISA parallel printer interfaces
225lpt0		at isa? port 0x3bc irq 7	# standard PC parallel ports
226
227# ISA floppy
228fdc0		at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy controllers
229fd*		at fdc? drive ?			# the drives themselves
230
231# SCSI Controllers and Devices
232siop*		at pci? dev ? function ?	# Symbios 53c8xx SCSI
233esiop*		at pci? dev ? function ?	# Symbios 53c875 SCSI and newer
234
235# SCSI bus support
236scsibus* 	at siop?
237scsibus* 	at esiop?
238scsibus* 	at umass?
239scsibus* 	at sbp?
240
241# SCSI devices
242sd*		at scsibus? target ? lun ?	# SCSI disk drives
243st*		at scsibus? target ? lun ?	# SCSI tape drives
244cd*		at scsibus? target ? lun ?	# SCSI CD-ROM drives
245#ch*		at scsibus? target ? lun ?	# SCSI autochangers
246#ss*		at scsibus? target ? lun ?	# SCSI scanners
247#uk*		at scsibus? target ? lun ?	# SCSI unknown
248
249# IDE and related devices
250# PCI IDE controllers
251pciide*		at pci? dev ? function ? flags 0x0000
252viaide*		at pci? dev ? function ?	# VIA/AMD/Nvidia IDE controllers
253siisata*	at pci? dev ? function ?
254
255# ATA (IDE) bus support
256atabus0		at viaide0 channel 0
257atabus1		at viaide0 channel 1
258atabus*		at ata?
259
260# IDE drives
261# Flags are used only with controllers that support DMA operations
262# and mode settings (e.g. some pciide controllers)
263# The lowest order four bits (rightmost digit) of the flags define the PIO
264# mode to use, the next set of four bits the DMA mode and the third set the
265# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
266# to use, and the last bit must be 1 for this setting to be used.
267# For DMA and UDMA, 0xf (1111) means 'disable'.
268# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
269# (0xc=1100, 0xa=1010, 0xf=1111)
270# 0x0000 means "use whatever the drive claims to support".
271wd0	at atabus0 drive 0 flags 0x0000
272wd*	at atabus? drive ? flags 0x0000
273
274# ATAPI bus support
275atapibus*	at atapi?
276
277# ATAPI devices
278# flags have the same meaning as for IDE drives.
279cd*	at atapibus? drive ? flags 0x0000	# ATAPI CD-ROM drives
280sd*	at atapibus? drive ? flags 0x0000	# ATAPI disk drives
281uk*	at atapibus? drive ? flags 0x0000	# ATAPI unknown
282
283# Network Interfaces
284ep*	at pci? dev ? function ?	# 3Com 3c59x
285ex*	at pci? dev ? function ?	# 3Com 3c90x[BC]
286fxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
287ne*	at pci? dev ? function ?	# NE2000-compatible Ethernet
288pcn*	at pci? dev ? function ?	# AMD PCnet-PCI Ethernet
289re*	at pci? dev ? function ?	# Realtek 8139C+/8169/8169S/8110S
290rtk*	at pci? dev ? function ?	# Realtek 8129/8139
291sip*	at pci? dev ? function ?	# SiS 900/DP83815 Ethernet
292tlp*	at pci? dev ? function ?	# DECchip 21x4x and clones
293vr*	at pci? dev ? function ?	# VIA Rhine Fast Ethernet
294
295# MII/PHY support
296acphy*	at mii? phy ?			# Altima AC101 and AMD Am79c874 PHYs
297amhphy* at mii? phy ?			# AMD 79c901 Ethernet PHYs
298bmtphy* at mii? phy ?			# Broadcom BCM5201 and BCM5202 PHYs
299brgphy* at mii? phy ?			# Broadcom BCM5400-family PHYs
300ciphy*	at mii? phy ?			# Cicada CS8201 Gig-E PHYs
301dmphy*	at mii? phy ?			# Davicom DM9101 PHYs
302exphy*	at mii? phy ?			# 3Com internal PHYs
303gentbi* at mii? phy ?			# Generic Ten-Bit 1000BASE-[CLS]X PHYs
304glxtphy* at mii? phy ?			# Level One LXT-1000 PHYs
305gphyter* at mii? phy ?			# NS83861 Gig-E PHY
306icsphy* at mii? phy ?			# Integrated Circuit Systems ICS189x
307igphy*	at mii? phy ?			# Intel IGP01E1000
308ikphy*	at mii? phy ?			# Intel 82563 PHYs
309inphy*	at mii? phy ?			# Intel 82555 PHYs
310iophy*	at mii? phy ?			# Intel 82553 PHYs
311lxtphy* at mii? phy ?			# Level One LXT-970 PHYs
312makphy* at mii? phy ?			# Marvell Semiconductor 88E1000 PHYs
313nsphy*	at mii? phy ?			# NS83840 PHYs
314nsphyter* at mii? phy ? 		# NS83843 PHYs
315pnaphy* at mii? phy ?			# generic HomePNA PHYs
316qsphy*	at mii? phy ?			# Quality Semiconductor QS6612 PHYs
317rgephy* at mii? phy ?			# Realtek 8169S/8110S internal PHYs
318rlphy*	at mii? phy ?			# Realtek 8139/8201L PHYs
319sqphy*	at mii? phy ?			# Seeq 80220/80221/80223 PHYs
320tlphy*	at mii? phy ?			# ThunderLAN PHYs
321tqphy*	at mii? phy ?			# TDK Semiconductor PHYs
322ukphy*	at mii? phy ?			# generic unknown PHYs
323urlphy* at mii? phy ?			# Realtek RTL8150L internal PHYs
324
325# PCI USB controllers
326uhci*	at pci? dev ? function ?	# USB Universal Host Controller
327ohci*	at pci? dev ? function ?	# USB Open Host Controller
328ehci*	at pci? dev ? function ?	# USB Enhanced Host Controller
329options USB_FRAG_DMA_WORKAROUND		# Workaround panic in usb_allocmem()
330
331usb*	at uhci?			# USB bus support
332usb*	at ohci?			# USB bus support
333usb*	at ehci?			# USB bus support
334uhub*	at usb?				# USB Hubs
335uhub*	at uhub? port ?
336
337# USB Mass Storage
338umass*	at uhub? port ? configuration ? interface ?
339
340uhidev*	at uhub? port ? configuration ? interface ?	# USB HID device
341
342ums*	at uhidev? reportid ?				# USB Mice
343wsmouse* at ums? mux 0
344
345ukbd*	at uhidev? reportid ?				# USB Keyboards
346wskbd*	at ukbd? console ? mux 1
347
348ucycom*	at uhidev? reportid ?				# USB serial adapter
349uhid*	at uhidev? reportid ?				# USB Generic HID
350
351ulpt*	at uhub? port ? configuration ? interface ?	# USB Printer
352umodem*	at uhub? port ? configuration ?			# USB Modem
353ucom*	at umodem?
354uhso*	at uhub? port ? configuration ?			# Option N.V. Wireless WAN modems
355#uaudio*	at uhub? port ? configuration ?			# USB audio
356
357# D-Link DSB-R100 USB FM radio tuner
358#udsbr* at uhub? port ?
359#radio* at udsbr?
360
361# USB Ethernet adapters
362#aue*	at uhub? port ?		# ADMtek AN986 Pegasus based adapters
363#axe*	at uhub? port ?		# ASIX AX88172 based adapters
364#cue*	at uhub? port ?		# CATC USB-EL1201A based adapters
365#kue*	at uhub? port ?		# Kawasaki LSI KL5KUSB101B based adapters
366#mue*	at uhub? port ?		# Microchip LAN75xx/LAN78xx based adapters
367#udav*	at uhub? port ?		# Davicom DM9601 based adapters
368#ure*	at uhub? port ?		# Realtek RTL8152/RTL8153 based adapters
369#url*	at uhub? port ?		# Realtek RTL8150L based adapters
370
371#ukyopon* at uhub? port ?				# Kyocera AIR-EDGE PHONE
372#ucom*	at ukyopon? portno ?
373
374ugen*	at uhub? port ? configuration ? interface ?	# USB Generic driver
375
376# USB 802.11 adapters
377#atu*	at uhub? port ?		# Atmel at76c50x 802.11b
378#ural*	at uhub? port ?		# Ralink Technology RT2500USB 802.11a/b/g
379#zyd*	at uhub? port ?		# Zydas ZD1211
380
381# PCI IEEE1394 controllers
382fwohci*	at pci? dev ? function ?	# IEEE1394 Open Host Controller
383
384ieee1394if* at fwohci?
385fwip*	at ieee1394if?			# IP over IEEE1394
386sbp*	at ieee1394if? euihi ? euilo ?
387
388# Audio Devices
389
390# PCI audio devices
391auvia*  at pci? dev ? function ?	# VIA VT82C686A integrated AC'97 Audio
392
393# Audio support
394audio*	at audiobus?
395
396spkr*	at audio?		# PC speaker (synthesized)
397
398
399#
400# accept filters
401pseudo-device   accf_data		# "dataready" accept filter
402pseudo-device   accf_http		# "httpready" accept filter
403
404pseudo-device	vnd			# disk-like interface to files
405#options 	VND_COMPRESSION		# compressed vnd(4)
406pseudo-device	ccd			# concatenated/striped disk devices
407#pseudo-device	cgd			# cryptographic disk devices
408pseudo-device	raid			# RAIDframe disk driver
409options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
410# Options to enable various other RAIDframe RAID types.
411#options 	RF_INCLUDE_EVENODD=1
412#options 	RF_INCLUDE_RAID5_RS=1
413#options 	RF_INCLUDE_PARITYLOGGING=1
414#options 	RF_INCLUDE_CHAINDECLUSTER=1
415#options 	RF_INCLUDE_INTERDECLUSTER=1
416#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
417#options 	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
418pseudo-device	fss			# file system snapshot device
419pseudo-device	md			# memory disk device
420pseudo-device	loop			# network loopback
421pseudo-device	bpfilter		# packet filter
422pseudo-device	carp			# Common Address Redundancy Protocol
423pseudo-device	npf			# NPF packet filter
424pseudo-device	ppp			# Point-to-Point Protocol
425pseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
426pseudo-device	sl			# Serial Line IP
427pseudo-device	tun			# network tunneling over tty
428pseudo-device	tap			# virtual Ethernet
429#pseudo-device	gre			# generic L3 over IP tunnel
430pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
431#pseudo-device	faith			# IPv[46] tcp relay translation i/f
432pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
433pseudo-device	vlan			# IEEE 802.1q encapsulation
434pseudo-device	bridge			# simple inter-network bridging
435pseudo-device	vether			# Virtual Ethernet for bridge
436pseudo-device	agr			# IEEE 802.3ad link aggregation
437pseudo-device	pty			# pseudo-terminals
438pseudo-device	clockctl		# user control of clock subsystem
439pseudo-device	openfirm		# /dev/openfirm
440pseudo-device	ksyms			# /dev/ksyms
441pseudo-device	wsmux			# mouse and keyboard multiplexor
442pseudo-device	putter			# for puffs and pud
443pseudo-device 	swwdog			# software watchdog timer -- swwdog(4)
444
445# userland interface to drivers, including autoconf and properties retrieval
446pseudo-device	drvctl
447
448include "dev/veriexec.config"
449
450# Pull in optional local configuration - always at end
451cinclude	"arch/ofppc/conf/GENERIC.local"
452