GENERIC revision 1.238 1 1.238 christos # $NetBSD: GENERIC,v 1.238 2024/01/29 18:27:13 christos Exp $
2 1.21 cgd #
3 1.117 gmcgarry # GENERIC machine description file
4 1.117 gmcgarry #
5 1.117 gmcgarry # This machine description file is used to generate the default NetBSD
6 1.117 gmcgarry # kernel. The generic kernel does not include all options, subsystems
7 1.117 gmcgarry # and device drivers, but should be useful for most applications.
8 1.117 gmcgarry #
9 1.117 gmcgarry # The machine description file can be customised for your specific
10 1.117 gmcgarry # machine to reduce the kernel size and improve its performance.
11 1.117 gmcgarry #
12 1.117 gmcgarry # For further information on compiling NetBSD kernels, see the config(8)
13 1.117 gmcgarry # man page.
14 1.117 gmcgarry #
15 1.117 gmcgarry # For further information on hardware support for this architecture, see
16 1.117 gmcgarry # the intro(4) man page. For further information about kernel options
17 1.117 gmcgarry # for this architecture, see the options(4) man page. For an explanation
18 1.117 gmcgarry # of each device driver in this file see the section 4 man page for the
19 1.117 gmcgarry # device.
20 1.1 briggs
21 1.224 mrg include "arch/mac68k/conf/std.mac68k"
22 1.95 hubertf
23 1.125 atatat options INCLUDE_CONFIG_FILE # embed config file in kernel binary
24 1.125 atatat
25 1.238 christos #ident "GENERIC-$Revision: 1.238 $"
26 1.216 tsutsui
27 1.231 rin makeoptions COPTS="-O2 -fno-reorder-blocks -fno-omit-frame-pointer"
28 1.231 rin # See share/mk/sys.mk. -fno-omit-frame-pointer is necessary for
29 1.231 rin # backtraces in DDB.
30 1.2 briggs
31 1.74 scottr maxusers 16 # estimated number of users
32 1.71 scottr
33 1.71 scottr # CPU support. At least one is REQUIRED.
34 1.71 scottr options M68040
35 1.71 scottr options M68030
36 1.71 scottr options M68020 # Note: must have 68851 PMMU
37 1.71 scottr
38 1.71 scottr # CPU-related options.
39 1.71 scottr options FPSP
40 1.71 scottr options FPU_EMULATE
41 1.2 briggs
42 1.215 jklos # Support for 128 meg SIMMs in Centris / Quadra 610, 650 and 800 machines.
43 1.215 jklos # You need to set the total memory in the MacOS Booter.
44 1.215 jklos #options DJMEMCMAX
45 1.215 jklos
46 1.234 rin # Use hard-coded memory size in MB, instead of parameter given by Booter.
47 1.234 rin # Workaround for Booter bug by which max memory is restricted to 255MB.
48 1.234 rin #options MAC68K_MEMSIZE=256
49 1.234 rin
50 1.2 briggs # Standard system options
51 1.71 scottr
52 1.71 scottr options INSECURE # disable kernel security levels
53 1.71 scottr
54 1.71 scottr options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
55 1.71 scottr #options NTP # NTP phase/frequency locked loop
56 1.71 scottr
57 1.71 scottr options KTRACE # system call tracing via ktrace(1)
58 1.71 scottr
59 1.71 scottr options SYSVMSG # System V-like message queues
60 1.71 scottr options SYSVSEM # System V-like semaphores
61 1.71 scottr options SYSVSHM # System V-like memory sharing
62 1.120 jdolecek
63 1.129 lukem options USERCONF # userconf(4) support
64 1.120 jdolecek #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
65 1.147 atatat options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
66 1.134 junyoung
67 1.225 sevan # Alternate buffer queue strategies for better responsiveness under high
68 1.225 sevan # disk I/O load.
69 1.157 tsutsui #options BUFQ_READPRIO
70 1.228 sevan options BUFQ_PRIOCSCAN
71 1.54 scottr
72 1.71 scottr # Diagnostic/debugging support options
73 1.121 fredb #options DIAGNOSTIC # cheap kernel consistency checks
74 1.71 scottr #options DEBUG # expensive debugging checks/support
75 1.188 hauke #options LOCKDEBUG # kernel lock debugging
76 1.114 lukem options DDB # in-kernel debugger
77 1.70 lukem #options DDB_HISTORY_SIZE=100 # enable history editing in DDB
78 1.114 lukem #options KGDB # remote debugger
79 1.114 lukem #options KGDB_DEV=0xc01 # kgdb device number (dev_t)
80 1.114 lukem #options KGDB_DEVRATE=38400 # baud rate
81 1.71 scottr #makeoptions DEBUG="-g" # compile full symbol table
82 1.54 scottr
83 1.54 scottr # Compatibility options
84 1.224 mrg include "conf/compat_netbsd10.config"
85 1.71 scottr #options COMPAT_NOMID # compatibility with 386BSD, BSDI, NetBSD 0.8,
86 1.71 scottr
87 1.121 fredb # The following is needed to run pre-NetBSD 1.6 binaries under ELF.
88 1.123 shiba options COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
89 1.123 shiba options EXEC_AOUT # support for exec'ing a.out
90 1.121 fredb
91 1.121 fredb #options COMPAT_LINUX # compatibility with Linux/m68k binaries
92 1.233 nia #options COMPAT_OSSAUDIO # compatibility with Linux/m68k binaries
93 1.121 fredb #options COMPAT_M68K4K # compatibility with NetBSD/m68k4k binaries
94 1.121 fredb #options COMPAT_SUNOS # compatibility with SunOS 4.x binaries
95 1.2 briggs
96 1.65 scottr # File systems
97 1.71 scottr file-system FFS # UFS
98 1.71 scottr file-system EXT2FS # second extended file system (linux)
99 1.71 scottr file-system LFS # log-structured file system
100 1.71 scottr file-system MFS # memory file system
101 1.71 scottr file-system NFS # Network File System client
102 1.71 scottr file-system CD9660 # ISO 9660 + Rock Ridge file system
103 1.71 scottr file-system MSDOSFS # MS-DOS file system
104 1.71 scottr file-system FDESC # /dev/fd
105 1.71 scottr file-system KERNFS # /kern
106 1.71 scottr file-system NULLFS # loopback file system
107 1.94 wrstuden file-system OVERLAY # overlay file system
108 1.195 pooka file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
109 1.71 scottr file-system PROCFS # /proc
110 1.71 scottr file-system UMAPFS # NULLFS + uid and gid remapping
111 1.71 scottr file-system UNION # union file system
112 1.90 fredb file-system CODA # Venus/Coda distributed file system
113 1.164 christos file-system PTYFS # /dev/pts/N support
114 1.183 jmmv file-system TMPFS # Efficient memory file-system
115 1.169 reinoud #file-system UDF # experimental - OSTA UDF CD/DVD file-system
116 1.179 dillo #file-system HFS # experimental - Apple HFS+ (read-only)
117 1.55 thorpej
118 1.65 scottr # File system options
119 1.235 simonb #options FFS_EI # FFS Endian Independent support
120 1.235 simonb #options FFS_NO_SNAPSHOT # No FFS snapshot support
121 1.200 bouyer options QUOTA # legacy UFS quotas
122 1.200 bouyer options QUOTA2 # new, in-filesystem UFS quotas
123 1.235 simonb options UFS_DIRHASH # UFS Large Directory Hashing
124 1.235 simonb options UFS_EXTATTR # Extended attribute support for UFS1
125 1.204 dholland options WAPBL # File system journaling support
126 1.235 simonb options LFS_DIRHASH # LFS version of UFS_DIRHASH - experimental
127 1.235 simonb options NFSSERVER # Network File System server
128 1.92 itojun
129 1.7 briggs # Networking options
130 1.71 scottr options GATEWAY # packet forwarding
131 1.71 scottr options INET # IP + ICMP + TCP + UDP
132 1.92 itojun options INET6 # IPV6
133 1.92 itojun #options IPSEC # IP security
134 1.92 itojun #options IPSEC_DEBUG # debug for IP security
135 1.71 scottr #options MROUTING # IP multicast routing
136 1.148 manu #options PIM # Protocol Independent Multicast
137 1.71 scottr options NETATALK # AppleTalk networking protocols
138 1.88 christos options PPP_BSDCOMP # BSD-Compress compression support for PPP
139 1.88 christos options PPP_DEFLATE # Deflate compression support for PPP
140 1.88 christos options PPP_FILTER # Active filter support for PPP (requires bpf)
141 1.111 abs #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
142 1.71 scottr
143 1.145 abs #options ALTQ # Manipulate network interfaces' output queues
144 1.145 abs #options ALTQ_BLUE # Stochastic Fair Blue
145 1.145 abs #options ALTQ_CBQ # Class-Based Queueing
146 1.145 abs #options ALTQ_CDNR # Diffserv Traffic Conditioner
147 1.145 abs #options ALTQ_FIFOQ # First-In First-Out Queue
148 1.145 abs #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
149 1.145 abs #options ALTQ_HFSC # Hierarchical Fair Service Curve
150 1.145 abs #options ALTQ_LOCALQ # Local queueing discipline
151 1.145 abs #options ALTQ_PRIQ # Priority Queueing
152 1.145 abs #options ALTQ_RED # Random Early Detection
153 1.145 abs #options ALTQ_RIO # RED with IN/OUT
154 1.145 abs #options ALTQ_WFQ # Weighted Fair Queueing
155 1.145 abs
156 1.71 scottr # These options enable verbose messages for several subsystems.
157 1.71 scottr # Warning, these may compile large string tables into the kernel!
158 1.71 scottr options SCSIVERBOSE # human readable SCSI error messages
159 1.1 briggs
160 1.96 scottr # wscons options
161 1.96 scottr #options WSEMUL_SUN # sun terminal emulation
162 1.96 scottr options WSEMUL_VT100 # VT100 / VT220 emulation
163 1.207 abs options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
164 1.96 scottr options WSDISPLAY_COMPAT_ITEFONT # use ite font (6x10)
165 1.96 scottr
166 1.96 scottr # rcons options; note that 1-bit and 8-bit displays are supported by default.
167 1.96 scottr options RCONS_2BPP # Support for 2-bit display
168 1.96 scottr options RCONS_4BPP # Support for 4-bit display
169 1.96 scottr options RCONS_16BPP # Support for 16-bit display
170 1.96 scottr
171 1.9 briggs # Mac-specific options
172 1.79 scottr #options ALTXBUTTONS # Map Opt-{1,2,3} to mouse buttons
173 1.87 briggs #options DISABLE_EXT_CACHE # If really paranoid, disable IIci ext. cache
174 1.79 scottr options GRF_COMPAT # Include grf compatibility code
175 1.77 scottr #options MRG_ADB # Use ROM-based ADB driver
176 1.79 scottr options ZS_CONSOLE_ABORT
177 1.84 scottr
178 1.93 scottr options NFS_BOOT_DHCP
179 1.71 scottr
180 1.71 scottr # Kernel root file system and dump configuration.
181 1.55 thorpej config netbsd root on ? type ?
182 1.1 briggs
183 1.71 scottr #
184 1.71 scottr # Device configuration
185 1.71 scottr #
186 1.71 scottr
187 1.71 scottr mainbus0 at root
188 1.71 scottr
189 1.71 scottr
190 1.71 scottr # Basic Bus Support
191 1.71 scottr
192 1.71 scottr # On-board I/O bus support
193 1.71 scottr obio0 at mainbus?
194 1.71 scottr
195 1.71 scottr # NuBus support
196 1.71 scottr nubus0 at mainbus?
197 1.71 scottr
198 1.71 scottr
199 1.71 scottr # Console Devices
200 1.71 scottr
201 1.71 scottr # Apple Desktop Bus interface
202 1.80 ender adb0 at obio?
203 1.80 ender aed* at adb? # ADB event device
204 1.96 scottr akbd* at adb? # ADB keyboard
205 1.96 scottr ams* at adb? # ADB mouse
206 1.71 scottr
207 1.71 scottr # Basic frame buffer support
208 1.71 scottr intvid0 at obio? # Internal video hardware
209 1.71 scottr macvid* at nubus? # NuBus video card
210 1.71 scottr
211 1.71 scottr # Device-independent frame buffer interface
212 1.96 scottr macfb* at intvid?
213 1.96 scottr macfb* at macvid?
214 1.71 scottr
215 1.96 scottr # Workstation Console devices
216 1.99 scottr wsdisplay* at macfb? console ?
217 1.99 scottr wskbd* at akbd? console ?
218 1.99 scottr wsmouse* at ams?
219 1.71 scottr
220 1.71 scottr
221 1.187 hauke # Centronics printer port
222 1.187 hauke
223 1.187 hauke # CSI Hurdler Centronics Parallel Interface
224 1.205 hauke # CPI_CTC12_IS_TIMECOUNTER 0x01 Run counters 1+2 as timecounter
225 1.205 hauke cpi* at nubus? flags 0x1
226 1.187 hauke
227 1.187 hauke
228 1.71 scottr # Serial Devices
229 1.71 scottr
230 1.71 scottr # On-board serial interface
231 1.71 scottr zsc0 at obio?
232 1.71 scottr zstty* at zsc? channel ?
233 1.71 scottr
234 1.71 scottr
235 1.71 scottr # SCSI Controllers and Devices
236 1.71 scottr
237 1.71 scottr # SCSI controllers
238 1.71 scottr # XXX - use only one of ncrscsi or sbc
239 1.151 chs ncrscsi0 at obio? addr 0 # SCSI NCR 5380
240 1.151 chs #sbc0 at obio? addr 0 flags 0x1 # MI SCSI NCR 5380
241 1.151 chs esp0 at obio? addr 0 # SCSI NCR 53C9x
242 1.151 chs esp1 at obio? addr 1 # SCSI NCR 53C9x
243 1.71 scottr
244 1.71 scottr # SCSI bus support
245 1.71 scottr scsibus* at scsi?
246 1.71 scottr
247 1.71 scottr # SCSI devices
248 1.71 scottr sd* at scsibus? target ? lun ? # SCSI disk drives
249 1.71 scottr st* at scsibus? target ? lun ? # SCSI tape drives
250 1.71 scottr cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
251 1.71 scottr ch* at scsibus? target ? lun ? # SCSI autochangers
252 1.236 nat dse* at scsibus? target ? lun ? # SCSI ethernet (Dayna)
253 1.71 scottr se* at scsibus? target ? lun ? # SCSI ethernet
254 1.71 scottr ss* at scsibus? target ? lun ? # SCSI scanners
255 1.71 scottr uk* at scsibus? target ? lun ? # SCSI unknown
256 1.126 shiba
257 1.126 shiba # IDE controller and devices
258 1.126 shiba wdc* at obio? flags 0x1000
259 1.141 lukem atabus* at ata?
260 1.140 bouyer wd* at atabus? drive ?
261 1.84 scottr
262 1.84 scottr
263 1.84 scottr # Miscellaneous mass storage devices
264 1.84 scottr
265 1.84 scottr # IWM floppy disk controller
266 1.84 scottr iwm0 at obio? # Sony driver (800K GCR)
267 1.84 scottr fd* at iwm? drive ?
268 1.71 scottr
269 1.71 scottr
270 1.71 scottr # Network Interfaces
271 1.71 scottr
272 1.71 scottr # On-board Ethernet controllers
273 1.71 scottr sn* at obio? # SONIC-based (DP83932, DP83916)
274 1.71 scottr mc* at obio? # MACE-based
275 1.71 scottr
276 1.71 scottr # NuBus Ethernet controllers
277 1.71 scottr ae* at nubus? # DP8390-based
278 1.71 scottr sn* at nubus? # SONIC-based (DP83932, DP83916)
279 1.106 briggs sm* at nubus? # SMC 91cxx-based
280 1.128 itojun netdock* at nubus? # Asante NetDock, Newer Ether MicroDock
281 1.71 scottr
282 1.106 briggs nsphy* at mii? phy ?
283 1.106 briggs ukphy* at mii? phy ?
284 1.71 scottr
285 1.71 scottr # Audio Devices
286 1.71 scottr
287 1.71 scottr # On-board audio hardware
288 1.71 scottr asc0 at obio? # ASC/EASC audio
289 1.71 scottr
290 1.71 scottr # Pseudo-Devices
291 1.71 scottr
292 1.71 scottr # disk/mass storage pseudo-devices
293 1.211 christos pseudo-device ccd # concatenated/striped disk devices
294 1.211 christos #pseudo-device cgd # cryptographic disk devices
295 1.212 christos #pseudo-device raid # RAIDframe disk driver
296 1.98 simonb #options RAID_AUTOCONFIG # auto-configuration of RAID components
297 1.119 oster # Options to enable various other RAIDframe RAID types.
298 1.119 oster # options RF_INCLUDE_EVENODD=1
299 1.119 oster # options RF_INCLUDE_RAID5_RS=1
300 1.119 oster # options RF_INCLUDE_PARITYLOGGING=1
301 1.119 oster # options RF_INCLUDE_CHAINDECLUSTER=1
302 1.119 oster # options RF_INCLUDE_INTERDECLUSTER=1
303 1.119 oster # options RF_INCLUDE_PARITY_DECLUSTERING=1
304 1.119 oster # options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
305 1.196 pooka pseudo-device fss # file system snapshot device
306 1.198 hannken pseudo-device md # memory disk device (ramdisk)
307 1.212 christos pseudo-device vcoda # Venus/Coda distributed file system
308 1.171 cube pseudo-device vnd # disk-like interface to files
309 1.160 hubertf #options VND_COMPRESSION # compressed vnd(4)
310 1.71 scottr
311 1.71 scottr # network pseudo-devices
312 1.170 rpaulo pseudo-device bpfilter # Berkeley packet filter
313 1.228 sevan pseudo-device carp # Common Address Redundancy Protocol
314 1.226 maxv pseudo-device npf # NPF packet filter
315 1.71 scottr pseudo-device loop # network loopback
316 1.171 cube pseudo-device ppp # Point-to-Point Protocol
317 1.118 martin pseudo-device pppoe # PPP over Ethernet (RFC 2516)
318 1.171 cube pseudo-device sl # Serial Line IP
319 1.171 cube pseudo-device tun # network tunneling over tty
320 1.150 cube pseudo-device tap # virtual Ethernet
321 1.171 cube #pseudo-device gre # generic L3 over IP tunnel
322 1.171 cube pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
323 1.171 cube #pseudo-device faith # IPv[46] tcp relay translation i/f
324 1.172 pavel pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
325 1.109 bouyer pseudo-device vlan # IEEE 802.1q encapsulation
326 1.116 atatat pseudo-device bridge # simple inter-network bridging
327 1.232 roy pseudo-device vether # Virtual Ethernet for bridge
328 1.181 martin pseudo-device agr # IEEE 802.3ad link aggregation
329 1.71 scottr
330 1.191 tls #
331 1.191 tls # accept filters
332 1.191 tls pseudo-device accf_data # "dataready" accept filter
333 1.191 tls pseudo-device accf_http # "httpready" accept filter
334 1.191 tls
335 1.71 scottr # miscellaneous pseudo-devices
336 1.96 scottr pseudo-device grf 2 # grf emulation for wscons
337 1.96 scottr pseudo-device ite 1 # ite emulation for wscons
338 1.108 jdolecek pseudo-device pty # pseudo-terminals
339 1.127 lukem pseudo-device clockctl # user control of clock subsystem
340 1.195 pooka pseudo-device putter # for puffs and pud
341 1.202 hauke pseudo-device swwdog # software watchdog driver
342 1.71 scottr
343 1.101 fredb # random number generator pseudo-device
344 1.71 scottr #options RND_COM # use "com" randomness as well (BROKEN)
345 1.138 ragge pseudo-device ksyms # /dev/ksyms
346 1.167 elad
347 1.228 sevan include "dev/veriexec.config"
348 1.237 abs
349 1.237 abs # Pull in optional local configuration - always at end
350 1.237 abs cinclude "arch/mac68k/conf/GENERIC.local"
351