#	$OpenBSD: RAMDISK,v 1.80 2015/07/17 22:52:29 tedu Exp $

machine		sparc
maxusers	4

option		TIMEZONE=0
option		DST=0
option		SMALL_KERNEL
option		NO_PROPOLICE
option		BOOT_CONFIG

option		RAMDISK_HOOKS		# 16384+size(bsd) < RELOC(boot,bootxx)
option		MINIROOTSIZE=4000

option		FFS
option		CD9660
option		INET6
option		NFSCLIENT

option		WSEMUL_SUN	# provide sun terminal emulation; required
option		WSEMUL_NO_VT100	# do not provide vt100 terminal emulation

option		SUN4		# sun4/100, sun4/200, sun4/300
option		SUN4C		# sun4c - SS1, 1+, 2, ELC, SLC, IPC, IPX, etc.
option		SUN4E		# sun4e - SPARCengine 1E
option		SUN4M		# sun4m - SS10, SS20, Classic, etc.

config		bsd root on rd0a

mainbus0	at root
cpu0		at mainbus0

sbus0		at mainbus0			# sun4c and sun4e
obio0		at mainbus0			# sun4 and sun4m
vmes0		at mainbus0			# sun4
vmel0		at mainbus0			# sun4
iommu0		at mainbus0			# sun4m
sbus0		at iommu0			# sun4m

auxreg*		at mainbus0			# sun4c and sun4e
auxreg*		at obio0			# sun4m
power0		at obio0			# sun4m

# Mostek clock found on 4/300, sun4c, and sun4m systems.
# The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
clock0		at mainbus0			# sun4c and sun4e
clock0		at obio0			# sun4m
clock0		at obio0 addr 0xf2000000	# sun4/300
oclock0		at obio0 addr 0xf3000000	# sun4/100 and sun4/200

memreg0		at mainbus0			# sun4c and sun4e
memreg0		at obio0			# sun4m
memreg0		at obio0 addr 0xf4000000	# sun4

eccmemctl0 at mainbus0				# sun4m

timer0		at mainbus0			# sun4c and sun4e
timer0		at obio0			# sun4m
timer0		at obio0 addr 0xef000000	# sun4/300

eeprom0		at obio0 addr 0xf2000000	# sun4/100 and sun4/200

# Zilog 8530 serial chips.  Each has two-channels.
# zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
zs0		at mainbus0			# sun4c and sun4e
zs0		at obio0			# sun4m
zs0		at obio0 addr 0xf1000000 level 12 # sun4
zs1		at mainbus0			# sun4c and sun4e
zs1		at obio0			# sun4m
zs1		at obio0 addr 0xf0000000 level 12 # sun4
zs2		at obio0 addr 0xe0000000 level 12 # sun4/300

zstty*		at zs?
zskbd*		at zs?
wskbd*		at zskbd?

xbox*		at sbus?			# SBus Expansion box
sbus*		at xbox?

# The flags on the esp entries below work around deficiencies in the driver:
#	bits 0-7:  disable disconnect/reselect for the corresponding target
#	bits 8-15: disable synch negotiation for target [bit-8]
#	Note: targets 4-7 have disconnect/reselect enabled on the premise
#	      that tape devices normally have one of these targets. Tape
#	      devices should be allowed to disconnect for the SCSI bus
#	      to operate acceptably.

# sun4/300 SCSI - an NCR53c94 or equivalent behind
# an LSI Logic DMA controller
dma0		at obio0 addr 0xfa001000 level 4 # sun4/300
esp0		at obio0 addr 0xfa000000 level 4 flags 0x00ff000f

# sun4c or sun4m SCSI - an NCR53c94 or equivalent behind
# specialized DMA glue
dma0		at sbus0			# on-board SCSI
esp0		at sbus0 flags 0x00ff000f	# sun4c and sun4e
esp0		at dma0 flags 0x00ff000f	# sun4m

# FSBE/S SCSI - an NCR53c94 or equivalent behind
dma*		at sbus?			# SBus SCSI
esp*		at sbus? flags 0x00ff000f	# two flavours
esp*		at dma? flags 0x00ff000f	# depending on model

ledma0		at sbus?			# sun4m on-board
le0		at ledma0
ledma*		at sbus?			# Anteres sbus
le*		at ledma?

lebuffer0	at sbus0			# sun4m SBus
lebuffer*	at sbus?			# sun4m SBus
le0		at lebuffer0
le*		at lebuffer?

# sun4/300 and sun4c Ethernet - an AMD 7990 LANCE
le0		at sbus0			# sun4c/sun4e on-board
le*		at sbus?
le0		at obio0 addr 0xf9000000 level 6 # sun4/300

