1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
|
# $OpenBSD: GENERIC,v 1.96 2010/07/02 19:57:14 tedu Exp $
#
# For further information on compiling OpenBSD kernels, see the config(8)
# man page.
#
# For further information on hardware support for this architecture, see
# the intro(4) man page. For further information about kernel options
# for this architecture, see the options(4) man page. For an explanation
# of each device driver in this file see the section 4 man page for the
# device.
machine sparc
include "../../../conf/GENERIC"
maxusers 20 # estimated number of users
# Options for variants of the Sun SPARC architecture.
# At least one is required.
option SUN4 # sun4/100, sun4/200, sun4/300
option SUN4C # sun4c - SS1, 1+, 2, ELC, SLC, IPC, IPX, etc.
option SUN4M # sun4m - SS10, SS20, Classic, etc.
#option MMU_3L # 3-level MMU on sun4/400
#option KGDB # support for kernel gdb
#option KGDBDEV=0xc01 # kgdb device number (dev_t)
#option KGDBRATE=38400 # baud rate
option COMPAT_SVR4 # compatibility with SVR4 binaries
option PROCFS # /proc
option WSEMUL_SUN # provide sun terminal emulation; required
option WSEMUL_NO_VT100 # do not provide vt100 terminal emulation
option WSDISPLAY_COMPAT_RAWKBD # provide raw scancodes; needed for X11
# Generic swap; second partition of root disk or network.
config bsd swap generic
# Main bus and CPU .. all systems.
mainbus0 at root
cpu0 at mainbus0
# Bus types found on SPARC systems.
sbus0 at mainbus0 # sun4c
obio0 at mainbus0 # sun4 and sun4m
vmes0 at mainbus0 # sun4
vmel0 at mainbus0 # sun4
iommu0 at mainbus0 # sun4m
sbus0 at iommu0 # sun4m
audioamd0 at mainbus0 # sun4c
audioamd0 at obio0 # sun4m
audioamd0 at sbus0 # sun4m
audio* at audioamd?
audiocs0 at sbus0 # sun4m
audio* at audiocs?
auxreg* at mainbus0 # sun4c
auxreg* at obio0 # sun4m
# Power status and control register found on Sun4m systems
power0 at obio0
# 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
clock0 at obio0 # sun4m
clock0 at obio0 addr 0xf2000000 # sun4/300
# Intersil clock found on 4/100 and 4/200 systems.
oclock0 at obio0 addr 0xf3000000 # sun4/100 and sun4/200
# Memory error registers.
memreg0 at mainbus0 # sun4c
memreg0 at obio0 # sun4m
memreg0 at obio0 addr 0xf4000000 # sun4
# Timer chip found on 4/300, sun4c, and sun4m systems.
timer0 at mainbus0 # sun4c
timer0 at obio0 # sun4m
timer0 at obio0 addr 0xef000000 # sun4/300
# EEPROM found on 4/100 and 4/200 systems. Note that the 4/300
# doesn't use this driver; the `EEPROM' is in the NVRAM on the
# Mostek clock chip on 4/300 systems.
eeprom0 at obio0 addr 0xf2000000 # sun4/100 and sun4/200
# 8 segment led display on sun4/sun4m systems
led0 at mainbus0 # sun4
led0 at obio0 # sun4/600
# Zilog 8530 serial chips. Each has two-channels.
# zs0 is ttya and ttyb. zs1 is the keyboard and mouse.
zs0 at mainbus0 # sun4c
zs0 at obio0 # sun4m
zs0 at obio0 addr 0xf1000000 level 12 # sun4
zs1 at mainbus0 # sun4c
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?
zsms* at zs?
wsmouse* at zsms?
# Magma serial/parallel port devices
magma* at sbus? # magma serial cards
mtty* at magma?
mbpp* at magma?
# SUNW,spif serial/parallel port devices
spif* at sbus? # spif serial cards
stty* at spif?
sbpp* at spif?
bpp* at sbus? # parallel port
# built-in modem on Tadpole SPARCbook
com* at obio?
# SUNW,xbox SBus Expansion Subsystem
xbox* at sbus? # SBus Expansion box
sbus* at xbox?
#
# Note the flags on the esp entries below, that work around
# deficiencies in the current 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
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
#sun4c, sun4m
isp* at sbus?
# sun4m Ethernet - an AMD 7990 LANCE behind
# specialized DMA glue
ledma0 at sbus0 # sun4m on-board
le0 at ledma0 #
ledma* at sbus0 # Anteres sbus
le* at ledma? #
# Additional SBus LANCE devices - glued on by lebuffer
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 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
# HappyMeal ethernet (will not work on sun4c)
hme* at sbus?
# Quad-ethernet glue device, and sub-devices
qec* at sbus?
qe* at qec?
be* at qec?
# Gigabit ethernet
gem* at sbus?
ti* at sbus?
# 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
#
# E.g. the following would enable DMA, interrupts, and reselect:
# si0 at vmes0 addr 0xff200000 level 3 vect 0x40 flags 0x07
#
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
# Sun "bwtwo" black and white framebuffer, found on sun4, sun4c, and sun4m
# systems.
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?
# Sun "cgtwo" VME color framebuffer.
cgtwo0 at vmes0 addr 0xff400000 level 4 vect 0xa8
wsdisplay* at cgtwo?
# Sun "cgthree" SBus color framebuffer.
cgthree* at sbus?
wsdisplay* at cgthree?
# Sun "cgfour" color framebuffer.
cgfour0 at obio0 addr 0xfb300000 level 4 # sun4/100 and sun4/300 P4
wsdisplay* at cgfour?
# Sun "cgsix" accelerated color framebuffer.
cgsix0 at sbus?
cgsix* at sbus?
cgsix0 at obio0 addr 0xfb000000 level 4 # sun4/100 and sun4/300 P4
wsdisplay* at cgsix?
# Sun "cgeight" 24-bit framebuffer.
cgeight0 at obio0 addr 0xfb300000 level 4 # sun4/100 and sun4/300 P4
wsdisplay* at cgeight?
# Sun "tcx" accelerated color framebuffer.
tcx* at sbus?
wsdisplay* at tcx?
# Sun "cgfourteen" accelerated 24-bit framebuffer.
cgfourteen0 at obio0 addr 0x9c000000 # sun4m
cgfourteen1 at obio0 addr 0x90000000 # sun4m
wsdisplay* at cgfourteen?
# Sun "cgtwelve" (GS) accelerated 24-bit framebuffer.
cgtwelve* at sbus?
wsdisplay* at cgtwelve?
# Sun "leo" (ZX) accelerated 24-bit framebuffer.
zx* at sbus?
wsdisplay* at zx?
# Vigra VS10 or VS12 framebuffer.
vigra* at sbus?
wsdisplay* at vigra?
# Weitek P9000 found on Tadpole SPARCbook 3, with external ``Chameleon'' RAMDAC
pninek0 at sbus?
btcham0 at obio?
wsdisplay* at pninek?
# Weitek P9100 found on Tadpole SPARCbook 3GS/3GX/3TX/3XP
pnozz0 at sbus?
wsdisplay* at pnozz?
# Parallax XVideo and PowerVideo
tvtwo* at sbus?
wsdisplay* at tvtwo?
# Fujitsu AG-10e framebuffer.
agten* at sbus?
wsdisplay* at agten?
# Southland Media Systems MGX/MGXPlus framebuffer.
mgx* at sbus?
wsdisplay* at mgx?
# Vitec/Connectware/AP&D RasterFlex framebuffer series.
rfx* at sbus?
wsdisplay* at rfx?
# Microcontroller found on Tadpole SPARCbook
tctrl0 at obio0
# Sun PCMCIA bridge
stp* at sbus?
pcmcia* at stp?
# PCMCIA controller found on Tadpole SPARCbook
tslot* at sbus?
pcmcia* at tslot?
# PCMCIA devices
wi* at pcmcia? # WaveLAN IEEE 802.11DS
#an* at pcmcia? # Aironet IEEE 802.11DS
ne* at pcmcia? # NE2000-compat ethernet
ep* at pcmcia? # PCMCIA based 3C5xx ethernet
#com* at pcmcia? # PCMCIA modems/serial ports
# Media Independent Interface (mii) drivers (required by hme, ne, ep)
bmtphy* at mii? # Broadcom 10/100 PHYs
gentbi* at mii? # Generic 1000BASE-X ten-bit PHY
lxtphy* at mii? # Level1 LXT970 PHYs
nsphy* at mii? # NS and compatible PHYs
nsphyter* at mii?
qsphy* at mii? # Quality Semi QS6612 PHYs
luphy* at mii? # Lucent LU6612 PHY
tqphy* at mii? # TDK 78Q212x PHYs
ukphy* at mii?
# SCSI bus layer. SCSI devices attach to the SCSI bus, which attaches
# to the underlying hardware controller.
scsibus* at esp?
scsibus* at si?
scsibus* at sw?
scsibus* at isp?
# These entries find devices on all SCSI busses and assign
# unit numers dynamically.
sd* at scsibus? # SCSI disks
st* at scsibus? # SCSI tapes
cd* at scsibus? # SCSI CD-ROMs
ch* at scsibus? # SCSI changer devices
ss* at scsibus? # SCSI scanners
safte* at scsibus? # SCSI accessed fault-tolerant enclosures
ses* at scsibus? # SCSI enclosure services
uk* at scsibus? # unknown SCSI devices
# Floppy controller and drive found on SPARCstations.
fdc0 at mainbus0 # sun4c controller
fdc0 at obio0 # sun4m controller
fd* at fdc0 # the drive itself
# flash memory, sysconfig regs, and VME for Force boards
#scf0 at mainbus0 # FORCE CPU-5V sysconfig
#flash0 at obio0 # FORCE CPU-5V flash-memory
#fga0 at iommu0 # FORCE CPU-5V VME/SBus bridge
#fvme* at fga0 # FORCE CPU-5V
#daadio* at fvme? addr 0x0 level 1 vect 0x1f # Matrix MD-DAADIO board
# Prestoserve NVRAM
#presto* at sbus?
pseudo-device wsmux 2 # mouse & keyboard multiplexor
|