1# $NetBSD: GENERIC,v 1.118 2024/01/29 18:27:12 christos Exp $
2#
3# GENERIC machine description file
4#
5# This machine description file is used to generate the default NetBSD
6# kernel.  The generic kernel does not include all options, subsystems
7# and device drivers, but should be useful for most applications.
8#
9# The machine description file can be customised for your specific
10# machine to reduce the kernel size and improve its performance.
11#
12# For further information on compiling NetBSD kernels, see the config(8)
13# man page.
14#
15# For further information on hardware support for this architecture, see
16# the intro(4) man page.  For further information about kernel options
17# for this architecture, see the options(4) man page.  For an explanation
18# of each device driver in this file see the section 4 man page for the
19# device.
20
21#
22# This kernel supports...
23#	HP Jornada 680/690
24#	HP 620LX/660LX
25#	HITACHI HPW50PA
26#
27
28include 	"arch/hpcsh/conf/std.hpcsh"
29
30options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
31
32maxusers	32			# estimated number of users
33
34options 	HZ=64			# default clock rate
35
36# System options specific to hpcsh
37
38# CPU support.  At least one is REQUIRED.
39options 	SH3
40#options 	SH4
41
42# Example of how to set gcc optimization options (XXX: not tested)
43#makeoptions	COPTS="-Os"		# generic
44#makeoptions	CPUFLAGS="-m3"		# CPU specific
45
46#
47# PCLOCK is estimated by kernel.
48#				PCLOCK		CPU CLOCK
49#	HP Jornada 680/690	22.22MHz	133MHz
50#	HP 620LX		18.75MHz	 75MHz
51#	HITACHI HPW50PA		25MHz		100MHz
52#
53#options 	PCLOCK=...
54
55# in-kernel bootloader, see kloader(4)
56options 	KLOADER
57#options 	KLOADER_KERNEL_PATH="\"/netbsd\""
58#options 	KLOADER_DEBUG
59
60#options 	HPC_DEBUG_INTERRUPT_MONITOR
61#options 	KSTACK_DEBUG
62
63
64# Standard system options
65
66#options 	RTC_OFFSET=-540 # hardware clock is this many mins. west of GMT
67				# (overrides tz info that hpcboot.exe passes)
68
69options 	KTRACE		# system call tracing via ktrace(1)
70
71options 	SYSVMSG		# System V-like message queues
72options 	SYSVSEM		# System V-like semaphores
73options 	SYSVSHM		# System V-like memory sharing
74
75#options 	MODULAR		# new style module(7) framework
76#options 	MODULAR_DEFAULT_AUTOLOAD
77
78options 	USERCONF		# userconf(4) support
79options 	PIPE_SOCKETPAIR		# smaller, but slower pipe(2)
80options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
81
82# Alternate buffer queue strategies for better responsiveness under high
83# disk I/O load.
84#options 	BUFQ_READPRIO
85#options 	BUFQ_PRIOCSCAN
86
87# Alternate buffer queue strategies for better responsiveness under high
88# disk I/O load.
89#options 	BUFQ_READPRIO
90options 	BUFQ_PRIOCSCAN
91
92# Diagnostic/debugging support options
93#options 	DIAGNOSTIC	# expensive kernel consistency checks
94#options 	DEBUG		# expensive debugging checks/support
95#options 	DDB		# in-kernel debugger
96#options 	DDB_ONPANIC=1	# see also sysctl(7): `ddb.onpanic'
97#options 	DDB_HISTORY_SIZE=512	# enable history editing in DDB
98#options 	KGDB		# remote debugger
99#options 	KGDB_DEVRATE=19200
100#options 	KGDB_DEVNAME="\"scif\""		# HP Jornada
101#options 	KGDB_DEVNAME="\"hd64461uart\""	# HITACHI PERSONA (SH3)
102#options 	KGDB_DEVNAME="\"hd64465uart\""	# HITACHI PERSONA (SH4)
103#makeoptions	DEBUG="-g"	# compile full symbol table
104
105# Compatibility options
106include 	"conf/compat_netbsd15.config"
107#options 	BSDDISKLABEL_EI	# endian independent disklabel support
108
109# Executable format options
110options 	EXEC_COFF	# 32-bit COFF executables
111
112# File systems
113file-system 	FFS		# UFS
114file-system 	MFS		# memory file system (requires FFS)
115#file-system 	EXT2FS		# second extended file system (linux)
116file-system 	MSDOSFS		# MS-DOS file system
117file-system	NFS		# Sun NFS-compatible filesystem client
118#file-system 	NULLFS		# loopback file system
119#file-system 	UMAPFS		# NULLFS + uid and gid remapping
120#file-system 	UNION		# union file system
121#file-system 	OVERLAY		# overlay file system
122#file-system 	FDESC		# /dev/fd
123file-system 	KERNFS		# /kern
124file-system 	PROCFS		# /proc
125#file-system	CODA		# Coda File System; also needs vcoda (below)
126file-system	PTYFS		# /dev/pts/N support
127#file-system	TMPFS		# Efficient memory file-system
128#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system
129
130# File system options
131#options 	FFS_EI		# FFS Endian Independent support
132options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
133#options 	UFS_DIRHASH	# UFS Large Directory Hashing
134#options 	UFS_EXTATTR	# Extended attribute support for UFS1
135options 	WAPBL		# File system journaling support
136
137# Networking options
138options 	INET		# IP + ICMP + TCP + UDP
139options 	INET6		# IPV6
140
141options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
142options 	PPP_DEFLATE	# Deflate compression support for PPP
143options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
144
145#options 	ALTQ		# Manipulate network interfaces' output queues
146#options 	ALTQ_BLUE	# Stochastic Fair Blue
147#options 	ALTQ_CBQ	# Class-Based Queueing
148#options 	ALTQ_CDNR	# Diffserv Traffic Conditioner
149#options 	ALTQ_FIFOQ	# First-In First-Out Queue
150#options 	ALTQ_FLOWVALVE	# RED/flow-valve (red-penalty-box)
151#options 	ALTQ_HFSC	# Hierarchical Fair Service Curve
152#options 	ALTQ_LOCALQ	# Local queueing discipline
153#options 	ALTQ_PRIQ	# Priority Queueing
154#options 	ALTQ_RED	# Random Early Detection
155#options 	ALTQ_RIO	# RED with IN/OUT
156#options 	ALTQ_WFQ	# Weighted Fair Queueing
157
158# These options enable verbose messages for several subsystems.
159# Warning, these may compile large string tables into the kernel!
160options 	MIIVERBOSE	# verbose PHY autoconfig messages
161#options 	PCMCIAVERBOSE	# verbose PCMCIA configuration messages
162
163options 	NFS_BOOT_DHCP
164
165#
166# wscons options
167#
168# builtin terminal emulations
169options 	WSEMUL_VT100
170# allocate a number of virtual screens at autoconfiguration time
171options 	WSDISPLAY_DEFAULTSCREENS=4
172
173# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
174options 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
175#options 	WS_DEFAULT_FG=WSCOL_WHITE
176#options 	WS_DEFAULT_BG=WSCOL_BLACK
177#options 	WS_DEFAULT_COLATTR="(0)"
178#options 	WS_DEFAULT_MONOATTR="(0)"
179options 	WS_KERNEL_FG=WSCOL_BROWN
180options 	WS_KERNEL_BG=WSCOL_BLUE
181#options 	WS_KERNEL_COLATTR=""
182#options 	WS_KERNEL_MONOATTR=""
183
184# compatibility to other console drivers
185options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
186options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
187options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
188options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
189
190options 	FONT_VT220L8x10			# the console font
191
192
193# Kernel root file system and dump configuration.
194config		netbsd	root on ? type ?
195
196#
197# Device configuration
198#
199mainbus0 at root
200
201# temporally power management
202hpcapm0		at mainbus0			# power management
203apmdev0		at hpcapm0			# APM
204btnmgr0		at mainbus0
205wskbd*		at btnmgr0 mux 1
206
207cpu*		at mainbus?
208shb*		at mainbus?
209rtc*		at shb?
210adc*		at shb?			# analog->digital converter
211pfckbd*		at mainbus?
212
213#
214# Workstation Console attachments
215#
216hpcfb*		at hd64461video?
217wsdisplay*	at hpcfb?
218
219hpckbd*		at pfckbd?
220wskbd0		at hpckbd? mux 1
221
222#
223# HP Jornada (620LX/660LX, 680/690)
224#
225scif0		at shb?			# serial port/console
226options 	SCIFCN_SPEED=19200
227# don't need to define SCIFCONSOLE, you can select from the bootloader.
228
229j6x0pwr*	at adc?			# battery, on/off, etc
230
231j6x0lcd*	at shb?			# LCD power, brightness, contrast
232
233j6x0tp*		at adc?			# touch panel
234wsmouse*	at j6x0tp? mux 0	# - as a pointing device
235wskbd1		at j6x0tp? mux 1	# - "hard icons" as keys
236# Do not convert hard icons to key presses while serving mouse input.
237options 	J6X0TP_WSMOUSE_EXCLUSIVE
238# Customization for the mini-keymap of hard icons.
239#options 	J6X0TP_SETTINGS_ICON_KEYSYM="KS_Home"
240#options 	J6X0TP_PGUP_ICON_KEYSYM="KS_Prior"
241#options 	J6X0TP_PGDN_ICON_KEYSYM="KS_Next"
242#options 	J6X0TP_SWITCH_ICON_KEYSYM="KS_End"
243
244#
245# HITACHI PERSONA (HPW-50PAD, HPQ-650PA)
246#
247com0		at hd64461if?
248
249psh3pwr*	at adc?			# PERSONA SH3 battery, on/off, etc
250
251psh3lcd*	at shb?			# LCD power, brightness, contrast
252
253psh3tp*		at adc?			# PERSONA SH3 touch panel
254wsmouse*	at psh3tp? mux 0
255
256#
257# Common HD64461 devices
258#
259hd64461if* at shb?
260
261hd64461pcmcia*	at hd64461if?
262#options 	HD64461PCMCIA_DEBUG
263#options 	HD64461PCMCIA_REORDER_ATTACH	# attach channel 1 (CF) first
264
265hd64461video*	at hd64461if?
266#options 	HD64461VIDEO_DEBUG
267#options 	HD64461VIDEO_HWACCEL		# XXX: too slow to bother
268
269
270#
271# machine independent part
272#
273
274# PCMCIA bus support
275#pcmcia* at hd64461pcmcia? controller ? socket ?
276pcmcia0 at hd64461pcmcia? controller 0 socket ?	# I/O card, memory card
277pcmcia1 at hd64461pcmcia? controller 1 socket ? # memory card only
278
279# PCMCIA IDE controllers
280#wdc*	at pcmcia? function ?
281wdc0	at pcmcia1 function ?		# CF slot
282wdc1	at pcmcia0 function ?		# PC Card slot
283
284# ATA (IDE) bus support
285#atabus* at ata?
286atabus0 at wdc0 channel ?		# CF slot
287atabus1 at wdc1 channel ?		# PC Card slot
288
289# IDE drives
290wd*	at atabus? drive ? flags 0x0000
291
292# PCMCIA network interfaces
293#ep*	at pcmcia0 function ?		# 3Com EtherLink III Ethernet
294mbe*	at pcmcia0 function ?		# MB8696x based Ethernet
295ne*	at pcmcia0 function ?		# NE2000-compatible Ethernet
296wi*	at pcmcia0 function ?		# Lucent/Intersil WaveLan IEEE (802.11)
297
298# MII/PHY support
299lxtphy*	at mii? phy ?			# Level One LXT-970 PHYs
300nsphyter* at mii? phy ?			# NS83843 PHYs
301#tqphy* at mii? phy?			# TDK Semiconductor PHYs
302ukphy*	at mii? phy ?			# generic unknown PHYs
303
304# PCMCIA Serial Devices
305com*	at pcmcia? function ?		# Modems and serial cards
306
307# Bluetooth Controller and Device support 
308
309# Bluetooth PCMCIA Controllers
310bt3c*	at pcmcia? function ?		# 3Com 3CRWB6096-A
311btbc*	at pcmcia? function ?		# AnyCom BlueCard LSE041/039/139
312
313# Bluetooth Device Hub
314bthub*	at bcsp? 
315bthub*	at bt3c? 
316bthub*	at btbc?
317bthub*	at btuart?
318
319# Bluetooth HID support
320#bthidev* at bthub?
321
322# Bluetooth Mouse
323#btms*	at bthidev? reportid ?
324#wsmouse* at btms? mux 0
325
326# Bluetooth Keyboard
327#btkbd*	at bthidev? reportid ?
328#wskbd*	at btkbd? console ? mux 1
329
330# Bluetooth Apple Magic Mouse
331#btmagic* at bthub?
332#wsmouse* at btmagic? mux 0
333
334# Bluetooth Audio support
335#btsco*	at bthub?
336
337
338# Pseudo-Devices
339
340# disk/mass storage pseudo-devices
341#pseudo-device	vnd			# disk-like interface to files
342#options 	VND_COMPRESSION		# compressed vnd(4)
343pseudo-device	fss			# file system snapshot device
344
345# network pseudo-devices
346pseudo-device	loop			# network loopback
347pseudo-device	ppp			# serial-line IP ports
348pseudo-device	bpfilter		# Berkeley packet filter
349pseudo-device	carp			# Common Address Redundancy Protocol
350#pseudo-device	npf			# NPF packet filter
351
352#
353# accept filters
354pseudo-device   accf_data		# "dataready" accept filter
355pseudo-device   accf_http		# "httpready" accept filter
356
357# miscellaneous pseudo-devices
358pseudo-device	pty			# pseudo-terminals
359pseudo-device	clockctl		# user control of clock subsystem
360#pseudo-device	irframetty		# IrDA frame line discipline
361pseudo-device	ksyms			# kernel symbol table interface
362pseudo-device	bcsp			# BlueCore Serial Protocol
363pseudo-device	btuart			# Bluetooth HCI UART (H4)
364pseudo-device 	swwdog			# software watchdog timer -- swwdog(4)
365
366# a pseudo device needed for Coda	# also needs CODA (above)
367#pseudo-device	vcoda			# coda minicache <-> venus comm.
368
369# wscons pseudo-devices
370pseudo-device	wsmux			# mouse & keyboard multiplexor
371#pseudo-device	wsfont			# dynamic font loading support
372#pseudo-device	hpf1275a		# HP F1275A external keyboard
373#wskbd* at hpf1275a? mux 1
374
375include "dev/veriexec.config"
376
377# Pull in optional local configuration - always at end
378cinclude	"arch/hpcsh/conf/GENERIC.local"
379