# sun4/100 and sun4/200 Ethernet - an Intel 82586 on-board
# or on a Multibus/VME card.
ie0		at obio0 addr 0xf6000000 level 6 # sun4/100 and sun4/200
ie1		at vmes0 addr 0xffe88000 level 5 vect 0x75
ie2		at vmes0 addr 0xff31ff02 level 5 vect 0x76
ie3		at vmes0 addr 0xff35ff02 level 5 vect 0x77
ie4		at vmes0 addr 0xff2dff02 level 5 vect 0x7c

hme*		at sbus?
qec*		at sbus?
qe*		at qec?
be*		at qec?
gem*		at sbus?

gentbi*		at mii?				# Generic 1000BASE-X ten-bit PHY
nsphy*		at mii?				# NS and compatible PHYs
qsphy*		at mii?				# Quality Semi QS6612 PHYs
luphy*		at mii?				# Lucent LU6612 PHY
ukphy*		at mii?

# Xylogics 753 or 7053 VME SMD disk controllers and disks, found
# on sun4 systems.
xdc0		at vmel0 addr 0xffffee80 level 3 vect 0x44
xdc1		at vmel0 addr 0xffffee90 level 3 vect 0x45
xdc2		at vmel0 addr 0xffffeea0 level 3 vect 0x46
xdc3		at vmel0 addr 0xffffeeb0 level 3 vect 0x47
xd*		at xdc?

# Xylogics 451 or 451 VME SMD disk controllers and disks, found
# on sun4 systems.
xyc0		at vmes0 addr 0xffffee40 level 3 vect 0x48
xyc1		at vmes0 addr 0xffffee48 level 3 vect 0x49
xy*		at xyc?

# NCR5380-based "Sun SCSI 3" VME SCSI controller.
# This driver has several flags which may be enabled by OR'ing
# the values and using the "flags" directive.  Valid flags are:
#	0x01		Use DMA (may be polled)
#	0x02		Use DMA completion interrupts
#	0x04		Allow disconnect/reselect
si0		at vmes0 addr 0xff200000 level 3 vect 0x40 flags 0x01

# NCR5380-based "SCSI Weird" on-board SCSI interface found
# on sun4/100 systems.  The flags are the same as the "si"
# controller.  Note, while DMA is enabled by default, only
# polled DMA works at this time, and reselects do not work
# on this particular controller.
sw0		at obio0 addr 0xfa000000 level 3 flags 0x01

bwtwo0		at sbus0			# sun4c on-board
bwtwo*		at sbus?			# sun4c and sun4m
bwtwo0		at obio0 addr 0xfd000000 level 4 # sun4/200
bwtwo0		at obio0 addr 0xfb300000 level 4 # sun4/100 and sun4/300 P4
wsdisplay*	at bwtwo?
cgtwo0		at vmes0 addr 0xff400000 level 4 vect 0xa8
wsdisplay*	at cgtwo?
cgthree*	at sbus?
wsdisplay*	at cgthree?
cgfour0		at obio0 addr 0xfb300000 level 4 # sun4/100 and sun4/300 P4
wsdisplay*	at cgfour?
cgsix0		at sbus?
cgsix*		at sbus?
cgsix0		at obio0 addr 0xfb000000 level 4 # sun4/100 and sun4/300 P4
wsdisplay*	at cgsix?
cgeight0	at obio0 addr 0xfb300000 level 4 # sun4/100 and sun4/300 P4
wsdisplay*	at cgeight?
tcx*		at sbus?
wsdisplay*	at tcx?
cgfourteen0	at obio0 addr 0x9c000000 flags 0x0001	# sun4m
cgfourteen1	at obio0 addr 0x90000000 flags 0x0001	# sun4m
wsdisplay*	at cgfourteen?
cgtwelve*	at sbus?
wsdisplay*	at cgtwelve?
zx*		at sbus?
wsdisplay*	at zx?
vigra*		at sbus?
wsdisplay*	at vigra?
pninek0		at sbus?
btcham0		at obio?
wsdisplay*	at pninek?
pnozz0		at sbus?
wsdisplay*	at pnozz?
tvtwo*		at sbus?
wsdisplay*	at tvtwo?
agten*		at sbus?
wsdisplay*	at agten?
mgx*		at sbus?
wsdisplay*	at mgx?
rfx*		at sbus?
wsdisplay*	at rfx?

scsibus*	at scsi?
sd*		at scsibus?
#st*		at scsibus?
cd*		at scsibus?

fdc0		at mainbus0			# sun4c controller
fdc0		at obio0			# sun4m controller
fd*		at fdc0

pseudo-device	rd 1
pseudo-device	loop 1
pseudo-device	bpfilter 1
pseudo-device	vlan
