11.118Schristos# $NetBSD: GENERIC,v 1.118 2024/01/29 18:27:12 christos Exp $
21.1Such#
31.13Sgmcgarry# GENERIC machine description file
41.63Suwe#
51.13Sgmcgarry# This machine description file is used to generate the default NetBSD
61.13Sgmcgarry# kernel.  The generic kernel does not include all options, subsystems
71.13Sgmcgarry# and device drivers, but should be useful for most applications.
81.1Such#
91.13Sgmcgarry# The machine description file can be customised for your specific
101.13Sgmcgarry# machine to reduce the kernel size and improve its performance.
111.13Sgmcgarry#
121.13Sgmcgarry# For further information on compiling NetBSD kernels, see the config(8)
131.13Sgmcgarry# man page.
141.13Sgmcgarry#
151.13Sgmcgarry# For further information on hardware support for this architecture, see
161.13Sgmcgarry# the intro(4) man page.  For further information about kernel options
171.13Sgmcgarry# for this architecture, see the options(4) man page.  For an explanation
181.13Sgmcgarry# of each device driver in this file see the section 4 man page for the
191.13Sgmcgarry# device.
201.1Such
211.20Such#
221.20Such# This kernel supports...
231.20Such#	HP Jornada 680/690
241.63Suwe#	HP 620LX/660LX
251.20Such#	HITACHI HPW50PA
261.20Such#
271.20Such
281.13Sgmcgarryinclude 	"arch/hpcsh/conf/std.hpcsh"
291.24Satatat
301.24Satatatoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
311.1Such
321.1Suchmaxusers	32			# estimated number of users
331.1Such
341.90Stsutsuioptions 	HZ=64			# default clock rate
351.40Suwe
361.40Suwe# System options specific to hpcsh
371.40Suwe
381.40Suwe# CPU support.  At least one is REQUIRED.
391.40Suweoptions 	SH3
401.40Suwe#options 	SH4
411.40Suwe
421.40Suwe# Example of how to set gcc optimization options (XXX: not tested)
431.40Suwe#makeoptions	COPTS="-Os"		# generic
441.40Suwe#makeoptions	CPUFLAGS="-m3"		# CPU specific
451.40Suwe
461.20Such#
471.20Such# PCLOCK is estimated by kernel.
481.20Such#				PCLOCK		CPU CLOCK
491.20Such#	HP Jornada 680/690	22.22MHz	133MHz
501.63Suwe#	HP 620LX		18.75MHz	 75MHz
511.20Such#	HITACHI HPW50PA		25MHz		100MHz
521.20Such#
531.40Suwe#options 	PCLOCK=...
541.1Such
551.40Suwe# in-kernel bootloader, see kloader(4)
561.74Suweoptions 	KLOADER
571.74Suwe#options 	KLOADER_KERNEL_PATH="\"/netbsd\""
581.40Suwe#options 	KLOADER_DEBUG
591.40Suwe
601.47Suwe#options 	HPC_DEBUG_INTERRUPT_MONITOR
611.47Suwe#options 	KSTACK_DEBUG
621.40Suwe
631.1Such
641.1Such# Standard system options
651.40Suwe
661.33Suwe#options 	RTC_OFFSET=-540 # hardware clock is this many mins. west of GMT
671.33Suwe				# (overrides tz info that hpcboot.exe passes)
681.1Such
691.40Suweoptions 	KTRACE		# system call tracing via ktrace(1)
701.40Suwe
711.92Stsutsuioptions 	SYSVMSG		# System V-like message queues
721.92Stsutsuioptions 	SYSVSEM		# System V-like semaphores
731.92Stsutsuioptions 	SYSVSHM		# System V-like memory sharing
741.40Suwe
751.93Stsutsui#options 	MODULAR		# new style module(7) framework
761.104Sjnemeth#options 	MODULAR_DEFAULT_AUTOLOAD
771.40Suwe
781.27Slukemoptions 	USERCONF		# userconf(4) support
791.40Suweoptions 	PIPE_SOCKETPAIR		# smaller, but slower pipe(2)
801.41Satatatoptions 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
811.40Suwe
821.110Ssevan# Alternate buffer queue strategies for better responsiveness under high
831.110Ssevan# disk I/O load.
841.49Stsutsui#options 	BUFQ_READPRIO
851.49Stsutsui#options 	BUFQ_PRIOCSCAN
861.40Suwe
871.112Ssevan# Alternate buffer queue strategies for better responsiveness under high
881.112Ssevan# disk I/O load.
891.112Ssevan#options 	BUFQ_READPRIO
901.112Ssevanoptions 	BUFQ_PRIOCSCAN
911.112Ssevan
921.40Suwe# Diagnostic/debugging support options
931.40Suwe#options 	DIAGNOSTIC	# expensive kernel consistency checks
941.40Suwe#options 	DEBUG		# expensive debugging checks/support
951.40Suwe#options 	DDB		# in-kernel debugger
961.101Sszptvlfn#options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
971.40Suwe#options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
981.40Suwe#options 	KGDB		# remote debugger
991.40Suwe#options 	KGDB_DEVRATE=19200
1001.67Suwe#options 	KGDB_DEVNAME="\"scif\""		# HP Jornada
1011.67Suwe#options 	KGDB_DEVNAME="\"hd64461uart\""	# HITACHI PERSONA (SH3)
1021.67Suwe#options 	KGDB_DEVNAME="\"hd64465uart\""	# HITACHI PERSONA (SH4)
1031.40Suwe#makeoptions	DEBUG="-g"	# compile full symbol table
1041.26Stsutsui
1051.26Stsutsui# Compatibility options
1061.109Smrginclude 	"conf/compat_netbsd15.config"
1071.26Stsutsui#options 	BSDDISKLABEL_EI	# endian independent disklabel support
1081.1Such
1091.1Such# Executable format options
1101.1Suchoptions 	EXEC_COFF	# 32-bit COFF executables
1111.1Such
1121.1Such# File systems
1131.1Suchfile-system 	FFS		# UFS
1141.89Stsutsuifile-system 	MFS		# memory file system (requires FFS)
1151.40Suwe#file-system 	EXT2FS		# second extended file system (linux)
1161.1Suchfile-system 	MSDOSFS		# MS-DOS file system
1171.1Suchfile-system	NFS		# Sun NFS-compatible filesystem client
1181.40Suwe#file-system 	NULLFS		# loopback file system
1191.40Suwe#file-system 	UMAPFS		# NULLFS + uid and gid remapping
1201.40Suwe#file-system 	UNION		# union file system
1211.40Suwe#file-system 	OVERLAY		# overlay file system
1221.40Suwe#file-system 	FDESC		# /dev/fd
1231.22Suchfile-system 	KERNFS		# /kern
1241.22Suchfile-system 	PROCFS		# /proc
1251.40Suwe#file-system	CODA		# Coda File System; also needs vcoda (below)
1261.55Schristosfile-system	PTYFS		# /dev/pts/N support
1271.72Sjmmv#file-system	TMPFS		# Efficient memory file-system
1281.64Sreinoud#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
1291.1Such
1301.1Such# File system options
1311.40Suwe#options 	FFS_EI		# FFS Endian Independent support
1321.61Stsutsuioptions 	FFS_NO_SNAPSHOT	# No FFS snapshot support
1331.115Ssimonb#options 	UFS_DIRHASH	# UFS Large Directory Hashing
1341.105Smanu#options 	UFS_EXTATTR	# Extended attribute support for UFS1
1351.95Sdhollandoptions 	WAPBL		# File system journaling support
1361.1Such
1371.1Such# Networking options
1381.1Suchoptions 	INET		# IP + ICMP + TCP + UDP
1391.9Suchoptions 	INET6		# IPV6
1401.9Such
1411.38Suchoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1421.38Suchoptions 	PPP_DEFLATE	# Deflate compression support for PPP
1431.38Suchoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1441.38Such
1451.37Sabs#options 	ALTQ		# Manipulate network interfaces' output queues
1461.37Sabs#options 	ALTQ_BLUE	# Stochastic Fair Blue
1471.37Sabs#options 	ALTQ_CBQ	# Class-Based Queueing
1481.37Sabs#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
1491.37Sabs#options 	ALTQ_FIFOQ	# First-In First-Out Queue
1501.37Sabs#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
1511.37Sabs#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
1521.37Sabs#options 	ALTQ_LOCALQ	# Local queueing discipline
1531.37Sabs#options 	ALTQ_PRIQ	# Priority Queueing
1541.37Sabs#options 	ALTQ_RED	# Random Early Detection
1551.37Sabs#options 	ALTQ_RIO	# RED with IN/OUT
1561.37Sabs#options 	ALTQ_WFQ	# Weighted Fair Queueing
1571.37Sabs
1581.40Suwe# These options enable verbose messages for several subsystems.
1591.40Suwe# Warning, these may compile large string tables into the kernel!
1601.40Suweoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1611.40Suwe#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
1621.40Suwe
1631.1Suchoptions 	NFS_BOOT_DHCP
1641.1Such
1651.40Suwe#
1661.40Suwe# wscons options
1671.40Suwe#
1681.40Suwe# builtin terminal emulations
1691.1Suchoptions 	WSEMUL_VT100
1701.40Suwe# allocate a number of virtual screens at autoconfiguration time
1711.1Suchoptions 	WSDISPLAY_DEFAULTSCREENS=4
1721.56Suwe
1731.56Suwe# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
1741.56Suweoptions 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
1751.56Suwe#options 	WS_DEFAULT_FG=WSCOL_WHITE
1761.56Suwe#options 	WS_DEFAULT_BG=WSCOL_BLACK
1771.56Suwe#options 	WS_DEFAULT_COLATTR="(0)"
1781.56Suwe#options 	WS_DEFAULT_MONOATTR="(0)"
1791.1Suchoptions 	WS_KERNEL_FG=WSCOL_BROWN
1801.1Suchoptions 	WS_KERNEL_BG=WSCOL_BLUE
1811.56Suwe#options 	WS_KERNEL_COLATTR=""
1821.56Suwe#options 	WS_KERNEL_MONOATTR=""
1831.56Suwe
1841.38Such# compatibility to other console drivers
1851.38Suchoptions 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
1861.38Suchoptions 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
1871.97Sabsoptions 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
1881.38Suchoptions 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
1891.1Such
1901.40Suweoptions 	FONT_VT220L8x10			# the console font
1911.40Suwe
1921.40Suwe
1931.40Suwe# Kernel root file system and dump configuration.
1941.40Suweconfig		netbsd	root on ? type ?
1951.40Suwe
1961.1Such#
1971.1Such# Device configuration
1981.1Such#
1991.1Suchmainbus0 at root
2001.1Such
2011.39Such# temporally power management
2021.39Suchhpcapm0		at mainbus0			# power management
2031.39Suchapmdev0		at hpcapm0			# APM
2041.39Suchbtnmgr0		at mainbus0
2051.39Suchwskbd*		at btnmgr0 mux 1
2061.39Such
2071.22Suchcpu*		at mainbus?
2081.22Suchshb*		at mainbus?
2091.71Suwertc*		at shb?
2101.59Skiyoharaadc*		at shb?			# analog->digital converter
2111.22Suchpfckbd*		at mainbus?
2121.1Such
2131.1Such#
2141.1Such# Workstation Console attachments
2151.1Such#
2161.3Suchhpcfb*		at hd64461video?
2171.1Suchwsdisplay*	at hpcfb?
2181.22Such
2191.1Suchhpckbd*		at pfckbd?
2201.38Suchwskbd0		at hpckbd? mux 1
2211.1Such
2221.1Such#
2231.63Suwe# HP Jornada (620LX/660LX, 680/690)
2241.1Such#
2251.63Suwescif0		at shb?			# serial port/console
2261.11Slukemoptions 	SCIFCN_SPEED=19200
2271.63Suwe# don't need to define SCIFCONSOLE, you can select from the bootloader.
2281.30Suwe
2291.63Suwej6x0pwr*	at adc?			# battery, on/off, etc
2301.30Suwe
2311.63Suwej6x0lcd*	at shb?			# LCD power, brightness, contrast
2321.32Suwe
2331.63Suwej6x0tp*		at adc?			# touch panel
2341.30Suwewsmouse*	at j6x0tp? mux 0	# - as a pointing device
2351.30Suwewskbd1		at j6x0tp? mux 1	# - "hard icons" as keys
2361.30Suwe# Do not convert hard icons to key presses while serving mouse input.
2371.38Suchoptions 	J6X0TP_WSMOUSE_EXCLUSIVE
2381.30Suwe# Customization for the mini-keymap of hard icons.
2391.40Suwe#options 	J6X0TP_SETTINGS_ICON_KEYSYM="KS_Home"
2401.40Suwe#options 	J6X0TP_PGUP_ICON_KEYSYM="KS_Prior"
2411.40Suwe#options 	J6X0TP_PGDN_ICON_KEYSYM="KS_Next"
2421.40Suwe#options 	J6X0TP_SWITCH_ICON_KEYSYM="KS_End"
2431.1Such
2441.18Such#
2451.18Such# HITACHI PERSONA (HPW-50PAD, HPQ-650PA)
2461.18Such#
2471.20Suchcom0		at hd64461if?
2481.20Such
2491.75Skiyoharapsh3pwr*	at adc?			# PERSONA SH3 battery, on/off, etc
2501.75Skiyohara
2511.63Suwepsh3lcd*	at shb?			# LCD power, brightness, contrast
2521.58Skiyohara
2531.48Skiyoharapsh3tp*		at adc?			# PERSONA SH3 touch panel
2541.48Skiyoharawsmouse*	at psh3tp? mux 0
2551.48Skiyohara
2561.63Suwe#
2571.63Suwe# Common HD64461 devices
2581.63Suwe#
2591.59Skiyoharahd64461if* at shb?
2601.63Suwe
2611.59Skiyoharahd64461pcmcia*	at hd64461if?
2621.63Suwe#options 	HD64461PCMCIA_DEBUG
2631.59Skiyohara#options 	HD64461PCMCIA_REORDER_ATTACH	# attach channel 1 (CF) first
2641.63Suwe
2651.59Skiyoharahd64461video*	at hd64461if?
2661.63Suwe#options 	HD64461VIDEO_DEBUG
2671.63Suwe#options 	HD64461VIDEO_HWACCEL		# XXX: too slow to bother
2681.63Suwe
2691.59Skiyohara
2701.1Such#
2711.1Such# machine independent part
2721.1Such#
2731.40Suwe
2741.1Such# PCMCIA bus support
2751.40Suwe#pcmcia* at hd64461pcmcia? controller ? socket ?
2761.1Suchpcmcia0 at hd64461pcmcia? controller 0 socket ?	# I/O card, memory card
2771.1Suchpcmcia1 at hd64461pcmcia? controller 1 socket ? # memory card only
2781.1Such
2791.40Suwe# PCMCIA IDE controllers
2801.40Suwe#wdc*	at pcmcia? function ?
2811.40Suwewdc0	at pcmcia1 function ?		# CF slot
2821.40Suwewdc1	at pcmcia0 function ?		# PC Card slot
2831.40Suwe
2841.40Suwe# ATA (IDE) bus support
2851.40Suwe#atabus* at ata?
2861.40Suweatabus0 at wdc0 channel ?		# CF slot
2871.40Suweatabus1 at wdc1 channel ?		# PC Card slot
2881.40Suwe
2891.40Suwe# IDE drives
2901.40Suwewd*	at atabus? drive ? flags 0x0000
2911.40Suwe
2921.1Such# PCMCIA network interfaces
2931.114Srin#ep*	at pcmcia0 function ?		# 3Com EtherLink III Ethernet
2941.31Suwembe*	at pcmcia0 function ?		# MB8696x based Ethernet
2951.1Suchne*	at pcmcia0 function ?		# NE2000-compatible Ethernet
2961.31Suwewi*	at pcmcia0 function ?		# Lucent/Intersil WaveLan IEEE (802.11)
2971.22Such
2981.40Suwe# MII/PHY support
2991.42Suwelxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
3001.40Suwensphyter* at mii? phy ?			# NS83843 PHYs
3011.114Srin#tqphy* at mii? phy?			# TDK Semiconductor PHYs
3021.5Suchukphy*	at mii? phy ?			# generic unknown PHYs
3031.1Such
3041.38Such# PCMCIA Serial Devices
3051.38Suchcom*	at pcmcia? function ?		# Modems and serial cards
3061.38Such
3071.78Skiyohara# Bluetooth Controller and Device support 
3081.78Skiyohara
3091.78Skiyohara# Bluetooth PCMCIA Controllers
3101.78Skiyoharabt3c*	at pcmcia? function ?		# 3Com 3CRWB6096-A
3111.78Skiyoharabtbc*	at pcmcia? function ?		# AnyCom BlueCard LSE041/039/139
3121.78Skiyohara
3131.78Skiyohara# Bluetooth Device Hub
3141.78Skiyoharabthub*	at bcsp? 
3151.78Skiyoharabthub*	at bt3c? 
3161.78Skiyoharabthub*	at btbc?
3171.78Skiyoharabthub*	at btuart?
3181.78Skiyohara
3191.78Skiyohara# Bluetooth HID support
3201.78Skiyohara#bthidev* at bthub?
3211.78Skiyohara
3221.78Skiyohara# Bluetooth Mouse
3231.78Skiyohara#btms*	at bthidev? reportid ?
3241.78Skiyohara#wsmouse* at btms? mux 0
3251.78Skiyohara
3261.78Skiyohara# Bluetooth Keyboard
3271.78Skiyohara#btkbd*	at bthidev? reportid ?
3281.78Skiyohara#wskbd*	at btkbd? console ? mux 1
3291.78Skiyohara
3301.91Splunky# Bluetooth Apple Magic Mouse
3311.91Splunky#btmagic* at bthub?
3321.91Splunky#wsmouse* at btmagic? mux 0
3331.91Splunky
3341.78Skiyohara# Bluetooth Audio support
3351.78Skiyohara#btsco*	at bthub?
3361.78Skiyohara
3371.40Suwe
3381.40Suwe# Pseudo-Devices
3391.40Suwe
3401.40Suwe# disk/mass storage pseudo-devices
3411.66Scube#pseudo-device	vnd			# disk-like interface to files
3421.51Shubertf#options 	VND_COMPRESSION		# compressed vnd(4)
3431.88Spookapseudo-device	fss			# file system snapshot device
3441.1Such
3451.1Such# network pseudo-devices
3461.38Suchpseudo-device	loop			# network loopback
3471.66Scubepseudo-device	ppp			# serial-line IP ports
3481.65Srpaulopseudo-device	bpfilter		# Berkeley packet filter
3491.112Ssevanpseudo-device	carp			# Common Address Redundancy Protocol
3501.111Smaxv#pseudo-device	npf			# NPF packet filter
3511.1Such
3521.81Stls#
3531.81Stls# accept filters
3541.81Stlspseudo-device   accf_data		# "dataready" accept filter
3551.81Stlspseudo-device   accf_http		# "httpready" accept filter
3561.81Stls
3571.1Such# miscellaneous pseudo-devices
3581.1Suchpseudo-device	pty			# pseudo-terminals
3591.25Slukempseudo-device	clockctl		# user control of clock subsystem
3601.40Suwe#pseudo-device	irframetty		# IrDA frame line discipline
3611.31Suwepseudo-device	ksyms			# kernel symbol table interface
3621.78Skiyoharapseudo-device	bcsp			# BlueCore Serial Protocol
3631.78Skiyoharapseudo-device	btuart			# Bluetooth HCI UART (H4)
3641.116Sriastradpseudo-device 	swwdog			# software watchdog timer -- swwdog(4)
3651.1Such
3661.40Suwe# a pseudo device needed for Coda	# also needs CODA (above)
3671.99Schristos#pseudo-device	vcoda			# coda minicache <-> venus comm.
3681.40Suwe
3691.40Suwe# wscons pseudo-devices
3701.40Suwepseudo-device	wsmux			# mouse & keyboard multiplexor
3711.40Suwe#pseudo-device	wsfont			# dynamic font loading support
3721.40Suwe#pseudo-device	hpf1275a		# HP F1275A external keyboard
3731.40Suwe#wskbd* at hpf1275a? mux 1
3741.62Selad
3751.112Ssevaninclude "dev/veriexec.config"
3761.117Sabs
3771.117Sabs# Pull in optional local configuration - always at end
3781.117Sabscinclude	"arch/hpcsh/conf/GENERIC.local"
379