1# $NetBSD: INSTALL,v 1.37 2002/09/18 02:44:08 lukem Exp $ 2# 3# from: NetBSD: GENERIC,v 1.84 1999/06/06 13:00:03 mrg Exp 4# 5# floppy install kernel. try to keep this in sync with GENERIC but 6# leave as much disabled as possible. 7 8include "arch/sparc/conf/std.sparc" 9 10#options INCLUDE_CONFIG_FILE # embed config file in kernel binary 11 12makeoptions COPTS="-Os" # Optimise for space. Implies -O2 13 14maxusers 32 15 16# Enable the hooks used for initializing the root memory-disk. 17options MEMORY_DISK_HOOKS 18options MEMORY_DISK_IS_ROOT # force root on memory disk 19options MEMORY_DISK_SERVER=0 # no userspace memory disk support 20## The miniroot size must be kept in sync manually with the size of 21## the `ramdisk' image (which is built in distrib/sparc/ramdisk). 22options MEMORY_DISK_ROOT_SIZE=1360 # size of memory disk, in blocks 23 24pseudo-device md 1 # memory disk device (ramdisk) 25 26## System kernel configuration. See options(4) for more detail. 27 28 29# Options for variants of the Sun SPARC architecure. 30# We currently support three architecture types; at least one is required. 31options SUN4 # sun4/100, sun4/200, sun4/300 32options SUN4C # sun4c - SS1, 1+, 2, ELC, SLC, IPC, IPX, etc. 33options SUN4M # sun4m - SS10, SS20, Classic, etc. 34 35options SUN4_MMU3L # 3-level MMU on sun4/400 36 37## System options specific to the sparc machine type 38 39# Blink the power LED on some machines to indicate the system load. 40#options BLINK 41 42## Use a faster console than the PROM's slow drawing routines. Not needed 43## for headless (no framebuffer) machines. 44#options RASTERCONSOLE # fast rasterop console 45#options FONT_GALLANT12x22 # the console font 46#options FONT_BOLD8x16 # a somewhat smaller font 47#options RASTERCONSOLE_FGCOL=WSCOL_BLACK 48#options RASTERCONSOLE_BGCOL=WSCOL_WHITE 49 50#### System options that are the same for all ports 51 52## Root device configuration: change the ?'s if you are going to use a 53## nonstandard root partition (other than where the kernel is booted from) 54## and/or nonstandard root type (not ffs or nfs). Normally this can be 55## automagically determined at boot time. 56 57config netbsd root on ? type ? 58 59## System call tracing (see ktrace(1)). 60#options KTRACE 61 62## Collect statistics on kernel malloc's and free's. This does have a 63## significant performance hit on slower machines, so it is intended for 64## diagnostic use only. 65#options KMEMSTATS 66 67## System V compatible IPC subsystem. (msgctl(2), semctl(2), and shmctl(2)) 68#options SYSVMSG # System V message queues 69#options SYSVSEM # System V semaphores 70#options SYSVSHM # System V shared memory 71#options SHMMAXPGS=1024 # 1024 pages is the default 72 73## Loadable kernel module support; still under development. 74#options LKM 75 76options USERCONF # userconf(4) support 77options PIPE_SOCKETPAIR # smaller, but slower pipe(2) 78options MALLOC_NOINLINE # Not inlining MALLOC saves memory 79 80## NFS boot options; tries DHCP/BOOTP then BOOTPARAM 81options NFS_BOOT_BOOTPARAM 82#options NFS_BOOT_BOOTP 83options NFS_BOOT_DHCP 84 85#### Debugging options 86 87## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at 88## serial console break or keyboard reset, where the PROM would normally 89## intercept. DDB_HISTORY_SIZE adds up/down arrow command history. 90#options DDB # kernel dynamic debugger 91#options DDB_HISTORY_SIZE=100 # enable history editing in DDB 92#options DDB_ONPANIC=1 # see also sysctl(8): `ddb.onpanic' 93 94## You may also use gdb, on another computer connected to this machine over 95## a serial port. Both KGDB_DEV and KGDB_DEVRATE should be specified; 96## KGDB_DEV is a dev_t encoded device number of the serial port to use. 97## (0xc01 = ttya, 0xc02 = ttyb.) 98#options KGDB # support for kernel gdb 99#options KGDB_DEV=0xc01 # kgdb device number (this is `ttyb') 100#options KGDB_DEVRATE=38400 # baud rate 101 102 103## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file), 104## such that gdb(1) can be used on a kernel coredump. 105 106#makeoptions DEBUG="-g" 107 108 109## Adds code to the kernel that does internal consistency checks, and will 110## cause the kernel to panic if corruption of internal data structures 111## is detected. 112#options DIAGNOSTIC # extra kernel sanity checking 113 114## Enable (possibly expensive) debugging code that may also display messages 115## on the system console 116#options DEBUG 117 118#options MIIVERBOSE # verbose PHY autoconfig messages 119 120## Make SCSI error messages more verbose when explaining their meanings. 121#options SCSIVERBOSE 122 123## `INSECURE' turns off the kernel security level (securelevel = 0 always). 124## This allows writing to /dev/mem, loading kernel modules while multi-user, 125## and other insecurities good only for development work. Do not use this 126## option on a production machine. 127options INSECURE 128 129## Allow non-root users to grab /dev/console with programs such as xconsole. 130## `xconsole' therefore does not need setuid root with this option enabled. 131#options UCONSOLE 132 133## `FDSCRIPTS' allows non-readable but executable scripts by providing a 134## pre-opened opaque file to the script interpreter. `SETUIDSCRIPTS', 135## which implies FDSCRIPTS, allows scripts to be set-user-id using the same 136## opaque file mechanism. Perl calls this "secure setuid scripts." 137 138#options FDSCRIPTS 139#options SETUIDSCRIPTS 140 141## Options for compatibility with previous releases foreign system binaries. 142## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up 143## additional user-level utilities or system configuration files. See 144## compat_sunos(8) and compat_svr4(8). 145 146#options COMPAT_43 # 4.3BSD system interfaces 147#options COMPAT_10 # NetBSD 1.0 binary compatibility 148#options COMPAT_11 # NetBSD 1.1 binary compatibility 149#options COMPAT_12 # NetBSD 1.2 binary compatibility 150#options COMPAT_13 # NetBSD 1.3 binary compatibility 151#options COMPAT_14 # NetBSD 1.4 binary compatibility 152#options COMPAT_SUNOS # SunOS 4.x binary compatibility 153#options COMPAT_SVR4 # SunOS 5.x binary compatibility 154#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. 155 156## File systems. You probably need at least one of FFS or NFS. 157file-system FFS # Berkeley Fast Filesystem 158file-system NFS # Sun NFS-compatible filesystem client 159#file-system KERNFS # kernel data-structure filesystem 160#file-system NULLFS # NULL layered filesystem 161file-system MFS # memory-based filesystem 162#file-system FDESC # user file descriptor filesystem 163#file-system UMAPFS # uid/gid remapping filesystem 164#file-system LFS # Log-based filesystem (still experimental) 165#file-system PORTAL # portal filesystem (still experimental) 166#file-system PROCFS # /proc 167file-system CD9660 # ISO 9660 + Rock Ridge file system 168#file-system UNION # union file system 169#file-system MSDOSFS # MS-DOS FAT filesystem(s). 170 171## File system options 172#options NFSSERVER # Sun NFS-compatible filesystem server 173#options QUOTA # FFS quotas 174#options FFS_EI # FFS Endian Independent support 175#options NFS_V2_ONLY # Exclude NFS3 and NQNFS code to save space 176options VNODE_OP_NOINLINE # Not inlining vnode op calls saves mem 177 178## Network protocol support. In most environments, INET is required. 179options INET # IP (Internet Protocol) v4 180#options GATEWAY # packet forwarding ("router switch") 181#options MROUTING # packet forwarding of multicast packets 182#options DIRECTED_BROADCAST # allow broadcasts through routers 183#options NS # Xerox NS networking 184#options NSIP # Xerox NS tunneling over IP 185#options ISO,TPIP # OSI networking 186#options EON # OSI tunneling over IP 187#options CCITT,LLC,HDLC # X.25 packet switched protocol 188#options NETATALK # AppleTalk (over Ethernet) protocol 189#options NTP # Network Time Protocol in-kernel support 190#options PPS_SYNC # Add serial line synchronization for NTP 191#options PFIL_HOOKS # Add pfil(9) hooks, intended for custom LKMs. 192#options IPFILTER_LOG # Add ipmon(8) logging for ipfilter device 193#options PPP_BSDCOMP # Add BSD compression to ppp device 194#options PPP_DEFLATE # Add deflate (libz) compression to ppp device 195#options PPP_FILTER # Add active filters for ppp (via bpf) 196#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 197 198 199#### Main bus and CPU .. all systems. 200mainbus0 at root 201cpu0 at mainbus0 202 203#### Bus types found on SPARC systems. 204 205sbus0 at mainbus0 # sun4c 206obio0 at mainbus0 # sun4 and sun4m 207sparcvme0 at mainbus0 # sun4 208iommu0 at mainbus0 # sun4m 209sbus0 at iommu0 # sun4m 210sparcvme0 at iommu0 # sun4m 211vme0 at sparcvme0 # mi VME attachment 212 213## SBus expander box 214xbox* at sbus? slot ? offset ? 215sbus* at xbox? 216 217## SBus to PCMCIA bridge 218# Currently enabling nell* with audioamd* causes panic at attach 219#nell* at sbus? slot ? offset ? # PCMCIA bridge 220#pcmcia* at nell? 221 222#### Standard system devices -- all required for a given architecture 223 224## Auxiliary system registers on sun4c and sun4m 225auxreg0 at mainbus0 # sun4c 226auxreg0 at obio0 # sun4m 227 228## Power status and control register on Sun4m systems 229power0 at obio0 230 231## Mostek clock found on 4/300, sun4c, and sun4m systems. 232## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems. 233clock0 at mainbus0 # sun4c 234clock0 at obio0 # sun4m 235clock0 at obio0 addr 0xf2000000 # sun4/300 236 237## Intersil clock found on 4/100 and 4/200 systems. 238oclock0 at obio0 addr 0xf3000000 # sun4/200 239oclock0 at obio0 addr 0x03000000 # sun4/100 240 241## Memory error registers. 242memreg0 at mainbus0 # sun4c 243memreg0 at obio0 # sun4m 244memreg0 at obio0 addr 0xf4000000 # sun4/200 and sun4/300 245memreg0 at obio0 addr 0x04000000 # sun4/100 246 247## ECC memory control 248eccmemctl0 at mainbus0 # sun4m 249 250## Timer chip found on 4/300, sun4c, and sun4m systems. 251timer0 at mainbus0 # sun4c 252timer0 at obio0 # sun4m 253timer0 at obio0 addr 0xef000000 # sun4/300 254 255## EEPROM found on 4/100 and 4/200 systems. Note that the 4/300 256## doesn't use this driver; the `EEPROM' is in the NVRAM on the 257## Mostek clock chip on 4/300 systems. 258eeprom0 at obio0 addr 0xf2000000 # sun4/200 259eeprom0 at obio0 addr 0x02000000 # sun4/100 260 261 262#### Serial port configuration 263 264## Zilog 8530 serial chips. Each has two-channels. 265## zs0 is ttya and ttyb. zs1 is the keyboard and mouse. 266zs0 at mainbus0 # sun4c 267zs0 at obio0 # sun4m 268zs0 at obio0 addr 0xf1000000 level 12 flags 0x103 # sun4/200 and sun4/300 269zs0 at obio0 addr 0x01000000 level 12 flags 0x103 # sun4/100 270zstty0 at zs0 channel 0 # ttya 271zstty1 at zs0 channel 1 # ttyb 272 273zs1 at mainbus0 # sun4c 274zs1 at obio0 # sun4m 275zs1 at obio0 addr 0xf0000000 level 12 flags 0x103 # sun4/200 and sun4/300 276zs1 at obio0 addr 0x00000000 level 12 flags 0x103 # sun4/100 277kbd0 at zs1 channel 0 # keyboard 278ms0 at zs1 channel 1 # mouse 279 280zs2 at obio0 addr 0xe0000000 level 12 flags 0x103 # sun4/300 281zstty2 at zs2 channel 0 # ttyc 282zstty3 at zs2 channel 1 # ttyd 283 284 285## Magma Serial/Parallel driver 286#magma* at sbus? slot ? offset ? 287#mtty* at magma? 288#mbpp* at magma? 289 290## PCMCIA serial interfaces 291#com* at pcmcia? 292#pcmcom* at pcmcia? 293#com* at pcmcom? 294 295#### Disk controllers and disks 296 297# 298 299## The following flags may be set for the NCR53c94 based esp driver: 300## bits 0-7: disable disconnect/reselect for the corresponding target 301## bits 8-15: disable synchronous negotiation for target [bit-8] 302 303## sun4/300, sun4c, sun4m on-board SCSI, and FSBE/S SBus SCSI cards. 304## Both `dma' and `esp' are needed in all cases. 305## Two kinds of additional SBus SCSI interfaces are available. One uses 306## "esp at sbus" like the sun4c on-board; the other uses "esp at dma". 307 308## sun4/300 SCSI - an NCR53c94 or equivalent behind 309## an LSI Logic DMA controller 310 311dma0 at obio0 addr 0xfa001000 level 4 # sun4/300 312esp0 at obio0 addr 0xfa000000 level 4 flags 0x0000 # sun4/300 313 314dma0 at sbus0 slot ? offset ? # sun4c/sun4m 315esp0 at sbus0 slot ? offset ? flags 0x0000 # sun4c 316esp0 at dma0 flags 0x0000 # sun4m 317 318# FSBE/S SCSI 319dma* at sbus? slot ? offset ? # SBus 320esp* at sbus? slot ? offset ? flags 0x0000 # SBus (older proms) 321esp* at dma? flags 0x0000 # SBus 322 323scsibus* at esp? 324 325## Qlogic ISP SBus SCSI Card 326isp* at sbus? slot ? offset ? 327scsibus* at isp? 328 329## NCR5380-based "Sun SCSI 3" VME SCSI controller. 330## This driver has several flags which may be enabled by OR'ing 331## the values and using the "flags" directive. 332## Valid flags are: 333## 334## 0x01 Use DMA (may be polled) 335## 0x02 Use DMA completion interrupts 336## 0x04 Allow disconnect/reselect 337## 338## E.g. the following would enable DMA, interrupts, and reselect: 339## si0 at vme0 addr 0x200000 irq 3 vect 0x40 flags 0x07 340## 341## By default, DMA is enabled in the driver. 342 343si0 at vme0 addr 0x200000 irq 2 vect 0x40 344scsibus* at si? 345 346## NCR5380-based "SCSI Weird" on-board SCSI interface found 347## on sun4/100 systems. The flags are the same as the "si" 348## controller. Note, while DMA is enabled by default, only 349## polled DMA works at this time, and reselects do not work 350## on this particular controller. 351 352sw0 at obio0 addr 0x0a000000 level 3 353scsibus* at sw? 354 355## PCMCIA SCSI controllers 356#aic* at pcmcia? 357#scsibus* at aic? 358 359 360## These entries find devices on all SCSI busses and assign 361## unit numbers dynamically. 362sd* at scsibus? target ? lun ? # SCSI disks 363st* at scsibus? target ? lun ? # SCSI tapes 364cd* at scsibus? target ? lun ? # SCSI CD-ROMs 365#ch* at scsibus? target ? lun ? # SCSI changer devices 366#ss* at scsibus? target ? lun ? # SCSI scanners 367#uk* at scsibus? target ? lun ? # unknown SCSI 368 369 370## Xylogics 753 or 7053 VME SMD disk controllers and disks, found 371## on sun4 systems. 372xdc0 at vme0 addr 0xee80 irq 3 vect 0x44 373xdc1 at vme0 addr 0xee90 irq 3 vect 0x45 374xdc2 at vme0 addr 0xeea0 irq 3 vect 0x46 375xdc3 at vme0 addr 0xeeb0 irq 3 vect 0x47 376xd* at xdc? drive ? 377 378## Xylogics 451 or 451 VME SMD disk controllers and disks, found 379## on sun4 systems. 380xyc0 at vme0 addr 0xee40 irq 3 vect 0x48 381xyc1 at vme0 addr 0xee48 irq 3 vect 0x49 382xy* at xyc? drive ? 383 384 385## Floppy controller and drive found on SPARCstations. 386 387fdc0 at mainbus0 # sun4c controller 388fdc0 at obio0 # sun4m controller 389fd* at fdc0 # the drive itself 390 391## PCMCIA IDE controllers 392#wdc* at pcmcia? 393#wd* at wdc? 394 395## A disk-like interface to files. Can be used to create floppy, CD, 396## miniroot images, etc. 397 398#pseudo-device vnd 4 399 400## Concatenated and striped disks; with this, you can create a software-based 401## disk array similar to a "RAID 0" setup. See ccd(4). 402 403#pseudo-device ccd 4 404 405## RAIDframe disk driver: software RAID driver. See raid(4). 406 407#pseudo-device raid 4 408 409## Memory disk device, used on boot floppies with compressed 410## kernel-plus-root-disk images. 411 412#pseudo-device md 1 413 414 415#### Network interfaces 416 417## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue 418## Three flavors of additional SBus ethernets are available. One attaches 419## directly like the sun4c on-board, one uses the ledma device like the 420## sun4m on-board, and one uses the lebuffer device. 421 422le0 at obio0 addr 0xf9000000 level 6 # sun4/300 423le0 at sbus0 slot ? offset ? # sun4c on-board 424ledma0 at sbus0 slot ? offset ? # sun4m on-board 425le0 at ledma0 # sun4m on-board 426le* at sbus? slot ? offset ? # SBus 427ledma* at sbus? slot ? offset ? # SBus 428le* at ledma? # SBus 429lebuffer0 at sbus? slot ? offset ? # SBus 430le0 at lebuffer? # SBus 431lebuffer* at sbus? slot ? offset ? # SBus 432le* at lebuffer? # SBus 433 434 435## sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board 436## or on a Multibus/VME card. 437ie0 at obio0 addr 0xf6000000 level 6 # sun4/200 on-board 438ie0 at obio0 addr 0x06000000 level 6 # sun4/100 on-board 439ie1 at vme0 addr 0xe88000 irq 3 vect 0x75 # VME 440ie2 at vme0 addr 0x31ff02 irq 3 vect 0x76 # VME 441ie3 at vme0 addr 0x35ff02 irq 3 vect 0x77 # VME 442ie4 at vme0 addr 0x2dff02 irq 3 vect 0x7c # VME 443 444## qec/be, qec/hme 445qec* at sbus? slot ? offset ? 446be* at qec? 447qe* at qec? 448 449# midway ATM 450en0 at sbus? slot ? offset ? 451 452# PCMCIA ethernet devices 453#ep* at pcmcia? 454#mbe* at pcmcia? 455#ne* at pcmcia? 456#sm* at pcmcia? 457 458# MII/PHY support 459#exphy* at mii? phy ? # 3Com internal PHYs 460#icsphy* at mii? phy ? # Integrated Circuit Systems ICS189x 461#inphy* at mii? phy ? # Intel 82555 PHYs 462#lxtphy* at mii? phy ? # Level One LXT-970 PHYs 463#nsphy* at mii? phy ? # NS83840 PHYs 464#qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs 465#sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs 466#tlphy* at mii? phy ? # ThunderLAN PHYs 467#ukphy* at mii? phy ? # generic unknown PHYs 468 469## Loopback network interface; required 470pseudo-device loop 471 472## SLIP and CSLIP interfaces, for IP over a serial line. 473#pseudo-device sl 2 474 475## PPP, the successor to SLIP. See pppd(8). 476#pseudo-device ppp 2 477 478## Starmode Radio IP, a special hardware network device. 479#pseudo-device strip 1 480 481## Network "tunnel" device, allowing protocol stacks to run in the userland. 482## This is used by the third-party user-mode "ppp" program, and others. 483#pseudo-device tun 4 484 485## Generic L3 over IP tunnel 486#pseudo-device gre 2 # generic L3 over IP tunnel 487 488## Berkeley Packet Filter, required to run RARPD. A generic C-language 489## interface that allows selective examining of incoming packets. 490#pseudo-device bpfilter 8 491 492## IP Filter, used in firewall and NAT applications. See ipnat(8) for 493## one example of the use of the IP Filter. 494#pseudo-device ipfilter 495 496 497#### Audio and video devices 498 499## /dev/audio support (`audioamd' plus `audio') 500## 501#audioamd0 at mainbus0 # sun4c 502#audioamd0 at obio0 # sun4m 503#audioamd0 at sbus0 slot ? offset ? # sun4m 504#audio* at audioamd0 505 506#audiocs0 at sbus0 slot ? offset ? # SUNW,CS4231 507#audio* at audiocs0 508 509 510## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m 511## systems. If your sun4 system has a cgfour installed in the P4 slot, 512## the P4 entries for "bwtwo" will attach to the overlay plane of the 513## "cgfour". 514 515bwtwo0 at sbus0 slot ? offset ? # sun4c and sun4m 516bwtwo* at sbus? slot ? offset ? # 517#bwtwo0 at obio0 addr 0xfd000000 level 4 # sun4/200 518#bwtwo0 at obio0 addr 0xfb300000 level 4 # sun4/300 in P4 slot 519#bwtwo0 at obio0 addr 0x0b300000 level 4 # sun4/100 in P4 slot 520 521## Sun "cgtwo" VME color framebuffer 522#cgtwo0 at vme0 addr 0x400000 irq ? vect 0xa8 523 524## Sun "cgthree" Sbus color framebuffer 525cgthree0 at sbus? slot ? offset ? 526cgthree* at sbus? slot ? offset ? 527#cgthree0 at obio? slot ? offset ? # sun4m 528 529## Sun "cgfour" color framebuffer with overlay plane. See above comment 530## regarding overlay plane. 531#cgfour0 at obio0 addr 0xfb300000 level 4 # sun4/300 P4 532#cgfour0 at obio0 addr 0x0b300000 level 4 # sun4/100 P4 533 534## Sun "cgsix" accelerated color framebuffer. 535cgsix0 at sbus? slot ? offset ? 536cgsix* at sbus? slot ? offset ? 537#cgsix0 at obio0 addr 0xfb000000 level 4 # sun4/300 P4 538#cgsix0 at obio0 addr 0x0b000000 level 4 # sun4/100 P4 539 540## Sun "cgeight" 24-bit framebuffer 541#cgeight0 at obio0 addr 0xfb300000 level 4 # sun4/300 P4 542#cgeight0 at obio0 addr 0x0b300000 level 4 # sun4/100 P4 543 544## Sun "tcx" accelerated color framebuffer. 545tcx0 at sbus? slot ? offset ? 546tcx* at sbus? slot ? offset ? 547 548# Sun "cgfourteen" accelerated 24-bit framebuffer. 549cgfourteen0 at obio0 # sun4m 550 551 552#### Other device configuration 553 554## Pseudo ttys, required for network logins and programs like screen. 555 556pseudo-device pty 2 # pseudo-terminals (Sysinst needs two) 557 558## Random device, used to implement /dev/random (a source of random noise), 559## and generate randomness for some kernel formulae. 560 561#pseudo-device rnd 562