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