Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# $NetBSD: KRUPS,v 1.81 2019/04/26 22:46:04 sevan Exp $
# From: NetBSD: GENERIC,v 1.197 2006/12/04 23:43:35 elad Exp
#
# Krups (JavaStation-NC) machine description file
#

include 	"arch/sparc/conf/std.sparc"

options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary

#ident 		"KRUPS-$Revision: 1.81 $"

maxusers	32

## System kernel configuration.  See options(4) for more detail.


# Options for variants of the Sun SPARC architecure.
# We currently support three architecture types; at least one is required.
options 	SUN4M		# sun4m - SS10, SS20, Classic, etc.

# microSPARC-IIep is PCI based sun4m (JavaStation-NC, CP1200, etc)
# This option selects if SUN4M means "normal" 4m or IIep.  Kernels
# with this option turned on will refuse to work on normal 4m.
options 	MSIIEP		# microSPARC-IIep

# XXX: uwe: PROM location conflicts with kernel VA space !!!
options 	PROM_AT_F0
makeoptions	TEXTADDR=E8004000


## System options specific to the sparc machine type

# Blink the power LED on some machines to indicate the system load.
options 	BLINK


#### System options that are the same for all ports

## Root device configuration: change the ?'s if you are going to use a
## nonstandard root partition (other than where the kernel is booted from)
## and/or nonstandard root type (not ffs or nfs).  Normally this can be
## automagically determined at boot time.

config		netbsd	root on ? type ?

## System call tracing (see ktrace(1)).
options 	KTRACE

## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
options 	SYSVMSG		# System V message queues
options 	SYSVSEM		# System V semaphores
#options 	SEMMNI=10	# number of semaphore identifiers
#options 	SEMMNS=60	# number of semaphores in system
#options 	SEMUME=10	# max number of undo entries per process
#options 	SEMMNU=30	# number of undo structures in system
options 	SYSVSHM		# System V shared memory

#options 	USERCONF	# userconf(4) support
#options 	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel

## NFS boot options; tries DHCP/BOOTP then BOOTPARAM
options 	NFS_BOOT_BOOTPARAM
#options 	NFS_BOOT_BOOTP
options 	NFS_BOOT_DHCP


#### wscons options

# builtin terminal emulations
#options 	WSEMUL_SUN		# sun terminal emulation
options 	WSEMUL_VT100		# VT100 / VT220 emulation
options 	WSEMUL_DEFAULT="\"vt100\""

# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
options 	WSDISPLAY_CUSTOM_OUTPUT	# color customization from wsconsctl(8)
#options 	WS_DEFAULT_FG=WSCOL_WHITE
#options 	WS_DEFAULT_BG=WSCOL_BLACK
#options 	WS_DEFAULT_COLATTR="(0)"
options 	WS_KERNEL_FG=WSCOL_GREEN
#options 	WS_KERNEL_BG=WSCOL_BLACK
options 	WS_KERNEL_COLATTR=WSATTR_HILIT

# customization of console border color
options 	WSDISPLAY_CUSTOM_BORDER	# custom border colors via wsconsctl(8)
#options 	WSDISPLAY_BORDER_COLOR=WSCOL_BLUE	# default color

# compatibility to other console drivers
options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some ioctls
options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes

options 	FONT_GALLANT12x22		# PROM font look-alike

#options 	WSKBD_EVENT_AUTOREPEAT		# auto repeat in event mode
#options 	WSKBD_USONLY			# strip off non-US keymaps

# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"

# allocate a number of virtual screens at autoconfiguration time
#options 	WSDISPLAY_DEFAULTSCREENS=4


#### Debugging options

## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
## serial console break or keyboard reset, where the PROM would normally
## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
options 	DDB			# kernel dynamic debugger
options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
#options 	DDB_ONPANIC=1		# see also sysctl(7): `ddb.onpanic'

