1# $NetBSD: GENERIC,v 1.46 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
21include "arch/amigappc/conf/std.amigappc"
22
23options   INCLUDE_CONFIG_FILE     # embed config file in kernel binary
24
25#ident          "GENERIC-$Revision: 1.46 $"
26
27maxusers  8
28
29#
30# Mainboards to support (in addition to Amiga)
31#
32options   BB060STUPIDROM      # You need this, if you have a non-DraCo
33                                        # MC68060 with an OS ROM up to (at least)
34                                        # V40 (OS3.1) and want to boot with the
35                                        # bootblock.
36                                        # You do not need this if you have a DraCo,
37                                        # have no 68060 or NEVER use the bootblock
38options   P5PPC68KBOARD       # Phase5 PPC/68K board support
39
40#
41# Standard system options
42#
43options   INSECURE  # disable kernel security levels
44options   RTC_OFFSET=0        # hardware clock is this many mins. west of GMT
45options   NTP                 # NTP phase/frequency locked loop
46
47options   KTRACE              # system call tracing support
48options   SCSIVERBOSE         # human readable SCSI error messages
49options   USERCONF  # userconf(4) support
50#options  PIPE_SOCKETPAIR     # smaller, but slower pipe(2)
51#options  SYSCTL_INCLUDE_DESCR          # Include sysctl descriptions in kernel
52
53# Support for System V IPC facilities.
54options   SYSVSHM             # System V-like shared memory
55options   SYSVMSG             # System V-like messages
56options   SYSVSEM             # System V-like semaphores
57
58# Alternate buffer queue strategies for better responsiveness under high
59# disk I/O load.
60#options  BUFQ_READPRIO
61options   BUFQ_PRIOCSCAN
62
63#
64# Diagnostic/debugging support options
65#
66#options  DIAGNOSTIC          # Extra kernel sanity checks
67#options  DEBUG               # Enable misc. kernel debugging code
68#options  DEBUG_KERNEL_START
69options   DDB                 # in-kernel debugger
70#options  DDB_ONPANIC=1       # see also sysctl(7): `ddb.onpanic'
71options   DDB_HISTORY_SIZE=512          # Enable history editing in DDB
72#options  SCSIDEBUG # Add SCSI debugging statements
73#options  SERCONSOLE          # console via Amiga serial port
74#makeoptions        DEBUG="-g"          # compile full symbol table
75
76#
77# Compatibility option
78#
79
80include   "conf/compat_netbsd09.config"
81
82#options  COMPAT_386BSD_MBRPART # recognize old partition ID
83#options  COMPAT_LINUX        # Linux binary compatibility
84#options  COMPAT_OSSAUDIO     # Linux binary compatibility
85
86#
87# File systems
88#
89file-system         FFS                 # UFS
90file-system         EXT2FS              # second extended file system (linux)
91file-system         LFS                 # log-structured file system
92file-system         MFS                 # memory file system
93file-system         NFS                 # Network file System client
94file-system         CD9660              # ISO 9660 + Rock Ridge file system
95file-system         MSDOSFS             # MS-DOS file system
96file-system         ADOSFS              # AmigaDOS file system
97file-system         FDESC               # /dev/fd
98file-system         KERNFS              # /kern
99file-system         NULLFS              # loopback file system
100file-system         OVERLAY             # overlay file system
101file-system         PROCFS              # /proc
102file-system         UMAPFS              # NULLFS + uid and gid remapping
103file-system         UNION               # union file system
104file-system         PTYFS               # /dev/pts/N support
105file-system         TMPFS               # Efficient memory file-system
106#file-system        UDF                 # experimental - OSTA UDF CD/DVD file-system
107
108# File system options
109#options  FFS_EI              # FFS Endian Independent support
110#options  FFS_NO_SNAPSHOT     # No FFS snapshot support
111options   QUOTA               # legacy UFS quotas
112options   QUOTA2              # new, in-filesystem UFS quotas
113options   UFS_DIRHASH         # UFS Large Directory Hashing
114options   UFS_EXTATTR         # Extended attribute support for UFS1
115options   WAPBL               # File system journaling support
116options   LFS_DIRHASH         # LFS version of UFS_DIRHASH - experimental
117options   NFSSERVER # Network File System server
118
119#
120# Networking options
121#
122#options  GATEWAY             # Packet forwarding
123options   INET                # IP networking support (Required)
124options   INET6               # IPV6
125#options  IPSEC               # IP security
126#options  IPSEC_DEBUG         # debug for IP security
127#options  MROUTING  # Multicast routing
128#options  PIM                 # Protocol Independent Multicast
129#options  NETATALK  # AppleTalk networking protocols
130options   PPP_BSDCOMP         # BSD-Compress compression support for PPP
131options   PPP_DEFLATE         # Deflate compression support for PPP
132options   PPP_FILTER          # Active filter support for PPP (requires bpf)
133#options  TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
134
135#options  ALTQ                # Manipulate network interfaces' output queues
136#options  ALTQ_BLUE # Stochastic Fair Blue
137#options  ALTQ_CBQ  # Class-Based Queueing
138#options  ALTQ_CDNR # Diffserv Traffic Conditioner
139#options  ALTQ_FIFOQ          # First-In First-Out Queue
140#options  ALTQ_FLOWVALVE      # RED/flow-valve (red-penalty-box)
141#options  ALTQ_HFSC # Hierarchical Fair Service Curve
142#options  ALTQ_LOCALQ         # Local queueing discipline
143#options  ALTQ_PRIQ # Priority Queueing
144#options  ALTQ_RED  # Random Early Detection
145#options  ALTQ_RIO  # RED with IN/OUT
146#options  ALTQ_WFQ  # Weighted Fair Queueing
147
148#
149# Amiga specific options
150#
151options   RETINACONSOLE       # enable code to allow retina to be console
152options   ULOWELLCONSOLE      # enable code to allow a2410 to be console
153options   CL5426CONSOLE       # Cirrus console
154options   CV64CONSOLE         # CyberVision console
155options   TSENGCONSOLE        # Tseng console
156options   CV3DCONSOLE         # CyberVision 64/3D console
157
158options   GRF_ECS             # Enhanced Chip Set
159options   GRF_NTSC  # NTSC
160options   GRF_PAL             # PAL
161options   GRF_A2024 # Support for the A2024
162options   GRF_AGA             # AGA Chip Set
163options   GRF_AGA_VGA         # AGA VGAONLY timing
164options   GRF_SUPER72         # AGA Super-72
165#options  KFONT_8X11          # 8x11 font
166
167# select a font for the console according to the character set and keymap
168# you want to use
169options        KFONT_CONS_ISO8859_1
170#options         KFONT_CONS_ISO8859_2
171
172# This is how you would tell the kernel the A2410 oscillator frequencies:
173# The used frequencies are the defaults, and do not need option setting
174#options  ULOWELL_OSC1=36000000
175#options  ULOWELL_OSC2=66667000
176
177# This is how you specify the blitting speed, higher values may speed up blits
178# a little bit.  If you raise this value too much some trash may appear.
179# the commented version is the default.
180#options  RH_MEMCLK=61000000
181# this option enables the 64 bit sprite which does not work
182# for quite a few people.  E.g. The cursor sprite will turn to a block
183# when moved to the top of the screen in X.
184#options  RH_64BIT_SPRITE
185# enables fast scroll code appears to now work on 040 systems.
186#options  RETINA_SPEED_HACK
187# enables the Hardwarecursor which does not work on some systems.
188#options  RH_HARDWARECURSOR
189
190#
191# Device configuration
192#
193mainbus0  at root
194cpu0                at mainbus0
195kbd0                at mainbus0                   # Amiga keyboard
196zbus0               at mainbus0                   # ZorroII/III expansion bus
197ser0                at mainbus0                   # Amiga onboard serial
198par0                at mainbus0                   # Amiga onboard parallel
199ms*                 at mainbus0                   # Amiga mice
200fdc0                at mainbus0                   # Amiga FDC
201fd*                 at fdc0 unit ?                # floppy disks on the later
202a34kbbc0  at mainbus0                   # A3000/A4000 battery backed clock
203aucc*               at mainbus0                   # Amiga CC audio
204audio*              at aucc?
205
206spkr*               at audio?           # PC speaker (synthesized)
207
208# wscons aware interface to amiga custom chips.
209# If you enable it enable also wskbd.
210#amidisplaycc0      at mainbus0                   # wscons interface to custom chips
211#wsdisplay0         at amidisplaycc0 console ?
212#options  WSEMUL_VT100
213#options  WSDISPLAY_COMPAT_USL                    # wsconscfg VT handling
214#options  FONT_VT220L8x10
215#options  FONT_VT220ISO8x16
216#
217# Keyboard device. Optionally can attach a wskbd.
218# wskbd works together with a wsdisplay so enable them both if you will.
219# Don't enable wskbd if you use ite.
220#
221# XXX in std.amiga: kbd0 at mainbus0
222#wskbd0             at kbd0 console ?
223#wsmouse* at ms?
224
225#
226# Graphics devices
227#
228grfcc0              at mainbus0                   # custom chips
229grfrt0              at zbus0            # retina II
230grfrh0              at zbus0            # retina III
231grfcl*              at zbus0            # Picasso II/Piccolo/Spectrum
232grful0              at zbus0            # A2410
233grfcv0              at zbus0            # CyberVision 64
234grfet*              at zbus0            # Tseng (oMniBus, Domino, Merlin)
235grfcv3d0  at zbus0            # CyberVision 64/3D
236
237grf0                at grfcc0
238grf1                at grfrt0
239grf2                at grfrh0
240grf3                at grfcl?
241grf4                at grful0
242grf5                at grfcv0
243grf6                at grfet?
244grf7                at grfcv3d0
245ite0                at grf0                       # terminal emulators for grfs
246ite1                at grf1                       # terminal emulators for grfs
247ite2                at grf2                       # terminal emulators for grfs
248ite3                at grf3                       # terminal emulators for grfs
249ite4                at grf4                       # terminal emulators for grfs
250ite5                at grf5                       # terminal emulators for grfs
251ite6                at grf6                       # terminal emulators for grfs
252ite7                at grf7                       # terminal emulators for grfs
253
254# Needs wscons
255#mntva*          at zbus?                # MNTMN VA2000
256#options         MNTVA_CONSOLE
257
258#
259# Zorro-II, Zorro-III devices (sans graphics)
260#
261repulse*  at zbus0            # ALiENDESiGN Repulse
262audio*              at repulse?
263
264toccata*  at zbus0            # MacroSystem GmbH Toccata
265audio*              at toccata?
266
267# Ethernet cards:
268le*                 at zbus0            # A2065, Ameristar, Ariadne
269ne*                 at zbus0            # AriadneII, X-surf
270ed*                 at zbus0            # Hydra, ASDG LanRover
271es*                 at zbus0            # CEI A4066 EthernetPLUS
272qn*                 at zbus0            # Quicknet
273
274# Arcnet
275bah*                at zbus0            # C=/Ameristar A2060 / 560
276
277# Greater Valley Product Bus
278gvpbus*   at zbus0
279
280# scsi stuff, all possible
281gtsc0               at gvpbus?                    # GVP series II scsi
282scsibus*  at gtsc0
283ahsc0               at mainbus0                   # A3000 scsi
284scsibus*  at ahsc0
285atzsc0              at zbus0            # A2091 scsi
286scsibus*  at atzsc0
287wstsc0              at zbus0            # Wordsync II scsi
288scsibus*  at wstsc0
289ivsc0               at zbus0            # IVS scsi
290scsibus*  at ivsc0
291mlhsc0              at zbus0            # Hacker scsi
292scsibus*  at mlhsc0
293otgsc0              at zbus0            # 12 gauge scsi
294scsibus*  at otgsc0
295zssc0               at zbus0            # Zeus scsi
296scsibus*  at zssc0
297mgnsc0              at zbus0            # Magnum scsi
298scsibus*  at mgnsc0
299wesc0               at zbus0            # Warp Engine scsi
300scsibus*  at wesc0
301bppcsc0             at zbus0            # BlizzardPPC 603e+ scsi
302scsibus*  at bppcsc0
303afsc0               at zbus0            # A4091 scsi
304scsibus*  at afsc0
305aftsc0              at mainbus0                   # A4000T scsi
306scsibus*  at aftsc0
307flsc0               at zbus0            # FastlaneZ3 scsi
308scsibus*  at flsc0
309bzsc0               at zbus0            # Blizzard 1230 I,II scsi
310scsibus*  at bzsc0
311bzivsc0   at zbus0            # Blizzard 12x0 IV scsi
312scsibus*  at bzivsc0
313bztzsc0   at zbus0            # Blizzard 2060 scsi
314scsibus*  at bztzsc0
315cbsc0               at zbus0            # CyberSCSI I
316scsibus*  at cbsc0
317cbiisc0   at zbus0            # CyberSCSI II
318scsibus*  at cbiisc0
319cbiiisc0  at zbus0            # Cyberstorm mk.III/Cyberstorm PPC SCSI
320scsibus*  at cbiiisc0
321empsc0              at zbus0            # Emplant scsi
322scsibus*  at empsc0
323
324wdc0                at mainbus0                   # A4000 & A1200 IDE bus
325wdc*                at zbus0            # Buddha / Catweasel
326
327atabus*   at wdc? channel ?   # ATA bus
328wd*                 at atabus? drive ?  #  + drives
329atapibus* at atabus?                    # ATAPI bus
330cd*                 at atapibus? drive ?          # ATAPI CD-ROM drives
331sd*                 at atapibus? drive ?          # ATAPI disk drives
332
333pccard0   at mainbus0
334pcmcia*   at pccard0
335com*                at pcmcia? function ?         # Modems and serial cards
336pcmcom*   at pcmcia? function ?         # PCMCIA multi-port serial cards
337aic*                at pcmcia? function ?         # Adaptec APA-1460 SCSI
338wdc*                at pcmcia? function ?
339awi*                at pcmcia? function ?         # BayStack 650 (802.11FH)
340ep*                 at pcmcia? function ?         # 3Com 3c589 and 3c562 Ethernet
341mbe*                at pcmcia? function ?         # MB8696x based Ethernet
342ne*                 at pcmcia? function ?         # NE2000-compatible Ethernet
343sm*                 at pcmcia? function ?         # Megahertz Ethernet
344mhzc*               at pcmcia? function ?         # Megahertz Ethernet/Modem combo cards
345com*                at mhzc?
346sm*                 at mhzc?
347
348# each hard drive from low target to high
349# will configure to the next available sd unit number
350sd*                 at scsibus? target ? lun ?    # scsi disks
351st*                 at scsibus? target ? lun ?    # scsi tapes
352cd*                 at scsibus? target ? lun ?    # scsi cds
353ch*                 at scsibus? target ? lun ?    # scsi autochangers
354ss*                 at scsibus? target ? lun ?    # scsi scanner
355uk*                 at scsibus? target ? lun ?    # scsi unknown
356
357msc0                at zbus0            # A2232 MSC multiport serial.
358mfc0                at zbus0            # MultiFaceCard I/O board
359mfcs0               at mfc0 unit 0                # MFC serial
360mfcs1               at mfc0 unit 1                # MFC serial
361#mfcp0              at mfc0 unit 0                # MFC parallel [not available yet]
362#mfc1               at zbus0            # MultiFaceCard 2nd I/O board
363#mfcs2              at mfc1 unit 0
364#mfcs3              at mfc1 unit 1
365#mfcp1              at mfc1 unit 0
366
367hyper*              at zbus?            # zbus HyperCom3/3+/4/4+
368#hyper*             at mainbus0                   # not yet: HyperCom1 + HyperCom3
369com*                at hyper? port ?    # Hypercom3/4 serial ports
370lpt*                at hyper? port ?    # Hypercom3+/4+ parallel port
371
372#options  IOBZCLOCK=22118400  # default, uncomment the next line
373#options  IOBZCLOCK=24000000  # if needed.
374
375iobl*               at zbus?            # zbus IOBlix
376com*                at iobl? port ?               # IOBlix serial ports
377lpt*                at iobl? port ?               # IOBlix parallel ports
378
379
380#
381# accept filters
382pseudo-device       accf_data           # "dataready" accept filter
383pseudo-device       accf_http           # "httpready" accept filter
384
385pseudo-device       loop                          # loopback network interface
386pseudo-device       sl                            # SLIP network interfaces
387pseudo-device       ppp                           # PPP network interfaces
388pseudo-device       pppoe                         # PPP over Ethernet (RFC 2516)
389pseudo-device       tun                           # network tunnel line discipline
390pseudo-device       tap                           # virtual Ethernet
391#pseudo-device      gre                           # generic L3 over IP tunnel
392pseudo-device       bpfilter            # Berkeley packet filter
393pseudo-device       carp                          # Common Address Redundancy Protocol
394pseudo-device       npf                           # NPF packet filter
395pseudo-device       gif                           # IPv[46] over IPv[46] tunnel (RFC1933)
396#pseudo-device      faith                         # IPv[46] tcp relay translation i/f
397pseudo-device       stf                           # 6to4 IPv6 over IPv4 encapsulation
398pseudo-device       vlan                          # IEEE 802.1q encapsulation
399pseudo-device       bridge                        # simple inter-network bridging
400pseudo-device       vether                        # Virtual Ethernet for bridge
401pseudo-device       agr                           # IEEE 802.3ad link aggregation
402pseudo-device       fss                           # file system snapshot device
403
404pseudo-device       view                4         # views (needed for grfcc)
405pseudo-device       pty                           # pseudo-terminals
406pseudo-device       clockctl            # user control of clock subsystem
407pseudo-device       drvctl                        # user control of drive subsystem
408
409#pseudo-device      wsfont                        # wsfont(4) dynamic font loading support
410#pseudo-device      wsmux                         # mouse & keyboard multiplexor
411
412pseudo-device       vnd                           # vnode pseudo-disks
413#options  VND_COMPRESSION               # compressed vnd(4)
414pseudo-device       ccd                           # concatenated disk devices
415#pseudo-device      cgd                           # cryptographic disk devices
416pseudo-device       raid                          # RAIDframe disk driver
417options   RAID_AUTOCONFIG               # auto-configuration of RAID components
418# Options to enable various other RAIDframe RAID types.
419# options           RF_INCLUDE_EVENODD=1
420# options           RF_INCLUDE_RAID5_RS=1
421# options           RF_INCLUDE_PARITYLOGGING=1
422# options           RF_INCLUDE_CHAINDECLUSTER=1
423# options           RF_INCLUDE_INTERDECLUSTER=1
424# options           RF_INCLUDE_PARITY_DECLUSTERING=1
425# options           RF_INCLUDE_PARITY_DECLUSTERING_DS=1
426
427#options  RND_COM                       # use "com" randomness as well (BROKEN)
428
429pseudo-device       ksyms                         # /dev/ksyms (kernel symbols)
430pseudo-device       swwdog                        # software watchdog timer -- swwdog(4)
431
432include "dev/veriexec.config"
433
434# Kernel root file system and dump configuration
435config              netbsd    root on ? type ?
436
437# Pull in optional local configuration - always at end
438cinclude  "arch/amigappc/conf/GENERIC.local"
439