1# $NetBSD: INSTALL,v 1.62 2008/07/31 07:41:07 simonb 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=1536 # 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) 78#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel 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## `FDSCRIPTS' allows non-readable but executable scripts by providing a 130## pre-opened opaque file to the script interpreter. `SETUIDSCRIPTS', 131## which implies FDSCRIPTS, allows scripts to be set-user-id using the same 132## opaque file mechanism. Perl calls this "secure setuid scripts." 133 134#options FDSCRIPTS 135#options SETUIDSCRIPTS 136 137## Options for compatibility with previous releases foreign system binaries. 138## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up 139## additional user-level utilities or system configuration files. See 140## compat_sunos(8) and compat_svr4(8). 141 142#options COMPAT_43 # 4.3BSD system interfaces 143#options COMPAT_10 # NetBSD 1.0 binary compatibility 144#options COMPAT_11 # NetBSD 1.1 binary compatibility 145#options COMPAT_12 # NetBSD 1.2 binary compatibility 146#options COMPAT_13 # NetBSD 1.3 binary compatibility 147#options COMPAT_14 # NetBSD 1.4 binary compatibility 148#options COMPAT_15 # NetBSD 1.5 binary compatibility 149#options COMPAT_16 # NetBSD 1.6 binary compatibility 150#options COMPAT_20 # NetBSD 2.0 binary compatibility 151#options COMPAT_30 # NetBSD 3.0 binary compatibility 152#options COMPAT_40 # NetBSD 4.0 binary compatibility 153#options COMPAT_SUNOS # SunOS 4.x binary compatibility 154#options COMPAT_SVR4 # SunOS 5.x binary compatibility 155#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. 156options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. 157 158## File systems. You probably need at least one of FFS or NFS. 159file-system FFS # Berkeley Fast Filesystem 160file-system NFS # Sun NFS-compatible filesystem client 161#file-system KERNFS # kernel data-structure filesystem 162#file-system NULLFS # NULL layered filesystem 163file-system MFS # memory-based filesystem 164#file-system FDESC # user file descriptor filesystem 165#file-system UMAPFS # uid/gid remapping filesystem 166#file-system LFS # Log-based filesystem (still experimental) 167#file-system PORTAL # portal filesystem (still experimental) 168#file-system PROCFS # /proc 169file-system CD9660 # ISO 9660 + Rock Ridge file system 170#file-system UNION # union file system 171#file-system MSDOSFS # MS-DOS FAT filesystem(s). 172#file-system PTYFS # /dev/pts/N support 173 174## File system options 175#options NFSSERVER # Sun NFS-compatible filesystem server 176#options QUOTA # FFS quotas 177#options FFS_EI # FFS Endian Independent support 178#options NFS_V2_ONLY # Exclude NFS3 code to save space 179options FFS_NO_SNAPSHOT # No FFS snapshot support 180options WAPBL # File system journaling support - Experimental 181 182## Network protocol support. In most environments, INET is required. 183options INET # IP (Internet Protocol) v4 184#options GATEWAY # packet forwarding ("router switch") 185#options MROUTING # packet forwarding of multicast packets 186#options PIM # Protocol Independent Multicast 187#options DIRECTED_BROADCAST # allow broadcasts through routers 188#options ISO,TPIP # OSI networking 189#options EON # OSI tunneling over IP 190#options NETATALK # AppleTalk (over Ethernet) protocol 191#options NTP # Network Time Protocol in-kernel support 192#options PPS_SYNC # Add serial line synchronization for NTP 193#options PFIL_HOOKS # Add pfil(9) hooks, intended for custom LKMs. 194#options IPFILTER_LOG # Add ipmon(8) logging for ipfilter device 195#options IPFILTER_LOOKUP # ippool(8) support 196#options PPP_BSDCOMP # Add BSD compression to ppp device 197#options PPP_DEFLATE # Add deflate (libz) compression to ppp device 198#options PPP_FILTER # Add active filters for ppp (via bpf) 199#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG 200 201 202#### Main bus and CPU .. all systems. 203mainbus0 at root 204cpu0 at mainbus0 205 206#### Bus types found on SPARC systems. 207 208sbus0 at mainbus0 # sun4c 209obio0 at mainbus0 # sun4 and sun4m 210sparcvme0 at mainbus0 # sun4 211iommu0 at mainbus0 # sun4m 212sbus0 at iommu0 # sun4m 213sparcvme0 at iommu0 # sun4m 214vme0 at sparcvme0 # mi VME attachment 215 216## SBus expander box 217xbox* at sbus? slot ? offset ? 218sbus* at xbox? 219 220## SBus to PCMCIA bridge 221# Currently enabling nell* with audioamd* causes panic at attach 222#nell* at sbus? slot ? offset ? # PCMCIA bridge 223#pcmcia* at nell? 224 225#### Standard system devices -- all required for a given architecture 226 227## Auxiliary system registers on sun4c and sun4m 228auxreg0 at mainbus0 # sun4c 229auxreg0 at obio0 # sun4m 230 231## Power status and control register on Sun4m systems 232power0 at obio0 233 234## Mostek clock found on 4/300, sun4c, and sun4m systems. 235## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems. 236clock0 at mainbus0 # sun4c 237clock0 at obio0 # sun4m 238clock0 at obio0 addr 0xf2000000 # sun4/300 239 240## Intersil clock found on 4/100 and 4/200 systems. 241oclock0 at obio0 addr 0xf3000000 # sun4/200 242oclock0 at obio0 addr 0x03000000 # sun4/100 243 244## Memory error registers. 245memreg0 at mainbus0 # sun4c 246memreg0 at obio0 # sun4m 247memreg0 at obio0 addr 0xf4000000 # sun4/200 and sun4/300 248memreg0 at obio0 addr 0x04000000 # sun4/100 249 250## ECC memory control 251eccmemctl0 at mainbus0 # sun4m 252 253## Timer chip found on 4/300, sun4c, and sun4m systems. 254timer0 at mainbus0 # sun4c 255timer0 at obio0 # sun4m 256timer0 at obio0 addr 0xef000000 # sun4/300 257 258## EEPROM found on 4/100 and 4/200 systems. Note that the 4/300 259## doesn't use this driver; the `EEPROM' is in the NVRAM on the 260## Mostek clock chip on 4/300 systems. 261eeprom0 at obio0 addr 0xf2000000 # sun4/200 262eeprom0 at obio0 addr 0x02000000 # sun4/100 263 264 265#### Serial port configuration 266 267## Zilog 8530 serial chips. Each has two-channels. 268## zs0 is ttya and ttyb. zs1 is the keyboard and mouse. 269zs0 at mainbus0 # sun4c 270zs0 at obio0 # sun4m 271zs0 at obio0 addr 0xf1000000 level 12 flags 0x103 # sun4/200 and sun4/300 272zs0 at obio0 addr 0x01000000 level 12 flags 0x103 # sun4/100 273zstty0 at zs0 channel 0 # ttya 274zstty1 at zs0 channel 1 # ttyb 275 276zs1 at mainbus0 # sun4c 277zs1 at obio0 # sun4m 278zs1 at obio0 addr 0xf0000000 level 12 flags 0x103 # sun4/200 and sun4/300 279zs1 at obio0 addr 0x00000000 level 12 flags 0x103 # sun4/100 280kbd0 at zs1 channel 0 # keyboard 281ms0 at zs1 channel 1 # mouse 282 283zs2 at obio0 addr 0xe0000000 level 12 flags 0x103 # sun4/300 284zstty2 at zs2 channel 0 # ttyc 285zstty3 at zs2 channel 1 # ttyd 286 287 288## Magma Serial/Parallel driver 289#magma* at sbus? slot ? offset ? 290#mtty* at magma? 291#mbpp* at magma? 292 293## PCMCIA serial interfaces 294#com* at pcmcia? 295#pcmcom* at pcmcia? 296#com* at pcmcom? 297 298#### Disk controllers and disks 299 300# 301 302## The following flags may be set for the NCR53c94 based esp driver: 303## bits 0-7: disable disconnect/reselect for the corresponding target 304## bits 8-15: disable synchronous negotiation for target [bit-8] 305 306## sun4/300, sun4c, sun4m on-board SCSI, and FSBE/S SBus SCSI cards. 307## Both `dma' and `esp' are needed in all cases. 308## Two kinds of additional SBus SCSI interfaces are available. One uses 309## "esp at sbus" like the sun4c on-board; the other uses "esp at dma". 310 311## sun4/300 SCSI - an NCR53c94 or equivalent behind 312## an LSI Logic DMA controller 313 314dma0 at obio0 addr 0xfa001000 level 4 # sun4/300 315esp0 at obio0 addr 0xfa000000 level 4 flags 0x0000 # sun4/300 316 317dma0 at sbus0 slot ? offset ? # sun4c/sun4m 318esp0 at sbus0 slot ? offset ? flags 0x0000 # sun4c 319esp0 at dma0 flags 0x0000 # sun4m 320 321# FSBE/S SCSI 322dma* at sbus? slot ? offset ? # SBus 323esp* at sbus? slot ? offset ? flags 0x0000 # SBus (older proms) 324esp* at dma? flags 0x0000 # SBus 325 326scsibus* at esp? 327 328## Qlogic ISP SBus SCSI Card 329isp* at sbus? slot ? offset ? 330scsibus* at isp? 331 332## NCR5380-based "Sun SCSI 3" VME SCSI controller. 333## This driver has several flags which may be enabled by OR'ing 334## the values and using the "flags" directive. 335## Valid flags are: 336## 337## 0x01 Use DMA (may be polled) 338## 0x02 Use DMA completion interrupts 339## 0x04 Allow disconnect/reselect 340## 341## E.g. the following would enable DMA, interrupts, and reselect: 342## si0 at vme0 addr 0x200000 irq 3 vect 0x40 flags 0x07 343## 344## By default, DMA is enabled in the driver. 345 346si0 at vme0 addr 0x200000 irq 2 vect 0x40 347scsibus* at si? 348 349## NCR5380-based "SCSI Weird" on-board SCSI interface found 350## on sun4/100 systems. The flags are the same as the "si" 351## controller. Note, while DMA is enabled by default, only 352## polled DMA works at this time, and reselects do not work 353## on this particular controller. 354 355sw0 at obio0 addr 0x0a000000 level 3 356scsibus* at sw? 357 358## PCMCIA SCSI controllers 359#aic* at pcmcia? 360#scsibus* at aic? 361 362 363## These entries find devices on all SCSI busses and assign 364## unit numbers dynamically. 365sd* at scsibus? target ? lun ? # SCSI disks 366st* at scsibus? target ? lun ? # SCSI tapes 367cd* at scsibus? target ? lun ? # SCSI CD-ROMs 368#ch* at scsibus? target ? lun ? # SCSI changer devices 369#ss* at scsibus? target ? lun ? # SCSI scanners 370#uk* at scsibus? target ? lun ? # unknown SCSI 371 372 373## Xylogics 753 or 7053 VME SMD disk controllers and disks, found 374## on sun4 systems. 375xdc0 at vme0 addr 0xee80 irq 3 vect 0x44 376xdc1 at vme0 addr 0xee90 irq 3 vect 0x45 377xdc2 at vme0 addr 0xeea0 irq 3 vect 0x46 378xdc3 at vme0 addr 0xeeb0 irq 3 vect 0x47 379xd* at xdc? drive ? 380 381## Xylogics 451 or 451 VME SMD disk controllers and disks, found 382## on sun4 systems. 383xyc0 at vme0 addr 0xee40 irq 3 vect 0x48 384xyc1 at vme0 addr 0xee48 irq 3 vect 0x49 385xy* at xyc? drive ? 386 387 388## Floppy controller and drive found on SPARCstations. 389 390fdc0 at mainbus0 # sun4c controller 391fdc0 at obio0 # sun4m controller 392fd* at fdc0 # the drive itself 393 394## PCMCIA IDE controllers 395#wdc* at pcmcia? 396#wd* at wdc? 397 398## A disk-like interface to files. Can be used to create floppy, CD, 399## miniroot images, etc. 400 401#pseudo-device vnd 402 403## Concatenated and striped disks; with this, you can create a software-based 404## disk array similar to a "RAID 0" setup. See ccd(4). 405 406#pseudo-device ccd 4 407 408## RAIDframe disk driver: software RAID driver. See raid(4). 409 410#pseudo-device raid 4 411 412## Memory disk device, used on boot floppies with compressed 413## kernel-plus-root-disk images. 414 415#pseudo-device md 1 416 417 418#### Network interfaces 419 420## LANCE Ethernet - an AMD 7990 LANCE behind specialized DMA glue 421## Three flavors of additional SBus ethernets are available. One attaches 422## directly like the sun4c on-board, one uses the ledma device like the 423## sun4m on-board, and one uses the lebuffer device. 424 425le0 at obio0 addr 0xf9000000 level 6 # sun4/300 426le0 at sbus0 slot ? offset ? # sun4c on-board 427ledma0 at sbus0 slot ? offset ? # sun4m on-board 428le0 at ledma0 # sun4m on-board 429le* at sbus? slot ? offset ? # SBus 430ledma* at sbus? slot ? offset ? # SBus 431le* at ledma? # SBus 432lebuffer0 at sbus? slot ? offset ? # SBus 433le0 at lebuffer? # SBus 434lebuffer* at sbus? slot ? offset ? # SBus 435le* at lebuffer? # SBus 436 437 438## sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board 439## or on a Multibus/VME card. 440ie0 at obio0 addr 0xf6000000 level 6 # sun4/200 on-board 441ie0 at obio0 addr 0x06000000 level 6 # sun4/100 on-board 442ie1 at vme0 addr 0xe88000 irq 3 vect 0x75 # VME 443ie2 at vme0 addr 0x31ff02 irq 3 vect 0x76 # VME 444ie3 at vme0 addr 0x35ff02 irq 3 vect 0x77 # VME 445ie4 at vme0 addr 0x2dff02 irq 3 vect 0x7c # VME 446 447## qec/be, qec/hme 448qec* at sbus? slot ? offset ? 449be* at qec? 450qe* at qec? 451 452# midway ATM 453en0 at sbus? slot ? offset ? 454 455# PCMCIA ethernet devices 456#ep* at pcmcia? 457#mbe* at pcmcia? 458#ne* at pcmcia? 459#sm* at pcmcia? 460 461# MII/PHY support 462#exphy* at mii? phy ? # 3Com internal PHYs 463#icsphy* at mii? phy ? # Integrated Circuit Systems ICS189x 464#inphy* at mii? phy ? # Intel 82555 PHYs 465#lxtphy* at mii? phy ? # Level One LXT-970 PHYs 466#nsphy* at mii? phy ? # NS83840 PHYs 467#qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs 468#sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs 469#tlphy* at mii? phy ? # ThunderLAN PHYs 470#ukphy* at mii? phy ? # generic unknown PHYs 471 472## Loopback network interface; required 473pseudo-device loop 474 475## SLIP and CSLIP interfaces, for IP over a serial line. 476#pseudo-device sl 477 478## PPP, the successor to SLIP. See pppd(8). 479#pseudo-device ppp 480 481## Starmode Radio IP, a special hardware network device. 482#pseudo-device strip 483 484## Network "tunnel" device, allowing protocol stacks to run in the userland. 485## This is used by the third-party user-mode "ppp" program, and others. 486#pseudo-device tun 487 488## Generic L3 over IP tunnel 489#pseudo-device gre # generic L3 over IP tunnel 490 491## Berkeley Packet Filter, required to run RARPD. A generic C-language 492## interface that allows selective examining of incoming packets. 493#pseudo-device bpfilter 494 495## IP Filter, used in firewall and NAT applications. See ipnat(8) for 496## one example of the use of the IP Filter. 497#pseudo-device ipfilter 498 499 500#### Audio and video devices 501 502## /dev/audio support (`audioamd' plus `audio') 503## 504#audioamd0 at mainbus0 # sun4c 505#audioamd0 at obio0 # sun4m 506#audioamd0 at sbus0 slot ? offset ? # sun4m 507#audio* at audioamd0 508 509#audiocs0 at sbus0 slot ? offset ? # SUNW,CS4231 510#audio* at audiocs0 511 512 513## Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m 514## systems. If your sun4 system has a cgfour installed in the P4 slot, 515## the P4 entries for "bwtwo" will attach to the overlay plane of the 516## "cgfour". 517 518bwtwo0 at sbus0 slot ? offset ? # sun4c and sun4m 519bwtwo* at sbus? slot ? offset ? # 520#bwtwo0 at obio0 addr 0xfd000000 level 4 # sun4/200 521#bwtwo0 at obio0 addr 0xfb300000 level 4 # sun4/300 in P4 slot 522#bwtwo0 at obio0 addr 0x0b300000 level 4 # sun4/100 in P4 slot 523 524## Sun "cgtwo" VME color framebuffer 525#cgtwo0 at vme0 addr 0x400000 irq ? vect 0xa8 526 527## Sun "cgthree" Sbus color framebuffer 528cgthree0 at sbus? slot ? offset ? 529cgthree* at sbus? slot ? offset ? 530#cgthree0 at obio? slot ? offset ? # sun4m 531 532## Sun "cgfour" color framebuffer with overlay plane. See above comment 533## regarding overlay plane. 534#cgfour0 at obio0 addr 0xfb300000 level 4 # sun4/300 P4 535#cgfour0 at obio0 addr 0x0b300000 level 4 # sun4/100 P4 536 537## Sun "cgsix" accelerated color framebuffer. 538cgsix0 at sbus? slot ? offset ? 539cgsix* at sbus? slot ? offset ? 540#cgsix0 at obio0 addr 0xfb000000 level 4 # sun4/300 P4 541#cgsix0 at obio0 addr 0x0b000000 level 4 # sun4/100 P4 542 543## Sun "cgeight" 24-bit framebuffer 544#cgeight0 at obio0 addr 0xfb300000 level 4 # sun4/300 P4 545#cgeight0 at obio0 addr 0x0b300000 level 4 # sun4/100 P4 546 547## Sun "tcx" accelerated color framebuffer. 548tcx0 at sbus? slot ? offset ? 549tcx* at sbus? slot ? offset ? 550 551# Sun "cgfourteen" accelerated 24-bit framebuffer. 552cgfourteen0 at obio0 # sun4m 553 554 555#### Other device configuration 556 557## Pseudo ttys, required for network logins and programs like screen. 558 559pseudo-device pty 2 # pseudo-terminals (Sysinst needs two) 560 561## Random device, used to implement /dev/random (a source of random noise), 562## and generate randomness for some kernel formulae. 563 564pseudo-device rnd 565#pseudo-device fss 4 # file system snapshot device 566