-
Notifications
You must be signed in to change notification settings - Fork 43
/
Copy pathsparc.html
550 lines (484 loc) · 23.6 KB
/
sparc.html
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
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
<!doctype html>
<html lang=en id=platform>
<meta charset=utf-8>
<title>OpenBSD/sparc</title>
<meta name="description" content="the OpenBSD/sparc page">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="openbsd.css">
<link rel="canonical" href="https://www.openbsd.org/sparc.html">
<style>
.note {
color: var(--red);
}
</style>
<h2 id=OpenBSD>
<a href="index.html">
<i>Open</i><b>BSD</b></a>
sparc
</h2>
<hr>
<table><tr><td>
<p>
OpenBSD/sparc runs on most of the 32bit Sun SPARC workstations, including
the sun4, sun4c, sun4e and sun4m architecture families
(but not the 64bit UltraSPARC computers, which are supported by
<a href="sparc64.html">OpenBSD/sparc64</a>).
<p>
<strong>The OpenBSD/sparc port was discontinued after the 5.9 release.</strong>
<p>
A mailing list dedicated to the OpenBSD/sparc and OpenBSD/sparc64 ports is
available at <a href="mailto:[email protected]">[email protected]</a>.
To join the OpenBSD/sparc mailing list, send a message body of <b>"subscribe
sparc"</b> to <a href="mailto:[email protected]">[email protected]</a>.
Please be sure to check our <a href="mail.html">mailing list policy</a> before
subscribing.
</table>
<hr>
<h3 id="history"><strong>History:</strong></h3>
<p>
The original 4.4BSD port was done by Chris Torek as a contract to
LBL. The code was released by Chris in mid-1993, and Theo de Raadt
worked it into shape for the NetBSD tree. Theo and Markus Wild worked
on improving Chris' original SunOS compatibility code into a highly
complete and reliable emulation. Chuck Cranor ported the sun4c code to
the 8KB pagesize sun4 architecture, and Theo merged this code in a
way that would allow the same kernel and programs to run on either
sun4c or sun4 machines (unlike Sun's separate kernel environments).
This last change also required a rewrite of the device configuration
code. Just after the NetBSD/sparc 1.0 release, Peter Galbavy wrote an
ESP SCSI device driver as a replacement for Chris' sparc-specific SCSI
code.
<p>
At this point a conflict emerged between Theo and the other people he
started the NetBSD project with, and Theo was forced by the core group
to resign from NetBSD. After Theo left NetBSD, a few people in the
NetBSD group did some other things for the port: Paul Kranenburg
ported a floppy driver and started writing support for the 4/400.
Chuck spent many long hours working on the ie, xy, xd device drivers.
<p>
Theo continued working independently, and made a number of additions:
P4 support, flexible boot strategy, a few graphics drivers with the help
from John Stone, and masses of bug fixes.
<p>
Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
but tendinitis problems with his wrists and the problems with the NetBSD
core combined made him stop this work. The initial sun4m work was passed
to Aaron Brown of Harvard, who was paid out of Margo Seltzer's research
funds. This initial stuff consisted mostly of a few attempts at building
pmap structure that could support all 3 MMU types efficiently. Also,
David Miller of the UltraLinux project got a little bit involved.
<p>
Theo and Jason Downs merged the NetBSD sparc code back into OpenBSD, making
OpenBSD/sparc usable again. Jason Wright wrote a few new SBus Ethernet
drivers with information from the UltraLinux project and has merged a few bits
from NetBSD sources to improve the stability of this architecture.
Over the time, Art Grabowski fixed various stability or reliability issues,
and added non-executable stack and heap on sun4m machines.
The frame buffer and console code was completely overhauled for OpenBSD 3.2,
improving display speed with some frame buffers, and supporting more cards.
<hr>
<h3 id="status"><strong>Current status:</strong></h3>
<p>
Currently, all the hardware listed in the
<a href="#hardware">supported hardware</a> section below boots
multi-user, and supports enough (if not all) of the on-board devices to
be generally usable.
A growing set of third-party SBus cards are also supported.
<p>
The X Window System works on all supported frame buffers, including
multi-head configurations.
No accelerated server is provided at the moment, although this is being
worked on.
<p>
An important note about OpenBSD/sparc is that it is designed so that
a single kernel can run on <strong>ALL SUPPORTED</strong> SPARC machines. Whereas
SunOS and Solaris have always had separate 'kernel architectures', i.e. sun4,
sun4c, sun4e and sun4m, the same 'GENERIC' OpenBSD kernel will run on all the
supported models.
<p>
Most of the problems with OpenBSD/sparc are believed to stem from the wide
variety of SPARC processor and cache implementations along with their
undocumented bugs, rather than general kernel problems.
Feedback on which models do and do not work reliably is
appreciated, particularly with newer models or upgrades.
<hr>
<h3 id="hardware"><strong>Supported hardware:</strong></h3>
<p>
<h4>Supported machines</h4>
<p>
<ul>
<li> sun4: the VME series
<ul>
<li>4/100: Original SPARC with VME. Many hardware bugs.
<li>4/200: A fairly decent VME-only machine
<li>4/300: a 25MHz VME machine with many devices built onto the main board.
In other respects, it is quite similar to the SS1+.
</ul>
<li> sun4c:
<ul>
<li>SS1: the original 20MHz sun4c.
(Hardware limitations prevent SBus DMA peripherals from working
in some of the slots).
<li>SS1+: 25MHz version of the above.
(Hardware limitations prevent SBus DMA peripherals from working
in some of the slots).
<li>IPC: SS1+ in a cube, with bwtwo graphics builtin
<li>SLC: SS1+ built into a B&W monitor
<li>SS2: 40MHz version of the SS1
<li>IPX: SS2 in a cube, with cgsix graphics builtin
<li>ELC: SS2-performance built into a B&W monitor
</ul>
<li> sun4e:
<ul>
<li>SPARCengine 1e: a 6U VME cross between a sun4 and a sun4c,
similar to a Sun 4/300 with an OpenPROM interface.
</ul>
<li> sun4m:
<ul>
<li>600MP: The original Sun4m machine.
This is a <a href="#mbus">mbus</a> machine with SBus and VME buses.
<li>LC: 50MHz MicroSPARC-1 based machines (aka Classic)
<li>LX: LC with a few more devices
<li>SS4: Reduced cost version of the SS5, available at 70MHz and 110MHz
<li>SS5: MicroSPARC-2 based machines available in 60, 70, 85,
and 110 MHz versions
<li>SS5: TurboSPARC CPUs in accelerated SS5 machines, running at 170 MHz
<li>SS10: Pizzabox <a href="#mbus">mbus</a>-based machine
<li>SS20: Improved Pizzabox <a href="#mbus">mbus</a>-based machine
<li>Sun Voyager
</ul>
</ul>
<p>
The following SPARC clones are also supported (non exhaustive list):
<ul>
<li>Aries Research Inc, Parrot II (SS2 clone)
<li>Axil 243 and 245 (and possibly other models) (SS5 clones)
<li>Axil 320 (SS20 clone)
<li>CPU5V: VME card by Force Computer (sun4m)
<li>DTKstation/Classic+
<li>Fujitsu S-4/Leia2 (MicroSPARC-2 laptop)
<li>Goldstar GWS-40 (SS2 clone)
<li>Opus 5000 (SS1 clone)
<li>Opus 5250 (SS1 clone)
<li>RDI BriteLite
<li>RDI PowerLite: sun4m models, available at 50MHz, 85MHz, and 110MHz
<li>Solair WS19L (SS10 clone)
<li>SPARCbook 3, 3GS, 3GX, 3TX and 3XP by Tadpole (MicroSPARC-2 laptops)
<li>Tatung micro COMPstation 5 (SS5 clone)
<li>Tatung micro COMPstation LX (LX clone)
<li>Tatung TWS,SuperCOMPstation-20S (SS20 clone)
<li>Transtec SS5/170
</ul>
<p>
<h4>Supported devices</h4>
<p>
This list of devices basically declares that any "stock" sun4c or sun4m
"SPARCstation" or "SPARCserver" machine will probably work; for sun4
and sun4e machines one must be more careful.
<ul id="mbus">
<li><strong>Mbus CPU modules</strong>
<ul>
<li>SM30: 30 or 36 MHz SuperSPARC with no secondary cache
<li>SM40: 40 MHz SuperSPARC with no secondary cache
<li>SM41: 40 MHz SuperSPARC with 1MB of secondary cache
<li>SM50: 50 MHz SuperSPARC with no secondary cache
<li>SM51: 50 MHz SuperSPARC with 1MB of secondary cache
<li>SM51-2: 50 MHz SuperSPARC with 2MB of secondary cache
<li>SM61: 60 MHz SuperSPARC with 1MB of secondary cache
<li>SM61-2: 60 MHz SuperSPARC with 2MB of secondary cache
<li>SM71: 75 MHz SuperSPARC with 1MB of secondary cache
<li>SM81: 85 MHz SuperSPARC with 1MB of secondary cache
<li>SM81-2: 85 MHz SuperSPARC with 2MB of secondary cache
<li>SM100: dual 40 MHz Cypress 7C605 with 64KB of primary cache
<li>Ross HyperSPARC RT620/RT625 at 90MHz, with 256KB of primary cache
<li>Ross HyperSPARC RT620/RT625 at 125MHz, with 256KB of primary cache
<li>Ross HyperSPARC RT620/RT625 at 150MHz, with 512KB of primary cache
<li>Ross HyperSPARC RT620/RT625 at 166MHz, with 512KB of primary cache
<li>Ross HyperSPARC RT620/RT625 at 180MHz, with 512KB of primary cache
</ul>
<li><strong>Sun keyboard and mouse</strong>
<ul>
<li>Type 2, 3, 4, and 5 keyboards with several layouts
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/zskbd.4">zskbd</a>)
</ul>
<li><strong>Floppy drives</strong>
<ul>
<li>sun4c and sun4m floppy disk drive
<!-- (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/fd.4">fd</a>) -->
</ul>
<li><strong>Serial ports</strong>
<ul>
<li>ttya and ttyb on-board serial ports
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/zs.4">zs</a>)
(can be used as console if needed)
<li>4/300 ttyc and ttyd on-board serial ports
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/zs.4">zs</a>)
<li>SBus magma serial port cards, including: 4Sp, 8Sp, 12Sp, 16Sp, LC2+1Sp,
2+1Sp, 4+1Sp, 8+2Sp, and 2+1HS Sp.
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/magma.4">magma</a>)
<li>SBus Serial/Parallel Interfaces (SUNW,spif, 501-1931)
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/spif.4">spif</a>)
</ul>
<li><strong>Audio support</strong>
<ul>
<li>on-board audio support for systems with AMD79C30 8-bit audio chips
(this includes sun4c models, SPARCclassic, and 600MP)
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/audioamd.4">audioamd</a>)
<li>SUNW,CS4231 16-bit audio chips found on SPARCstation 4/5
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/audiocs.4">audiocs</a>)
</ul>
<li><strong>Frame buffers</strong>
<ul>
<li>SBus and sun4c/sun4m on-board video:
<ul>
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/bwtwo.4">bwtwo</a> - black and white
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgthree.4">cgthree</a> - 8-bit color, unaccelerated
<br>The cgthree driver also supports the cgRDI, an onboard
cgthree-like frame buffer found in some laptops.
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgsix.4">cgsix</a> - 8-bit color, accelerated (GX, GX+, TGX, TGX+)
<br>This should work with most faithful emulations/clones of the
SBus cgsix.
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgtwelve.4">cgtwelve</a> - 24-bit color, accelerated (but the driver does not support hardware acceleration)
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgfourteen.4">cgfourteen</a> - 8 or 24-bit color, accelerated (but the driver does not support hardware acceleration)
<li>Fujitsu AG-10e
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/agten.4">agten</a>)
- 24-bit color, accelerated (currently only supported in unaccelerated 8-bit
mode)
<li>Parallax XVideo and PowerVideo
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/tvtwo.4">tvtwo</a>)
- 24-bit color, accelerated (but the driver does not support hardware
acceleration)
<li>RasterFlex family
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/rfx.4">rfx</a>)
- 8/24-bit color, accelerated (currently only supported in unaccelerated 8-bit
mode)
<li>Southland Media Systems MGX and MGXPlus (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/mgx.4">mgx</a>)
- 24-bit color, accelerated (currently only supported in unaccelerated 8-bit
mode)
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/tcx.4">tcx</a> - 8 or 24-bit color, accelerated
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/vigra.4">Vigra</a> VS10, VS11 and VS12 SBus frame buffers - 8-bit color, unaccelerated, selectable VGA and Sun-compatible video modes
<li>Weitek Power9000 (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/pninek.4">pninek</a>) - found in Tadpole SPARCbook 3 (8-bit color, accelerated)
<li>Weitek Power9100 (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/pnozz.4">pnozz</a>) - found in Tadpole SPARCbook 3GS, 3GX, 3TX and 3XP (8, 16 or 32-bit color, accelerated)
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/zx.4">ZX</a>
(aka <i>Leo</i>) - 8 or 24-bit color, overlay planes,
double-buffered, 3-D acceleration <span class=note>*</span>
</ul>
<li>4/200 on-board <a href="https://man.openbsd.org/OpenBSD-5.9/sparc/bwtwo.4">bwtwo</a>
<li>P4 video (4/100 and 4/300):
<ul>
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/bwtwo.4">bwtwo</a> - black and white
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgthree.4">cgthree</a> - 8-bit color, unaccelerated
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgfour.4">cgfour</a> - 8-bit color, 1-bit overlay, unaccelerated
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgsix.4">cgsix</a> - 8-bit color, accelerated
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgeight.4">cgeight</a> - 24-bit color, 1-bit overlay, unaccelerated
</ul>
<li>VME video (sun4):
<ul>
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgtwo.4">cgtwo</a> - 8-bit color, unaccelerated
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgthree.4">cgthree</a> - 8-bit color, unaccelerated
<li><a href="https://man.openbsd.org/OpenBSD-5.9/sparc/cgsix.4">cgsix</a> - 8-bit color, accelerated
</ul>
</ul>
<li><strong>Ethernet adapters</strong>
<ul>
<li>on-board AMD Lance Ethernet (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/le.4">le</a>)
<li>SBus AMD Lance Ethernet cards (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/le.4">le</a>)
<li>SBus cards containing both AMD Lance
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/le.4">le</a>)
and SCSI
(<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/esp.4">esp</a>)
<li>on-board Intel 82586 Ethernet 4/100 and 4/200 (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/ie.4">ie</a>)
<li>VME Intel 82586 Ethernet cards (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/ie.4">ie</a>)
<li>SBus 10/100Mbit qec+be found on Sun FastEthernet cards (SUNW,501-2450)
(aka. Sun Fast Ethernet 1.x) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/be.4">be</a>)
<li>SBus Quad 10Mbit qec+qe found on Sun Quad Ethernet cards (SUNW,501-2062) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/qe.4">qe</a>)
<li>SBus 10/100Mbit hme Ethernet cards (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/hme.4">hme</a>)
<span class=note>*</span>
<li>SBus 10/100Mbit SunSwift SUNW,fas Ethernet+SCSI cards (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/hme.4">hme</a>)
<span class=note>*</span>
<li>SBus Quad 10/100Mbit hme and qfe Ethernet cards
(aka. Sun Quad Fast Ethernet 2.x) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/hme.4">hme</a>)
<span class=note>*</span>
<li>SBus Gigabit Ethernet 1.0/1.1 (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/ti.4">ti</a>)
<span class=note>*</span>
<li>SBus Gigabit Ethernet 2.0 (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/gem.4">gem</a>)
<span class=note>*</span>
</ul>
<li><strong>SCSI controllers</strong>
<ul>
<li>on-board SCSI controller (sun4c, sun4e, sun4m, and 4/300) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/esp.4">esp</a>)
<li>SBus SCSI controllers (Also works with several 3rd party
compatible boards) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/esp.4">esp</a>)
<li>SBus cards containing both AMD Lance and SCSI (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/esp.4">esp</a>)
<li>SBus SUNW,fas Ethernet+SCSI cards (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/esp.4">esp</a>)
<span class=note>*</span>
<li>VME "SUN-3"/"si" SCSI controller (interrupt driven DMA) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/si.4">si</a>)
<li>4/110 "SCSI Weird" on-board controller (polled DMA) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/sw.4">sw</a>)
<li>QSP/ISP SCSI controllers (i.e. "PTI,ptisp", "ptisp", "SUNW,isp" and "QLGC,isp") (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/qlw.4">qlw</a>)
</ul>
<li><strong>SMD and other disk controllers</strong>
<ul>
<li>Xylogics 7053 VME SMD disk controller (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/xd.4">xd</a>)
<li>Xylogics 450/451 VME SMD disk controller (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/xy.4">xy</a>)
</ul>
<li><strong>PC Cards (PCMCIA)</strong>
<ul>
<li>PCMCIA Controllers:
<ul>
<li>SBus PCMCIA bridge (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/stp.4">stp</a>)
<li>Tadpole PCMCIA controller (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/tslot.4">tslot</a>)
</ul>
<li>WaveLAN/IEEE, PRISM 2-3, and Spectrum24 IEEE 802.11b PCMCIA/Compact Flash adapters (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/wi.4">wi</a>)
<li>NE2000 based Ethernet Adapters (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/ne.4">ne</a>)
<li>3Com EtherLink (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/ep.4">ep</a>) LAN PC Cards
</ul>
<li><strong>Miscellaneous</strong>
<ul>
<li>SBus Expansion Subsystem (SUNW,xbox) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/xbox.4">xbox</a>)
<li>Force FGA5000 VME/SBus bridge (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/fga.4">fga</a>)
<li>Force system configuration registers (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/scf.4">scf</a>)
<li>Force flash memory (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/flash.4">flash</a>)
<li>Tadpole microcontroller (power/system control) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/tctrl.4">tctrl</a>)
<li>Prestoserve NVRAM SBus cards (limited support) (<a href="https://man.openbsd.org/OpenBSD-5.9/sparc/presto.4">presto</a>)
</ul>
</ul>
<span class=note>*</span> Not supported in sun4c and sun4e class machines
due to PROM limitations.
<br>
<p>
<h4>Unsupported machines</h4>
<p>
<ul>
<li>sun4: 4/400 (lacks support for the I/O cache, and has ethernet problems)
<li>sun4d machines:
<ul>
<li>SPARC Server 1000
<li>SPARC Center 2000
</ul>
These machines use XD-Bus instead of M-Bus for their CPUs, which is not
supported yet.
<li>JavaStation-NC (lacks support for this machine's PCI bus)
<li>sun4u: UltraSPARC 64-bit machines. Most of these are supported in the
<a href="sparc64.html">OpenBSD/sparc64</a> port.
<li>Solbourne machines: these machines are quite different, and some are
plagued by processor bugs. Some of them were covered by the discontinued
<a href="solbourne.html">OpenBSD/solbourne</a> port.
<li>Tadpole SPARCbook 1, LC and 2: these machines use quite unusual components,
and do not have a Sun-compatible PROM.
</ul>
<p>
<h4>Unsupported Devices</h4>
<p>
First of all, there are MANY unsupported devices.
A comprehensive list can probably not be written.
<p>
<ul>
<li><strong>Serial Cards</strong>
<ul>
<li> VME mti 16-port serial card
<li> VME alm2 16-port serial card
<li> VME mcp 4-port serial card (or is it 8-port)
</ul>
<li><strong>Disk and Tape Controllers</strong>
<ul>
<li> VME "sc" SCSI controller
<li> VME IPI controller
<li> VME "xt" Tape controller
</ul>
<li><strong>Frame buffers</strong>
<ul>
<li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered,
unaccelerated without GP/GP2
<li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered,
unaccelerated without GP/GP2
<li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
<li> SBus cgeight 24-bit color, unaccelerated
(note: SBus cgeight is quite different from VME/P4 cgeight)
<li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered,
3-D acceleration (aka Graphics Tower)
</ul>
<li><strong>On-board Audio and ISDN</strong><br>
This is present on some sun4m systems (LX, LC, SPARCstation 10/20).
<li><strong>Multiple Processors/Modules in sun4m systems</strong><br>
OpenBSD will sometimes not boot on some machines with multiple processors.
If this is the case, the extra CPUs must be removed.
<li><strong>SBus SUNW,bpp (parallel port)</strong><br>
A driver exists in the source tree, but it does not work. None of the
developers have printers or cables to work with, to make it work, but
we really would prefer to receive a fixed driver.
<li><strong>SBus FDDI cards</strong>
<li><strong>SBus cards other than those listed above...</strong>
</ul>
<hr>
<h3 id="hwdocs"><strong>Hardware documentation:</strong></h3>
Previous to 2007, it was extremely difficult or impossible to get much of
the necessary hardware documentation for these machines. Members of our
team (in particular David Gwynne) were instrumental in pressuring and
convincing Sun to go back into their archives and dig up the data sheets
that they had written in-house, describing the operation of their chips to
their own engineers. These documents can now be found at
<a href="http://web.archive.org/web/20111209011516/http://wikis.sun.com/display/FOSSdocs/Home">
http://wikis.sun.com/display/FOSSdocs/Home</a>.
Some documents are still missing at that site, so we ask that interested
developers contact Sun and request additional information.
<p>
<hr>
<h3 id="install">
<strong>Getting and installing OpenBSD/sparc:</strong>
</h3>
<p>
The last supported OpenBSD/sparc release was
<a href="59.html">OpenBSD 5.9</a>.
Here are the
<a href="https://ftp.OpenBSD.org/pub/OpenBSD/5.9/sparc/INSTALL.sparc">
OpenBSD/sparc 5.9 installation instructions</a>.
<p>
There are several installation media provided, so that
OpenBSD/sparc can be installed or upgraded via CD and floppy boot images on
sun4c and sun4m, miniroot images for machines without floppies
(such as sun4 machines), as well as network and diskless installs.
<ul>
<li><strong>CD boot</strong>
<p>
Booting off the CD provides a small ffs filesystem with a GENERIC kernel with
drivers for all supported devices found on SPARC machines.<br>
For the latest list of drivers available on this image, take a look at the
<a href="https://cvsweb.openbsd.org/src/sys/arch/sparc/conf/GENERIC?rev=HEAD">GENERIC</a>
kernel configuration file.
The CD can be booted off the OpenPROM prompt with
<pre>
boot cdrom 5.9/sparc/bsd.rd
</pre>
<li><strong>Floppy</strong> (floppy59.fs)
<p>
Booting off the floppy provides a small ffs filesystem with a kernel
containing drivers for the most popular devices found on SPARC machines.<br>
For the latest list of drivers available on this image, take a look at the
<a href="https://cvsweb.openbsd.org/src/sys/arch/sparc/conf/RAMDISK?rev=HEAD">RAMDISK</a>
kernel configuration file.
The floppy can be booted off the OpenPROM prompt with
<pre>
boot floppy
</pre>
<li><strong>Miniroot</strong> (miniroot59.fs)
<p>
The miniroot provides the same installation environment as the bootable CD,
and is intended for easy bootstrap if there is already an operating system
installed on the machine.
After dumping the miniroot to the primary swap partition with dd, the
miniroot can be booted off the OpenPROM prompt with a command such as
<pre>
boot disk:b
</pre>
(the disk designation may be different, depending on the chosen swap
partition).
<p>
<li><strong>Netboot</strong> (boot.net, bsd.rd)
<p>
Using a diskless setup, it is also possible to boot the OpenBSD/sparc
boot loader, <code>boot.net</code>, from the network via tftp, and access
the <code>bsd.rd</code> standalone miniroot over NFS.
Refer to the
<a href="https://man.openbsd.org/OpenBSD-5.9/diskless.8">diskless(8)</a>
manual page for details on how to set up a network boot environment.
</ul>