## You may also use gdb, on another computer connected to this machine over
## a serial port.  Both KGDB_DEV and KGDB_DEVRATE should be specified;
## KGDB_DEV is a dev_t encoded device number of the serial port to use, where
## the minor device number encodes the PROM enumeration of the serial ports,
## i.e.:
## 0xc00 = ttya, 0xc01 = ttyb, 0xc02 = ttyc, 0xc03 = ttyd.
## (Note: ttyc and ttyd are available only on some sun4 models)
#options 	KGDB			# support for kernel gdb
#options 	KGDB_DEV=0xc01		# kgdb device number (this is `ttyb')
#options 	KGDB_DEVRATE=38400	# baud rate


## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
## such that gdb(1) can be used on a kernel coredump.

#makeoptions	DEBUG="-g"
makeoptions	CPUFLAGS="-mcpu=supersparc"


## Adds code to the kernel that does internal consistency checks, and will
## cause the kernel to panic if corruption of internal data structures
## is detected.
#options 	DIAGNOSTIC	# extra kernel sanity checking

## Enable (possibly expensive) debugging code that may also display messages
## on the system console
#options 	DEBUG
#options 	LOCKDEBUG
#options 	SYSCALL_DEBUG

options 	MIIVERBOSE	# verbose PHY autoconfig messages

## `INSECURE' turns off the kernel security level (securelevel = 0 always).
## This allows writing to /dev/mem, loading kernel modules while multi-user,
## and other insecurities good only for development work.  Do not use this
## option on a production machine.
#options 	INSECURE

## `FDSCRIPTS' allows non-readable but executable scripts by providing a
## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
## opaque file mechanism.  Perl calls this "secure setuid scripts."

#options 	FDSCRIPTS
#options 	SETUIDSCRIPTS

## Options for compatibility with previous releases foreign system binaries.
## In the cases of COMPAT_SUNOS, you may need to set up additional user-level
## utilities or system configuration files. See compat_sunos(8).

include 	"conf/compat_netbsd10.config"
options 	COMPAT_SUNOS	# SunOS 4.x binary compatibility

## File systems.  You probably need at least one of FFS or NFS.
file-system	FFS		# Berkeley Fast Filesystem
file-system	NFS		# Sun NFS-compatible filesystem client
file-system	KERNFS		# kernel data-structure filesystem
file-system	NULLFS		# NULL layered filesystem
file-system 	OVERLAY		# overlay file system
file-system	MFS		# memory-based filesystem
file-system	FDESC		# user file descriptor filesystem
file-system	UMAPFS		# uid/gid remapping filesystem
#file-system	LFS		# Log-based filesystem (still experimental)
file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
file-system	PROCFS		# /proc
#file-system	CD9660		# ISO 9660 + Rock Ridge file system
file-system	UNION		# union file system
#file-system	MSDOSFS		# MS-DOS FAT filesystem(s).
#file-system	CODA		# Coda File System; also needs vcoda (below)
file-system	PTYFS		# /dev/pts/N support
#file-system	TMPFS		# Efficient memory file-system
#file-system	UDF		# experimental - OSTA UDF CD/DVD file-system

## File system options.
#options 	NFSSERVER	# Sun NFS-compatible filesystem server
#options 	QUOTA		# legacy UFS quotas
#options 	QUOTA2		# new, in-filesystem UFS quotas
#options 	FFS_EI		# FFS Endian Independent support
options 	FFS_NO_SNAPSHOT	# No FFS snapshot support

## Network protocol support.  In most environments, INET is required.
options 	INET		# IP (Internet Protocol) v4
options 	INET6		# IPV6
#options 	IPSEC		# IP security
#options 	IPSEC_DEBUG	# debug for IP security
#options 	GATEWAY		# packet forwarding ("router switch")
#options 	MROUTING	# packet forwarding of multicast packets
#options 	PIM		# Protocol Independent Multicast
#options 	NETATALK	# AppleTalk (over Ethernet) protocol
options 	NTP		# Network Time Protocol in-kernel support
#options 	PPS_SYNC	# Add serial line synchronization for NTP
options 	PPP_BSDCOMP	# Add BSD compression to ppp device
options 	PPP_DEFLATE	# Add deflate (libz) compression to ppp device
options 	PPP_FILTER	# Add active filters for ppp (via bpf)



