1# 2# $NetBSD: GENERIC.in,v 1.125 2022/12/22 11:05:55 nat Exp $ 3# 4# Generic atari 5# 6# Note: We have size targets for gzipped kernels: 7# - ATARITT and FALCON - 1.44M floppy 8# - SMALL030 - 720K (or worst case 800K) floppy 9 10#if defined(TT030_KERNEL) || defined(FALCON_KERNEL) 11include "arch/atari/conf/std.atari" 12#elif defined (HADES_KERNEL) 13include "arch/atari/conf/std.hades" 14#elif defined (MILAN_KERNEL) 15include "arch/atari/conf/std.milan" 16#endif /* TT030_KERNEL / FALCON_KERNEL / HADES_KERNEL / MILAN_KERNEL */ 17 18#if !defined(SMALL030_KERNEL) 19options INCLUDE_CONFIG_FILE # embed config file in kernel binary 20#endif /* !SMALL030_KERNEL */ 21 22#if !defined(SMALL030_KERNEL) 23makeoptions COPTS="-O2 -fno-reorder-blocks -fno-unwind-tables -fno-omit-frame-pointer" \ 24# See share/mk/sys.mk. -fno-omit-frame-pointer is necessary for backtraces \ 25in DDB. 26#else 27makeoptions COPTS="-Os -fno-unwind-tables" # optimize for space 28#endif /* !SMALL030_KERNEL */ 29 30#if defined(SMALL030_KERNEL) || \ 31 (!defined(TT030_KERNEL) && !defined(HADES_KERNEL) && !defined(MILAN_KERNEL)) 32#define NO_PHYS_NETWORK 1 33#endif /* SMALL030_KERNEL || ... */ 34 35# 36# Add support for about 16 users. This variable is used to size 37# various kernel structures. 38# 39maxusers 16 40 41options HZ=64 # Set the clock-rate (48/64/96) 42 43# Standard system options 44options INSECURE # disable kernel security levels 45#options NTP # NTP phase/frequency locked loop 46 47# Alternate buffer queue strategies for better responsiveness under high 48# disk I/O load. 49#options BUFQ_READPRIO 50#options BUFQ_PRIOCSCAN 51 52# 53# (Co)processors this kernel should support 54# 55#if defined(TT030_KERNEL) || defined(FALCON_KERNEL) 56options M68030 # support for 030 57#endif /* TT030_KERNEL || FALCON_KERNEL */ 58#if defined(FALCON_KERNEL) 59options FPU_EMULATE # Support for MC68881/MC68882 emulator 60#endif /* FALCON_KERNEL */ 61#if (defined(FALCON_KERNEL) && !defined(SMALL030_KERNEL)) || \ 62 defined(HADES_KERNEL) || defined(MILAN_KERNEL) 63options M68040 # support for 040 64options M68060 # support for 060 65options FPSP # 68040 Floatingpoint support 66options M060SP # MC68060 software support (Required for 060) 67#endif /* ! FALCON_KERNEL & ! SMALL030_KERNEL ... */ 68 69# 70# Networking options 71# 72options INET # IP + ICMP + TCP + UDP 73 74#if !defined(SMALL030_KERNEL) 75options INET6 # IPV6 76#options IPSEC # IP security 77#options IPSEC_DEBUG # debug for IP security 78#options GATEWAY # packet forwarding 79#options MROUTING # IP multicast routing 80#options PIM # Protocol Independent Multicast 81#if !defined(NO_PHYS_NETWORK) 82#options NETATALK # AppleTalk networking protocols 83#endif /* NO_PHYS_NETWORK */ 84 85options PPP_BSDCOMP # BSD-Compress compression support for PPP 86options PPP_DEFLATE # Deflate compression support for PPP 87options PPP_FILTER # Active filter support for PPP (requires bpf) 88 89#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 90 91#options ALTQ # Manipulate network interfaces' output queues 92#options ALTQ_BLUE # Stochastic Fair Blue 93#options ALTQ_CBQ # Class-Based Queueing 94#options ALTQ_CDNR # Diffserv Traffic Conditioner 95#options ALTQ_FIFOQ # First-In First-Out Queue 96#options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box) 97#options ALTQ_HFSC # Hierarchical Fair Service Curve 98#options ALTQ_LOCALQ # Local queueing discipline 99#options ALTQ_PRIQ # Priority Queueing 100#options ALTQ_RED # Random Early Detection 101#options ALTQ_RIO # RED with IN/OUT 102#options ALTQ_WFQ # Weighted Fair Queueing 103#endif /* !SMALL030_KERNEL */ 104 105# File systems 106file-system FFS # Berkeley fast file system 107file-system MFS # Memory based filesystem 108file-system MSDOSFS # MSDOS filesystem 109file-system CD9660 # ISO 9660 filesystem with Rock Ridge 110#file-system UDF # experimental - OSTA UDF CD/DVD file-system 111 112#if !defined(SMALL030_KERNEL) 113file-system KERNFS # Kernel parameter filesystem 114file-system NFS # Network File System client side code 115file-system PROCFS # Process filesystem 116#file-system FDESC # /dev/fd 117file-system NULLFS # Loopback filesystem 118#file-system OVERLAY # overlay filesystem 119#file-system UNION # union file system 120#file-system UMAPFS # null file system (with uid & gid remapping) 121#file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs) 122#file-system EXT2FS # second extended file system (linux) 123#file-system LFS # log-structured file system 124file-system PTYFS # /dev/pts/N support 125file-system TMPFS # Efficient memory file-system 126#endif /* !SMALL030_KERNEL */ 127 128# File system options 129options WAPBL # File system journaling support 130options FFS_NO_SNAPSHOT # No FFS snapshot support 131#if !defined(SMALL030_KERNEL) 132#options FFS_EI # FFS Endian Independent support 133#options QUOTA # legacy UFS quotas 134#options QUOTA2 # new, in-filesystem UFS quotas 135#options UFS_DIRHASH # UFS Large Directory Hashing 136#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and 137 # immutable) behave as system flags. 138options NFSSERVER # Network File System server 139#endif /* !SMALL030_KERNEL */ 140 141# 142# Misc. debugging options 143# 144options PANICWAIT # Require keystroke to dump/reboot 145#if !defined(SMALL030_KERNEL) 146options DDB # Kernel debugger 147options DDB_HISTORY_SIZE=100 # Enable history editing in DDB 148#options DEBUG # expensive debugging checks/support 149#endif /* !SMALL030_KERNEL */ 150 151# 152# Compatibility options for various existing systems 153# 154include "conf/compat_netbsd10.config" 155#if defined(SMALL030_KERNEL) 156no options COMPAT_43 # 4.3 BSD compatible system calls 157no options COMPAT_10 # NetBSD 1.0, 158no options COMPAT_11 # NetBSD 1.1, 159no options COMPAT_12 # NetBSD 1.2, 160no options COMPAT_13 # NetBSD 1.3, 161no options COMPAT_14 # NetBSD 1.4, 162no options COMPAT_15 # NetBSD 1.5, 163#endif /* !SMALL030_KERNEL */ 164#if !defined(SMALL030_KERNEL) 165#options COMPAT_SUNOS # Support to run Sun-3 executables 166#options COMPAT_LINUX # Support to run Linux/m68k executables 167#options COMPAT_OSSAUDIO # Support to run Linux/m68k executables 168options COMPAT_AOUT_M68K # Compatibility to a.out executables 169options EXEC_AOUT # a.out format executables 170#endif /* !SMALL030_KERNEL */ 171 172#if !defined(SMALL030_KERNEL) 173# 174# Support for System V IPC facilities. 175# 176options SYSVSHM # System V shared memory 177options SYSVMSG # System V messages 178options SYSVSEM # System V semaphores 179#endif /* !SMALL030_KERNEL */ 180 181#if !defined(SMALL030_KERNEL) 182# 183# Support for various kernel options 184# 185options KTRACE # Add kernel tracing system call 186#options DIAGNOSTIC # Add additional error checking code 187options USERCONF # userconf(4) support 188#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 189options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 190options MODULAR # new style module(7) framework 191#else /* SMALL030_KERNEL */ 192options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 193#endif /* !SMALL030_KERNEL */ 194 195# These options enable verbose messages for several subsystems. 196# Warning, these may compile large string tables into the kernel! 197#if !defined(SMALL030_KERNEL) 198#options SCSIVERBOSE # human readable SCSI error messages 199#endif /* !SMALL030_KERNEL */ 200#if defined(HADES_KERNEL) || defined(MILAN_KERNEL) 201#options MIIVERBOSE # verbose PHY autoconfig messages 202#options PCIVERBOSE # verbose PCI device autoconfig messages 203#options PCI_CONFIG_DUMP # verbosely dump PCI config space 204#endif 205 206# 207# Atari specific options 208# 209#options KFONT_8x8 # Use 8x8 font instead of 8x16 210options ST_POOL_SIZE=56 # for SCSI, FDC, and Xserver 211#if defined(TT030_KERNEL) || defined(HADES_KERNEL) 212options TT_SCSI # SCSI-support for TT 213options TT_VIDEO # Graphics support for TT 214#options ET4000_HAS_2MB_MEM # et4000 with 2 MB video memory 215#endif 216#if defined(FALCON_KERNEL) 217options FALCON_SCSI # SCSI-support for Falcon 218options FALCON_VIDEO # Graphics support for FALCON 219#endif /* FALCON_KERNEL */ 220options MEMORY_DISK_HOOKS # Boot RAM-disk 221options DISKLABEL_NBDA # NetBSD disklabels (required) 222options DISKLABEL_AHDI # NetBSD/AHDI disklabels 223#if !defined(SMALL030_KERNEL) 224#if !defined(FALCON_KERNEL) 225#options SERCONSOLE # modem1 console support, breaks Falcon 226#endif /* !FALCON_KERNEL */ 227options RELOC_KERNEL # TT/Falcon: relocate kernel to TT-RAM 228options MSGBUFSIZE=32768 # size of kernel msg. buffer 229#options STATCLOCK # Separate {stat,prof}clock 230#endif /* !SMALL030_KERNEL */ 231 232#if !defined(SMALL030_KERNEL) 233# Try linked commands on all targets 234options TRY_SCSI_LINKED_COMMANDS=0x7f 235#endif /* !SMALL030_KERNEL */ 236 237# 238# Build one kernel that can boot from any disk. 239# 240config netbsd root on ? type ? 241 242pseudo-device sl # Slip 243#if !defined(SMALL030_KERNEL) 244pseudo-device ppp # ppp 245#endif /* !SMALL030_KERNEL */ 246#if !defined(NO_PHYS_NETWORK) 247#pseudo-device pppoe # PPP over Ethernet (RFC 2516) 248#endif /* NO_PHYS_NETWORK */ 249pseudo-device pty # pseudo-terminals 250pseudo-device loop # Loopback network 251#options VND_COMPRESSION # compressed vnd(4) 252pseudo-device md # Boot memory disk 253#pseudo-device putter # for puffs and pud 254 255#if !defined(SMALL030_KERNEL) 256pseudo-device vnd # 3 pseudo disks (see vnconfig) 257pseudo-device bpfilter # berkeley packet filters 258#pseudo-device carp # Common Address Redundancy Protocol 259#pseudo-device tun # network tunnel 260#pseudo-device tap # virtual Ethernet 261#pseudo-device gre # generic L3 over IP tunnel 262pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) 263#pseudo-device faith # IPv[46] tcp relay translation i/f 264pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation 265#if !defined(NO_PHYS_NETWORK) 266#pseudo-device vlan # IEEE 802.1q encapsulation 267#pseudo-device bridge # simple inter-network bridging 268#pseudo-device vether # Virtual Ethernet for bridge 269#pseudo-device agr # IEEE 802.3ad link aggregation 270#endif /* NO_PHYS_NETWORK */ 271#pseudo-device ccd # concatenating disk driver 272#pseudo-device cgd # cryptographic disk driver 273#pseudo-device raid # RAIDframe disk driver 274#options RAID_AUTOCONFIG # auto-configuration of RAID components 275# Options to enable various other RAIDframe RAID types. 276# options RF_INCLUDE_EVENODD=1 277# options RF_INCLUDE_RAID5_RS=1 278# options RF_INCLUDE_PARITYLOGGING=1 279# options RF_INCLUDE_CHAINDECLUSTER=1 280# options RF_INCLUDE_INTERDECLUSTER=1 281# options RF_INCLUDE_PARITY_DECLUSTERING=1 282# options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 283#pseudo-device fss # file system snapshot device 284#pseudo-device npf # NPF packet filter 285pseudo-device clockctl # user control of clock subsystem 286pseudo-device drvctl # user control of drive subsystem 287pseudo-device ksyms # /dev/ksyms 288#endif /* !SMALL030_KERNEL */ 289 290#if defined(HADES_KERNEL) || defined(MILAN_KERNEL) 291 292# MII/PHY support 293exphy* at mii? phy ? # 3Com internal PHYs 294inphy* at mii? phy ? # Intel 82555 PHYs 295iophy* at mii? phy ? # Intel 82553 PHYs 296ukphy* at mii? phy ? # generic unknown PHYs 297 298# PCI network interfaces 299# If unsure, check the port-atari page for tested cards. 300ep* at pci? dev ? function ? # 3Com 3c59x 301fxp* at pci? dev ? function ? # Intel EtherExpress PRO 10+/100B 302 303 304# 305# This is the only tested audio card at the moment. 306# 307eso* at pci? dev ? function ? # ESS Solo-1 PCI AudioDrive 308audio* at eso? 309 310spkr* at audio? # PC speaker (synthesized) 311 312#endif /* defined(HADES_KERNEL) || defined(MILAN_KERNEL) */ 313 314# 315# Hardware options for HADES and MILAN are in their machine type specific files 316# 317 318#if defined(TT030_KERNEL) || defined(FALCON_KERNEL) 319 320pseudo-device view 4 # View (graphics mapping) 321#if !defined (SMALL030_KERNEL) 322pseudo-device mouse 1 # mouse 323#endif /* ! SMALL030_KERNEL */ 324 325# 326# The following sections describe various hardware options. 327# 328ncrscsi0 at mainbus0 # NCR5380 SCSI driver 329zs0 at mainbus0 # Serial support through 8530 330grfbus0 at mainbus0 # bitmapped display's 331grfcc0 at grfbus0 # graphics driver 332ite0 at grfcc0 # console 333nvr0 at mainbus0 # nvram driver 334 335#if !defined(SMALL030_KERNEL) 336grfcc1 at grfbus0 # 2nd graphics driver 337ite1 at grfcc1 # 2nd tty 338grfcc2 at grfbus0 # 3rd graphics driver 339ite2 at grfcc2 # 3rd tty 340lp0 at mainbus0 # centronics printer 341ser0 at mainbus0 # UART on first 68901 (ttyB0) 342ne0 at mainbus0 # EtherNEC on Atari ROM cartridge slot 343 344#if defined(TT030_KERNEL) 345avmebus0 at mainbus0 # VME bus 346vme0 at avmebus0 347le0 at vme0 irq 5 # Lance ethernet (Riebl/PAM). 348le0 at vme0 irq 4 # Lance ethernet (BVME410). 349we0 at vme0 irq 4 # SMC Elite Ultra with SMC_TT VME-ISA bridge 350et4k0 at vme0 # Crazy Dots II 351#endif /* TT030_KERNEL */ 352#endif /* SMALL030_KERNEL */ 353 354#if defined(FALCON_KERNEL) 355wdc0 at mainbus0 # IDE-bus 356atabus* at wdc? channel ? 357wd* at atabus? drive ? 358 359 # ATAPI bus support 360atapibus* at atabus? 361 362# ATAPI devices 363cd* at atapibus? drive ? # ATAPI CD-ROM drives 364#endif /* FALCON_KERNEL */ 365 366# SCSI devices 367scsibus* at scsi? # SCSI bus 368sd* at scsibus? target ? lun ? # SCSI disk drives 369cd* at scsibus? target ? lun ? # SCSI CD-ROM drives 370#if !defined (SMALL030_KERNEL) 371#st* at scsibus? target ? lun ? # SCSI tape drives 372#ch* at scsibus? target ? lun ? # SCSI autochangers 373#ss* at scsibus? target ? lun ? # SCSI scanners 374dse* at scsibus? target ? lun ? # SCSI ethernet (Dayna) 375se* at scsibus? target ? lun ? # SCSI ethernet 376#uk* at scsibus? target ? lun ? # SCSI unknown 377#endif /* ! SMALL030_KERNEL */ 378 379#endif /* TT030_KERNEL || FALCON_KERNEL */ 380