INSTALL revision 1.52
11.52Sabs#	$NetBSD: INSTALL,v 1.52 2002/07/05 13:40:19 abs Exp $
21.1Soki
31.1Soki#
41.7Sminoura#	INSTALL -- installation kernel.
51.1Soki#
61.1Soki
71.7Sminourainclude "arch/x68k/conf/std.x68k"
81.1Soki
91.51Satatat#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
101.51Satatat
111.52Sabs#ident 		"INSTALL-$Revision: 1.52 $"
121.33Sabs
131.42Slukemmakeoptions	COPTS="-Os"		# Optimise for space. Implies -O2
141.23Sminoura
151.28Sminouramaxusers	4
161.1Soki
171.7Sminoura## Enable the hooks used for initializing the memory-disk.
181.7Sminouraoptions 	MEMORY_DISK_HOOKS
191.42Slukemoptions 	MEMORY_DISK_IS_ROOT	# Force root on memory-disk
201.7Sminouraoptions 	MEMORY_DISK_SERVER=0	# No user space hooks
211.49Slukem#options 	MEMORY_DISK_ROOT_SIZE=2400	# 1.2M, same as a 130mm floppy
221.49Slukem#options 	MEMORY_DISK_ROOT_SIZE=2880	# 1.44M, same as a 90mm floppy
231.49Slukemoptions 	MEMORY_DISK_ROOT_SIZE=2550
241.7Sminoura
251.7Sminoura## System kernel configuration.  See options(4) for more detail.
261.7Sminoura
271.7Sminoura
281.7Sminoura## Options for variants of the m68k MPU
291.7Sminoura## you must have at least the correct one; REQUIRED
301.1Sokioptions 	M68030
311.1Sokioptions 	M68040
321.1Sokioptions 	M68060
331.37Sminoura## If you want an optimized kernel for a specific processor, use either:
341.37Sminoura#makeoptions	CMACHFLAGS="-m68030"
351.37Sminoura#makeoptions	CMACHFLAGS="-m68040 -Wa,-m68030 -Wa,-m68851"
361.37Sminoura#makeoptions	CMACHFLAGS="-m68060 -Wa,-m68030 -Wa,-m68851"
371.1Soki
381.1Soki
391.7Sminoura#### System options specific to the x68k port
401.1Soki
411.22Sminouraoptions 	EXTENDED_MEMORY		# support for >16MB memory
421.7Sminouraoptions 	FPU_EMULATE		# software fpu emulation for MC68030
431.7Sminouraoptions 	FPSP			# floating point emulation for MC68040
441.1Sokioptions 	M060SP			# int/fp emulation for MC68060
451.38Sminoura#options 	JUPITER			# support for "Jupiter-X" accelerator
461.12Sminoura#options 	MAPPEDCOPY		# use page mapping for large copyin/copyout
471.9Sminoura#options 	ZSCONSOLE,ZSCN_SPEED="9600"	# use serial console
481.7Sminoura
491.1Soki
501.7Sminoura#### System options that are the same for all ports
511.1Soki
521.7Sminoura## Root device configuration: change the ?'s if you are going to use a
531.7Sminoura## nonstandard root partition (other than where the kernel is booted from)
541.7Sminoura## and/or nonstandard root type (not ffs or nfs).  Normally this can be
551.7Sminoura## automagically determined at boot time.
561.1Soki
571.7Sminouraconfig		netbsd	root on ? type ?
581.10Sminoura#config		netbsd	root on sd0 type ffs
591.7Sminoura
601.7Sminoura## RTC is offset from GMT; -540 means JST-9
611.7Sminouraoptions 	RTC_OFFSET=-540	# hardware clock is this many mins. west of GMT
621.7Sminoura
631.7Sminoura## System call tracing (see ktrace(1)).
641.7Sminoura#options 	KTRACE
651.7Sminoura
661.7Sminoura## Collect statistics on kernel malloc's and free's.  This does have a
671.7Sminoura## significant performance hit on slower machines, so it is intended for
681.7Sminoura## diagnostic use only.
691.7Sminoura#options 	KMEMSTATS
701.7Sminoura
711.7Sminoura## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
721.7Sminoura#options 	SYSVMSG		# System V message queues
731.7Sminoura#options 	SYSVSEM		# System V semaphores
741.7Sminoura#options 	SYSVSHM		# System V shared memory
751.7Sminoura#options 	SHMMAXPGS=1024	# 1024 pages is the default
761.7Sminoura
771.7Sminoura## Loadable kernel module support
781.7Sminoura#options 	LKM
791.47Sjdolecek
801.50Sgmcgarry#options 	USERCONF	# userconf(4) support
811.52Sabsoptions		PIPE_SOCKETPAIR		# smaller, but slower pipe(2)
821.52Sabsoptions 	MALLOC_NOINLINE		# Not inlining MALLOC saves memory
831.7Sminoura
841.7Sminoura## NFS boot options; not supported currently: needs nfsboot program
851.7Sminoura#options 	NFS_BOOT_BOOTPARAM
861.7Sminoura#options 	NFS_BOOT_BOOTP
871.7Sminoura#options 	NFS_BOOT_DHCP
881.7Sminoura
891.7Sminoura#### Debugging options
901.7Sminoura
911.7Sminoura## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
921.7Sminoura## serial console break or keyboard reset, where the PROM would normally
931.7Sminoura## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
941.7Sminoura#options 	DDB			# kernel dynamic debugger
951.7Sminoura#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
961.7Sminoura#options 	DDB_ONPANIC=1		# see also sysctl(8): `ddb.onpanic'
971.7Sminoura#options 	PANICBUTTON		# interrupt switch invokes DDB
981.7Sminoura
991.7Sminoura## You may also use gdb, on another computer connected to this machine over
1001.41Slukem## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
1011.41Slukem## KGDB_DEV is a dev_t encoded device number of the serial port to use.
1021.7Sminoura## KGDB is not supported for now.
1031.41Slukem#options 	KGDB			# support for kernel gdb
1041.41Slukem#options 	KGDB_DEV=0xc00		# kgdb device number
1051.41Slukem#options 	KGDB_DEVRATE=9600	# baud rate
1061.7Sminoura
1071.7Sminoura## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
1081.7Sminoura## such that gdb(1) can be used on a kernel coredump.
1091.7Sminoura
1101.42Slukem#makeoptions	DEBUG="-g"
1111.7Sminoura
1121.7Sminoura## Adds code to the kernel that does internal consistency checks, and will
1131.7Sminoura## cause the kernel to panic if corruption of internal data structures
1141.7Sminoura## is detected.
1151.7Sminoura#options 	DIAGNOSTIC	# extra kernel sanity checking
1161.7Sminoura
1171.7Sminoura## Enable (possibly expensive) debugging code that may also display messages
1181.7Sminoura## on the system console
1191.7Sminoura#options 	DEBUG
1201.7Sminoura
1211.7Sminoura## Make SCSI error messages more verbose when explaining their meanings.
1221.7Sminoura#options 	SCSIVERBOSE
1231.7Sminoura
1241.7Sminoura## `INSECURE' turns off the kernel security level (securelevel = 0 always).
1251.7Sminoura## This allows writing to /dev/mem, loading kernel modules while multi-user,
1261.7Sminoura## and other insecurities good only for development work.  Do not use this
1271.7Sminoura## option on a production machine.
1281.7Sminoura#options 	INSECURE
1291.7Sminoura
1301.7Sminoura## Allow non-root users to grab /dev/console with programs such as xconsole.
1311.7Sminoura## `xconsole' therefore does not need setuid root with this option enabled.
1321.7Sminoura#options 	UCONSOLE
1331.7Sminoura
1341.7Sminoura## `FDSCRIPTS' allows non-readable but executable scripts by providing a
1351.7Sminoura## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
1361.7Sminoura## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
1371.7Sminoura## opaque file mechanism.  Perl calls this "secure setuid scripts."
1381.7Sminoura
1391.7Sminoura#options 	FDSCRIPTS
1401.7Sminoura#options 	SETUIDSCRIPTS
1411.7Sminoura
1421.7Sminoura## Options for compatibility with previous releases foreign system binaries.
1431.7Sminoura
1441.13Sminoura#options 	COMPAT_43	# 4.3BSD system interfaces
1451.7Sminoura#options 	COMPAT_09	# NetBSD 0.9 binary compatibility
1461.7Sminoura#options 	COMPAT_10	# NetBSD 1.0 binary compatibility
1471.7Sminoura#options 	COMPAT_11	# NetBSD 1.1 binary compatibility
1481.7Sminoura#options 	COMPAT_12	# NetBSD 1.2 binary compatibility
1491.7Sminoura#options 	COMPAT_13	# NetBSD 1.3 binary compatibility
1501.18Sminoura#options 	COMPAT_14	# NetBSD 1.4 binary compatibility
1511.45Sminoura#options 	COMPAT_AOUT_M68K # compatibility with NetBSD/m68k a.out
1521.7Sminoura#options 	COMPAT_M68K4K	# NetBSD/m68k4k binaries
1531.7Sminoura#options 	COMPAT_SUNOS	# SunOS 4.x binary compatibility; broken
1541.16Sminoura#options 	COMPAT_SVR4	# SVR4 binary compatibility; broken
1551.10Sminoura#options 	COMPAT_LINUX	# Linux/m68k binary compatibility
1561.40Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
1571.7Sminoura
1581.44Sisaki## File systems.
1591.7Sminourafile-system	FFS		# Berkeley Fast Filesystem
1601.7Sminourafile-system	NFS		# Sun NFS-compatible filesystem client
1611.28Sminoura#file-system	KERNFS		# kernel data-structure filesystem
1621.16Sminoura#file-system	NULLFS		# NULL layered filesystem (buggy)
1631.23Sminoura#file-system 	OVERLAY		# overlay file system
1641.14Sminoura#file-system	MFS		# memory-based filesystem
1651.7Sminoura#file-system	FDESC		# user file descriptor filesystem
1661.7Sminoura#file-system	UMAPFS		# uid/gid remapping filesystem
1671.16Sminoura#file-system	LFS		# Log-structured filesystem (experimental)
1681.16Sminoura#file-system	PORTAL		# portal filesystem (experimental)
1691.13Sminoura#file-system	PROCFS		# /proc
1701.7Sminourafile-system	CD9660		# ISO 9660 + Rock Ridge file system
1711.16Sminoura#file-system	UNION		# union file system (a little buggy)
1721.7Sminourafile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
1731.7Sminoura#file-system 	ADOSFS		# AmigaDOS filesystem
1741.7Sminoura
1751.44Sisaki## File system options.
1761.7Sminoura#options 	NFSSERVER	# Sun NFS-compatible filesystem server
1771.7Sminoura#options 	QUOTA		# FFS quotas
1781.7Sminoura#options 	FFS_EI		# FFS Endian Independent support
1791.42Slukem#options 	SOFTDEP		# FFS soft updates support.
1801.34Sabs#options 	NFS_V2_ONLY	# Exclude NFS3 and NQNFS code to save space
1811.52Sabsoptions 	VNODE_OP_NOINLINE	# Not inlining vnode op calls saves mem
1821.22Sminoura
1831.7Sminoura## Network protocol support.  In most environments, INET is required.
1841.7Sminouraoptions 	INET		# IP (Internet Protocol) v4
1851.26Sminouraoptions 	INET6		# IPV6
1861.22Sminoura#options 	IPSEC		# IP security
1871.22Sminoura#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
1881.22Sminoura#options 	IPSEC_DEBUG	# debug for IP security
1891.7Sminoura#options 	GATEWAY		# packet forwarding ("router switch")
1901.7Sminoura#options 	MROUTING	# packet forwarding of multicast packets
1911.7Sminoura#options 	DIRECTED_BROADCAST	# allow broadcasts through routers
1921.7Sminoura#options 	NS		# Xerox NS networking
1931.7Sminoura#options 	NSIP		# Xerox NS tunneling over IP
1941.7Sminoura#options 	ISO,TPIP	# OSI networking
1951.7Sminoura#options 	EON		# OSI tunneling over IP
1961.7Sminoura#options 	CCITT,LLC,HDLC	# X.25 packet switched protocol
1971.7Sminoura#options 	NETATALK	# AppleTalk (over Ethernet) protocol
1981.7Sminoura#options 	NTP		# Network Time Protocol in-kernel support
1991.7Sminoura#options 	PPS_SYNC	# Add serial line synchronization for NTP
2001.7Sminoura#options 	PFIL_HOOKS	# Add pfil(9) hooks, intended for custom LKMs.
2011.7Sminoura#options 	IPFILTER_LOG	# Add ipmon(8) logging for ipfilter device
2021.7Sminoura#options 	PPP_BSDCOMP	# Add BSD compression to ppp device
2031.7Sminoura#options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
2041.7Sminoura#options 	PPP_FILTER	# Add active filters for ppp (via bpf)
2051.40Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
2061.7Sminoura
2071.7Sminoura
2081.7Sminoura#### Device configurations
2091.7Sminoura
2101.9Sminoura## Fundamental devices; see also std.x68k
2111.9Sminouradmac0	at intio0 addr 0xe84000		# DMA controler
2121.9Sminouraxel0	at intio0
2131.9Sminouraopm0	at intio0 addr 0xe90000		# OPM: required for fdc
2141.7Sminoura
2151.7Sminoura## Display devices and console
2161.7Sminouragrfbus0	at mainbus0			# bitmapped displays
2171.7Sminouragrf0	at grfbus0			# multiplane graphics
2181.7Sminoura#grf1	at grfbus0			# flexible graphics
2191.7Sminoura
2201.9Sminourakbd0	at mfp0				# standard keyboard
2211.7Sminouraite0	at grf0				# internal terminal emulator
2221.16Sminouraoptions 	ITE_KERNEL_ATTR=4	# bold for kernel messages
2231.9Sminoura					# see /sys/arch/x68k/dev/itevar.h
2241.12Sminoura#pseudo-device	pow		2	# software power switch
2251.7Sminoura
2261.7Sminoura## floppy disks
2271.9Sminourafdc0	at intio0 addr 0xe94000 intr 96 dma 0 dmaintr 100 # floppy controler
2281.7Sminourafd*	at fdc0 unit ?			# builtin floppy drives
2291.7Sminoura
2301.7Sminoura## SCSI devices
2311.9Sminourascsirom0 at intio0				# SCSI BIOS
2321.9Sminourascsirom1 at intio0				# SCSI BIOS
2331.9Sminouraspc*	at scsirom?				# genuin SCSI
2341.7Sminourascsibus* at spc?
2351.9Sminouramha0	at scsirom?				# Mankai MK-HA1 (Mach-2)
2361.7Sminourascsibus* at mha0
2371.1Soki
2381.1Sokisd*	at scsibus? target ? lun ?	# SCSI disks
2391.1Sokicd*	at scsibus? target ? lun ?	# SCSI CD-ROMs
2401.7Sminourast*	at scsibus? target ? lun ?	# SCSI tapes
2411.7Sminoura#ss*	at scsibus? target ? lun ?	# SCSI scanners
2421.7Sminoura#ch*	at scsibus? target ? lun ?	# SCSI changer devices
2431.7Sminoura#uk*	at scsibus? target ? lun ?	# SCSI unknown devices
2441.7Sminoura
2451.24Sminoura## Ports
2461.9Sminourazsc0	at intio0 addr 0xe98000 intr 112
2471.7Sminourazstty0	at zsc0 channel 0		# built-in RS-232C
2481.7Sminoura#ms0	at zsc0 channel 1		# standard mouse
2491.9Sminoura#zsc1	at intio0 addr 0xeafc00 intr 113
2501.7Sminoura#zstty2	at zsc1 channel 0
2511.7Sminoura#zstty3	at zsc1 channel 1
2521.9Sminoura#zsc2	at intio0 addr 0xeafc10 intr 114
2531.7Sminoura#zstty4	at zsc2 channel 0
2541.7Sminoura#zstty5	at zsc2 channel 1
2551.24Sminoura#par0	at intio0 addr 0xe8c000 	# Builtin printer port
2561.7Sminoura
2571.30Sminourapseudo-device	sram			# battery-backuped static RAM
2581.13Sminoura#pseudo-device	bell			# OPM bell
2591.9Sminoura
2601.7Sminoura#xcom0	at mainbus0			# NS16550 fast serial
2611.7Sminoura#xcom1	at mainbus0
2621.15Sminoura
2631.39Sminoura## Audio device
2641.39Sminoura#vs0 at intio0 addr 0xe92000 dma 3 dmaintr 106
2651.39Sminoura#audio*	at vs?
2661.7Sminoura
2671.7Sminoura## Network interfaces
2681.43Sisakine*	at intio0 addr 0xece300 intr 249	# Nereid Ethernet
2691.46Sisakine*	at intio0 addr 0xeceb00 intr 248	# Nereid Ethernet
2701.9Sminouraneptune0 at intio0 addr 0xece000 intr 249	# Neptune-X
2711.9Sminouraneptune1 at intio0 addr 0xece400 intr 249	# Neptune-X at alt. addr.
2721.43Sisakine*	at neptune? addr 0x300			# NE2000 or clone
2731.7Sminoura
2741.7Sminoura
2751.7Sminoura#### Pseudo devices
2761.7Sminoura
2771.7Sminoura## A disk-like interface to files.  Can be used to create floppy, CD,
2781.7Sminoura## miniroot images, etc.
2791.7Sminoura
2801.12Sminoura#pseudo-device	vnd	4
2811.7Sminoura
2821.7Sminoura## Concatenated and striped disks; with this, you can create a software-based
2831.7Sminoura## disk array similar to a "RAID 0" setup.  See ccd(4).
2841.7Sminoura
2851.28Sminoura#pseudo-device	ccd	4
2861.9Sminoura
2871.9Sminoura## RAIDframe disk driver: software RAID driver.  See raid(4).
2881.9Sminoura
2891.9Sminoura#pseudo-device	raid	4
2901.24Sminoura#options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
2911.7Sminoura
2921.7Sminoura## Memory disk device, used on boot floppies with compressed
2931.7Sminoura## kernel-plus-root-disk images.
2941.7Sminoura
2951.7Sminourapseudo-device	md	1
2961.7Sminoura
2971.7Sminoura## Loopback network interface; required
2981.7Sminourapseudo-device	loop
2991.7Sminoura
3001.7Sminoura## SLIP and CSLIP interfaces, for IP over a serial line.
3011.7Sminourapseudo-device	sl		1
3021.7Sminoura
3031.7Sminoura## PPP, the successor to SLIP.  See pppd(8).
3041.13Sminoura#pseudo-device	ppp		1
3051.7Sminoura
3061.7Sminoura## Network "tunnel" device, allowing protocol stacks to run in the userland.
3071.7Sminoura## This is used by the third-party user-mode "ppp" program, and others.
3081.7Sminoura#pseudo-device	tun		4
3091.9Sminoura
3101.9Sminoura## Generic L3 over IP tunnel
3111.9Sminoura#pseudo-device	gre		2	# generic L3 over IP tunnel
3121.7Sminoura
3131.7Sminoura## Berkeley Packet Filter, required to run RARPD.  A generic C-language
3141.7Sminoura## interface that allows selective examining of incoming packets.
3151.44Sisaki#pseudo-device	bpfilter	4
3161.7Sminoura
3171.7Sminoura## IP Filter, used in firewall and NAT applications.  See ipnat(8) for
3181.7Sminoura## one example of the use of the IP Filter.
3191.7Sminoura#pseudo-device	ipfilter
3201.7Sminoura
3211.22Sminoura## for IPv6
3221.44Sisaki#pseudo-device	gif		1	# IPv[46] over IPv[46] tunnel (RFC1933)
3231.22Sminoura#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
3241.28Sminoura#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
3251.44Sisaki
3261.44Sisaki## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
3271.44Sisaki#pseudo-device  vlan
3281.44Sisaki
3291.44Sisaki## Simple inter-network traffic bridging
3301.44Sisaki#pseudo-device  bridge
3311.7Sminoura
3321.7Sminoura#### Other device configuration
3331.7Sminoura
3341.7Sminoura## Pseudo ttys, required for network logins and programs like screen.
3351.16Sminoura
3361.35Sabspseudo-device	pty		2	# pseudo-terminals (Sysinst needs two)
3371.7Sminoura
3381.7Sminoura## Random device, used to implement /dev/random (a source of random noise),
3391.7Sminoura## and generate randomness for some kernel formulae.
3401.16Sminoura
3411.7Sminoura#pseudo-device	rnd
342