#### Main bus and CPU .. all systems.
mainbus0 at root
cpu0	at mainbus0

#### Bus types found on SPARC systems.

msiiep0	at mainbus0	# microSPARC-IIep PCIC, timer, ...

mspcic0	at msiiep0	# PCI tree
pci0	at mspcic0
options 	PCIVERBOSE
#options 	PCI_CONFIG_DUMP	# hangs reading IGA1682 config past offset 64

ebus*	at pci?	dev ? function ?		# ebus devices


#### Standard system devices -- all required for a given architecture

# timer is part of ms-IIep PCIC
timer0	at msiiep0

## ds1287 TOD clock at EBus
rtc*	at ebus?

#### Serial port configuration

## NS16x50 serial chips and clones.
com*	at ebus?


#### Disk controllers and disks

## A disk-like interface to files.  Can be used to create floppy, CD,
## miniroot images, etc.

#pseudo-device	vnd	
#options 	VND_COMPRESSION		# compressed vnd(4)

## Memory disk device, used on boot floppies with compressed
## kernel-plus-root-disk images.

#pseudo-device	md	


#### Network interfaces

## Happy Meal Ethernet
hme*		at pci?	dev ? function ?	# network "hme" compatible

# MII/PHY support
qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs

## Loopback network interface; required
pseudo-device	loop

## SLIP and CSLIP interfaces, for IP over a serial line.
#pseudo-device	sl		

## PPP, the successor to SLIP.  See pppd(8).
#pseudo-device	ppp		

## PPP over Ethernet (RFC 2516)
#pseudo-device	pppoe

## Network "tunnel" device, allowing protocol stacks to run in the userland.
## This is used by the third-party user-mode "ppp" program, and others.
#pseudo-device	tun		
#pseudo-device	tap			# virtual Ethernet

## Generic L3 over IP tunnel
#pseudo-device	gre			# generic L3 over IP tunnel

## Berkeley Packet Filter, required to run RARPD.  A generic C-language
## interface that allows selective examining of incoming packets.
pseudo-device	bpfilter

#pseudo-device	carp			# Common Address Redundancy Protocol

#pseudo-device	npf			# NPF packet filter

## for IPv6
#pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device	faith			# IPv[46] tcp relay translation i/f
#pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation

## IEEE 802.1Q Virtual LAN encapsulation, see vlan(4).
#pseudo-device	vlan

#### Audio and video devices

## /dev/audio support
audiocs*	at ebus?		# SUNW,CS4231
audio*		at audiocs?

spkr*		at audio?		# PC speaker (synthesized)

# wscons
pckbc*		at ebus?		# PC keyboard controller
pckbd*		at pckbc?		# PC keyboard
pms*		at pckbc?		# PS/2 mouse for wsmouse
igsfb*		at pci? dev ? function ?
wsdisplay*	at igsfb? console ?
wskbd* 		at pckbd? console ?
wsmouse*	at pms? mux 0


#### Other device configuration

## Pseudo ttys, required for network logins and programs like screen.

pseudo-device	pty			# pseudo-terminals

## Random device, used to implement /dev/random (a source of random noise),
## and generate randomness for some kernel formulae.


# a pseudo device needed for Coda	# also needs CODA (above)
#pseudo-device	vcoda			# coda minicache <-> venus comm.

# wscons pseudo-devices
pseudo-device	wsmux			# mouse & keyboard multiplexor
pseudo-device	wsfont

pseudo-device	clockctl		# user control of clock subsystem
pseudo-device	drvctl			# user control of drive subsystem
pseudo-device	ksyms			# /dev/ksyms
pseudo-device	putter			# for puffs and pud

#pseudo-device	fss			# file system snapshot device

# Veriexec
# include "dev/veriexec.config"

#options PAX_MPROTECT=0			# PaX mprotect(2) restrictions
					# (for static binaries only for now)