freebsd-dev/sys/mips/conf/GXEMUL
Robert Watson 79ee9286f2 Merge a rudimentary gxemul "oldtestmips" port. This consists almost
entirely of one machdep file lifted from the MALTA port, as well as
a low-level console and tty driver for the gxemul debugging console
device (the emulators stdio).  As with many low-level embedded and
hypervisor console devices, it is polled only, so we drive TTY I/O
from a callout; we are perhaps a bit too aware of the MIPS physical
maps in order to attach the console before newbus comes to life.

The sample kernel configuration depends on an MD-based root file
system, which is not provided.  However, any 64-bit, big-endian
userspace image (such as one generated for MALTA) should work.

This will hopefully be supplemented by additional device drivers for
gxemul-specific hardware simulations from Juli Mallett.  We have
found oldtestmips quite useful for testing and improving aspects of
the MIPS port, so it's worth supporting better in FreeBSD.

Requested by:	theraven, jmallett
Sponsored by:	DARPA, AFRL
MFC after:	3 weeks
2012-05-02 08:10:15 +00:00

53 lines
1.2 KiB
Plaintext

#
# GXEMUL "oldtestmips" sample kernel configuration.
#
# $FreeBSD$
#
ident GXEMUL
machine mips mips64eb
cpu CPU_MIPS4KC
options HZ=100
makeoptions ARCH_FLAGS="-march=mips64 -mabi=64"
makeoptions KERNLOADADDR=0xffffffff80100000
include "../gxemul/std.gxemul"
hints "GXEMUL.hints" #Default places to look for devices.
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
makeoptions MODULES_OVERRIDE=""
options DDB
options KDB
options SCHED_ULE
options FFS #Berkeley Fast Filesystem
# Debugging for use in -current
#options DEADLKRES #Enable the deadlock resolver
options INVARIANTS #Enable calls of extra sanity checking
options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS
#options WITNESS #Enable checks to detect deadlocks and cycles
#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed
#
# This kernel configuration uses an embedded 8MB memory root file system.
# Adjust the following path based on local requirements.
#
options MD_ROOT # MD is a potential root device
options MD_ROOT_SIZE=8192
#makeoptions MFS_IMAGE=/local/scratch/rnw24/mdroot.img
options ROOTDEVNAME=\"ufs:md0\"
device gxemul_cons
device md
device loop
device random