Annotation of www/sparc.html, Revision 1.103
1.3 fn 1: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML Strict//EN">
2: <html>
1.1 deraadt 3: <head>
1.25 johns 4: <title>OpenBSD/sparc</title>
1.3 fn 5: <link rev=made href=mailto:www@openbsd.org>
6: <meta name="resource-type" content="document">
1.25 johns 7: <meta name="description" content="the OpenBSD/sparc page">
1.3 fn 8: <meta name="keywords" content="openbsd,sparc">
9: <meta name="distribution" content="global">
1.103 ! jufi 10: <meta name="copyright" content="This document copyright 1996-2002 by OpenBSD.">
1.3 fn 11: </head>
12:
1.50 jason 13: <body bgcolor="#FFFFFF" text="#000000" link="#23238E">
1.3 fn 14:
1.50 jason 15: <img alt="[OpenBSD]" src="images/bsd_small.gif">
1.1 deraadt 16:
1.3 fn 17: <hr>
1.50 jason 18:
19: <p>
20: OpenBSD/sparc runs on most of the 32bit Sun SPARC workstations, including
21: the sun4, sun4c, and sun4m architectures
22: (not the 64bit <a href="sparc64.html">Ultra SPARC</a> computers).
23: The current port maintainer is
1.73 deraadt 24: Art Grabowski (<a href="mailto:art@openbsd.org">art@openbsd.org</a>).
1.56 aaron 25: Others are definitely welcome to contribute!
1.50 jason 26: </p>
27:
1.38 downsj 28: <img align=right vspace=5 hspace=5 src="images/sparc.gif">
1.37 deraadt 29: <h3><font color=#0000e0><i>Table of contents</i></font></h3>
1.29 downsj 30: <p>
31: <ul>
1.50 jason 32: <li><a href="#history">Past history of the port</a>
33: <li><a href="#status">Current status</a>
34: <li><a href="#info">Where to get it</a>
35: <li><a href="#hardware">Supported hardware list</a>
36: <li><a href="#projects">Project list</a>
1.29 downsj 37: </ul>
38: </p>
39:
40: <hr>
1.86 jufi 41: <a name=history></a>
1.37 deraadt 42: <h3><font color=#0000e0><strong>History:</strong></font></h3>
1.3 fn 43:
44: <p>
1.1 deraadt 45: The original BSD4.4 port was done by Chris Torek as a contract to
1.50 jason 46: LBL. The code was released by Chris in mid-1993, and Theo de Raadt
1.1 deraadt 47: worked it into shape for the NetBSD tree. Theo and Markus Wild worked
48: on improving Chris' original SunOS compatibility code into a highly
49: complete and reliable emulation. Chuck Cranor ported the sun4c code to
50: the 8KB pagesized Sun4 architecture, and Theo merged this code in a
51: way that would allow the same kernel and programs to run on either
1.64 jason 52: sun4c or sun4 machines (unlike Sun's separate kernel environments).
1.1 deraadt 53: This last change also required a rewrite of the device configuration
1.25 johns 54: code. Just after the NetBSD/sparc 1.0 release, Peter Galbavy wrote an
55: ESP scsi device driver as a replacement for Chris' sparc-specific scsi
1.50 jason 56: code, this new driver unfortunately had some problems and was eventually
57: replaced.
1.3 fn 58: </p>
1.1 deraadt 59:
60: <p>
61: At this point a conflict emerged between Theo and the other people he
62: started the NetBSD project with, and Theo was forced by the core group
63: to resign from NetBSD. After Theo left NetBSD, a few people in the
64: NetBSD group did some other things for the port: Paul Kranenburg
65: ported a floppy driver and started writing support for the 4/400.
66: Chuck spent many long hours working on the ie, xy, xd device drivers.
1.3 fn 67: </p>
1.1 deraadt 68:
69: <p>
70: Theo continued working independently, and made a number of additions:
71: P4 support, flexible boot strategy, a few graphics drivers with help
72: from John Stone, and masses of bug fixes. Many people will be most
73: interested that the ESP scsi driver has been completely replaced by
74: Theo, and that it supports disconnect/reconnect.
1.3 fn 75: </p>
1.1 deraadt 76:
77: <p>
1.25 johns 78: Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
1.36 todd 79: but tendinitis problems with his wrists and the problems with the NetBSD
1.7 deraadt 80: core conspired, and he stopped work. Theo passed his initial sun4m work
81: to Aaron Brown of Harvard, who was paid out of Margo Seltzer's research
82: funds. This initial stuff consisted mostly of a few attempts at building
1.8 deraadt 83: pmap structure that could support all 3 MMU types efficiently. Also,
1.50 jason 84: David Miller of the S/Linux project got a little bit involved.
1.7 deraadt 85: </p>
86:
87: <p>
1.27 downsj 88: Theo and Jason Downs merged the NetBSD sparc code back into OpenBSD, making
1.50 jason 89: OpenBSD/sparc usable again. Jason Wright wrote a few new SBus Ethernet
90: drivers with information from the S/Linux project and has merged a few bits
91: from NetBSD sources to improve the stability of this architecture.
92: </p>
93:
94: <p>
95: And work continues...
1.3 fn 96: </p>
1.1 deraadt 97:
1.28 downsj 98: <hr>
1.86 jufi 99: <a name=status></a>
1.37 deraadt 100: <h3><font color=#0000e0><strong>Current Status:</strong></font></h3>
1.28 downsj 101:
1.1 deraadt 102: <p>
1.50 jason 103: The people working the most on OpenBSD/sparc are
1.81 art 104: Jason Wright, Theo de Raadt, Todd Fries and Artur Grabowski.
1.50 jason 105: </p>
106:
107: <p>
1.34 johns 108: Email may be sent to the maintainers and users of the OpenBSD/sparc port at
109: <a href="mailto:sparc@openbsd.org">sparc@openbsd.org</a>.
1.99 miod 110: To join the OpenBSD/sparc mailing list, send a message body of <b>"subscribe
111: sparc"</b> to <a href="mailto:majordomo@OpenBSD.org">majordomo@OpenBSD.org</a>.
112: Please be sure to check our <a href="mail.html">mailing list policy</a> before
113: subscribing.
1.6 downsj 114: </p>
115:
116: <p>
1.25 johns 117: An important note about OpenBSD/sparc is that it is designed so that
1.30 downsj 118: a single kernel can run on <b>ALL SUPPORTED</b> sparc machines. Whereas
1.92 jufi 119: SunOS and Solaris have always had separate `kernel architectures', i.e. sun4,
1.26 downsj 120: sun4c, and sun4m, the same `GENERIC' OpenBSD kernel will run on all the
121: supported models.
1.15 grr 122: </p>
123:
124: <p>
1.50 jason 125: Most of the problems with OpenBSD/sparc are believed to stem from the wide
126: variety of sparc processor and cache implementations along with their
127: undocumented bugs, rather then general kernel problems.
1.15 grr 128: Feedback on which models do and do not work reliably is
1.77 deraadt 129: appreciated, particularly with newer models or upgrades.
1.15 grr 130: </p>
131:
132: <p>
1.73 deraadt 133: OpenBSD/sparc can be installed or upgraded via floppy boot images on
134: sun4c and sun4m, miniroot images for machines without floppies
135: (and sun4 machines), as well as network and diskless installs.
1.3 fn 136: </p>
137:
138: <hr>
1.86 jufi 139: <a name=info></a>
1.37 deraadt 140: <h3><font color=#0000e0><strong>Where to get it:</strong></font></h3>
1.29 downsj 141:
1.1 deraadt 142: <p>
1.22 johns 143: <ul>
144: <li><a href=ftp.html>Snapshots are made available from time to time.</a>
1.100 miod 145: <li><a href=ftp://ftp.openbsd.org/pub/OpenBSD/3.0/sparc/INSTALL.sparc>Installation information</a>
1.22 johns 146: </ul>
147: </p>
1.3 fn 148:
1.22 johns 149: <p>
1.3 fn 150: <hr>
1.86 jufi 151: <a name=hardware></a>
1.50 jason 152: <h3><font color=#0000e0><strong>Supported hardware list:</strong></font></h3>
1.1 deraadt 153:
1.25 johns 154: <h4>OpenBSD/sparc runs on the following classes of machines:</h4>
1.3 fn 155: <ul>
1.70 deraadt 156: <li> sun4: the VME series
157: <ul>
158: <li>4/100: Original sparc with VME. Many hardware bugs.
159: <li>4/200: A fairly decent VME-only machine
160: <li>4/300: a 25MHz VME machine with many devices built onto the main board.
1.85 miod 161: In other respects, it is quite similar to the SS1+.
1.70 deraadt 162: </ul>
163: <p>
164: <li> sun4c:
165: <ul>
1.73 deraadt 166: <li>SS1: the original 20MHz sun4c.
167: (Hardware limitations prevent SBus DMA peripherals from working
168: in some of the slots).
169: <li>SS1+: 25MHz version of the above.
170: (Hardware limitations prevent SBus DMA peripherals from working
171: in some of the slots).
1.95 miod 172: <li>IPC: SS1+ in a cube, with bwtwo graphics builtin
1.79 rohee 173: <li>SLC: SS1+ built into a B&W monitor
1.70 deraadt 174: <li>SS2: 40MHz version of the SS1
175: <li>IPX: SS2 in a cube, with cgsix graphics builtin
1.79 rohee 176: <li>ELC: SS2-performance built into a B&W monitor
1.70 deraadt 177: </ul>
178: <p>
179: <p>
180: <li> sun4m:
181: <ul>
1.73 deraadt 182: <li>600MP: The original Sun4m machine. This is a <a href=#mbus>mbus</a> machine
1.94 jsyn 183: with SBUS and VME buses.
1.73 deraadt 184: <li>LC: 50MHz MicroSPARC-1 based machines (aka Classic)
1.70 deraadt 185: <li>LX: LC with a few more devices
1.75 deraadt 186: <li>SS4: Reduced cost version of the SS5, available at 70MHz and 110MHz
1.77 deraadt 187: <li>SS5: MicroSPARC-2 based machines available in 60, 70, 85,
188: and 110 MHz versions
189: <li>SS5: TurboSPARC cpus in accelerated SS5 machines, running at 170 MHz
1.73 deraadt 190: <li>SS10: Pizzabox <a href=#mbus>mbus</a>-based machine
191: <li>SS20: Improved Pizzabox <a href=#mbus>mbus</a>-based machine
192: <li>Sun Voyager (untested)
1.70 deraadt 193: </ul>
1.73 deraadt 194:
1.70 deraadt 195: <p>
1.73 deraadt 196: <li>As well, the following clones:
197: <ul>
198: <li>Aries Research Inc, Parrot II (SS2 clone)
1.84 art 199: <li>Axil 243 and 245 (and possibly other models) (SS5 clones)
1.89 art 200: <li>Axil 320 (SS20 clone)
1.73 deraadt 201: <li>Opus 5000 (SS1 clone)
202: <li>Opus 5250 (SS1 clone)
203: <li>SPARCbook 3GX, 3GS, and 3XP by Tadpole (MicroSPARC-2)
204: <li>CPU5V: VME card by Force Computer (sun4m)
205: <li>TWS,SuperCOMPstation-20S (SS20 clone).
206: <li>TATUNG micro COMPstation 5 (SS5 clone)
207: <li>Tatung micro COMPstation LX (LX clone)
208: <li>RDI,PowerLite: sun4m models, available in 50MHz, 85MHz, and 110MHz
209: <li>RDI,BrigeLite
210: <li>DTKstation/Classic+
211: <li>Transtec SS5/170
212: </ul>
213:
1.3 fn 214: </ul>
1.50 jason 215:
216: <h4>Supported devices</h4>
217:
218: <p> This list of basically declares that any `stock' sun4c or sun4m
219: "sparcstation" or "sparcserver" machine will probably work; for sun4 machines
220: one must be more careful.
221:
1.3 fn 222: <ul>
1.73 deraadt 223: <a name=mbus></a>
224: <li><strong> Mbus CPU modules</strong>
1.71 deraadt 225: <ul>
1.77 deraadt 226: <li> SM30: 30 or 36 MHz Supersparc with no secondary cache
227: <li> SM40: 40 MHz SuperSPARC with no secondary cache
228: <li> SM41: 40 MHz SuperSPARC with 1MB of secondary cache
1.92 jufi 229: <li> SM50: 50 MHz SuperSPARC with no secondary cache
1.77 deraadt 230: <li> SM51: 50 MHz SuperSPARC with 1MB of secondary cache
231: <li> SM51-2: 50 MHz SuperSPARC with 2MB of secondary cache
232: <li> SM61: 60 MHz SuperSPARC with 1MB of secondary cache
233: <li> SM61-2: 60 MHz SuperSPARC with 2MB of secondary cache
234: <li> SM71: 75 MHz SuperSPARC with 1MB of secondary cache
235: <li> SM81: 85 MHz SuperSPARC with 1MB of secondary cache
1.73 deraadt 236: <li> SM81-2: 85 MHz SuperSPARC with 2MB of secondary cache
1.77 deraadt 237: <li> SM100: dual 40 MHz Cypress 7C601 with 64KB of primary cache
1.90 art 238: <li> Ross HyperSparc RT620/RT625 at 90MHz, with 256KB of primary cache
1.77 deraadt 239: <li> Ross HyperSparc RT620/RT625 at 125MHz, with 256KB of primary cache
240: <li> Ross HyperSparc RT620/RT625 at 150MHz, with 512KB of primary cache
1.80 deraadt 241: <li> Ross HyperSparc RT620/RT625 at 166MHz, with 512KB of primary cache
1.71 deraadt 242: </ul>
1.77 deraadt 243: <p>
1.71 deraadt 244:
1.73 deraadt 245: <li><strong> Sun keyboard and mouse</strong>
1.50 jason 246: <ul>
247: <li> Type 2, 3, 4, and 5 keyboards with several layouts
248: </ul>
1.19 johns 249:
1.73 deraadt 250: <li><strong> Floppy drives:</strong>
1.19 johns 251: <ul>
1.50 jason 252: <li> sun4c and sun4m floppy disk drive
1.19 johns 253: </ul>
254:
1.73 deraadt 255: <li><strong> Serial ports:</strong>
1.19 johns 256: <ul>
1.50 jason 257: <li> ttya and ttyb on-board serial ports (can be used as console if needed)
258: <li> 4/300 ttyc and ttyd on-board serial ports
259: <li> SBus magma serial port cards, including: 4Sp, 8Sp, 12Sp, 16Sp, LC2+1Sp,
1.101 jason 260: 2+1Sp, 4+1Sp, 8+2Sp, and 2+1HS Sp.
1.60 jason 261: <li> SBus Serial/Parallel Interfaces (SUNW,spif, 501-1931)
1.19 johns 262: </ul>
263:
264:
1.73 deraadt 265: <li><strong> Audio support:</strong>
1.19 johns 266: <ul>
1.55 aaron 267: <li>on-board audio support for systems with AMD79C30 8-bit audio chips
1.66 jason 268: (this includes sun4c models, SPARCclassic, and 600MP)
269: <li>SUNW,CS4231 16-bit audio chips found on SPARCstation 4/5, but on-board
1.62 jason 270: audio for other sun4m systems is not supported
1.19 johns 271: </ul>
272:
1.73 deraadt 273: <li><strong> Framebuffers:</strong>
1.19 johns 274: <ul>
1.33 downsj 275: <li>SBus, MBus and sun4c/sun4m on-board video:
1.19 johns 276: <ul>
1.50 jason 277: <li>bwtwo - black and white.
278: <li>cgthree - 8-bit color, unaccelerated.
279: <br>The cgthree driver also supports the cgRDI, an onboard
280: cgthree-like framebuffer found in some laptops.
281: <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+).
282: <br>This should work with most faithful emulations/clones of the
283: SBus cgsix.
284: <li>cgfourteen - 8-bit color (24-bit MBus accelerated card, but the
285: driver only properly emulates a cgthree).
1.85 miod 286: <li>p9100 - found in Tadpole SPARCbook 3GS and 3GX (8bit unaccelerated)
1.73 deraadt 287: (called "pnozz")
1.50 jason 288: <li>TCX - 8-bit color (24-bit, but driver currently emulates a cgthree).
1.19 johns 289: </ul>
290:
291: <li> 4/200 on-board bwtwo
292:
293: <li> P4 video (4/100 and 4/300):
294: <ul>
1.50 jason 295: <li> bwtwo - black and white
296: <li> cgthree - 8-bit color, unaccelerated
297: <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
298: <li> cgsix - 8-bit color, accelerated
299: <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
1.19 johns 300: </ul>
301:
302: <li> VME video (sun4):
303: <ul>
1.50 jason 304: <li> cgtwo - black and white
305: <li> cgthree - 8-bit color, unaccelerated
306: <li> cgsix - 8-bit color, accelerated
1.19 johns 307: </ul>
308: </ul>
309:
1.73 deraadt 310: <li><strong> Ethernet adapters:</strong>
1.19 johns 311: <ul>
1.50 jason 312: <li> on-board AMD Lance Ethernet
313: <li> SBus AMD Lance Ethernet cards
314: <li> SBus cards containing both AMD Lance and "esp" scsi
315: <li> on-board Intel 82586 Ethernet (ie0 on 4/100 and 4/200)
316: <li> VME Intel 82586 Ethernet cards
1.60 jason 317: <li> SBus 10/100Mbit qec+be found on Sun FastEthernet cards (SUNW,501-2655)
1.54 jason 318: (aka. Sun Fast Ethernet 1.x)
319: <li> SBus Quad 10Mbit qec+qe found on Sun Quad Ethernet cards (SUNW,595-3198)
1.67 jason 320: <li> SBus 10/100Mbit hme Ethernet cards
321: <li> SBus 10/100Mbit SunSwift SUNW,fas Ethernet+SCSI cards
322: <li> SBus Quad 10/100Mbit hme and qfe Ethernet cards
1.54 jason 323: (aka. Sun Quad Fast Ethernet 2.x)
1.19 johns 324: </ul>
325:
1.73 deraadt 326: <li><strong> SCSI controllers:</strong>
1.19 johns 327: <ul>
1.50 jason 328: <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
329: <li> SBus "esp" SCSI controller (Also works with several 3rd party
1.41 deraadt 330: esp compatible boards)
1.50 jason 331: <li> SBus cards containing both AMD Lance and "esp" scsi
332: <li> VME "SUN-3"/"si" SCSI controller (interrupt driven DMA)
333: <li> 4/110 "SCSI Weird"/"sw" on-board controller (polled DMA)
1.92 jufi 334: <li> QSP/ISP scsi controllers (i.e. "PTI,ptisp", "ptisp", "SUNW,isp" and "QLGC,isp").
1.19 johns 335: </ul>
336:
1.73 deraadt 337: <li><strong> SMD and other disk controllers:</strong>
1.19 johns 338: <ul>
1.50 jason 339: <li> Xylogics 7053 VME/SMD disk controller ("xd")
340: <li> Xylogics 450/451 VME disk controller ("xy")
1.19 johns 341: </ul>
342:
1.73 deraadt 343: <li><strong> Miscellaneous:</strong>
1.65 jason 344: <ul>
345: <li> SBus Expansion Subsystem ("xbox")
1.68 jason 346: <li> Force FGA5000 VME/SBus bridge ("fga")
347: <li> Force sysconfig registers ("scf")
348: <li> Force flash memory ("flash")
1.69 jason 349: <li> Tadpole microcontroller (power/system control) ("tctrl")
1.65 jason 350: </ul>
1.3 fn 351: </ul>
1.1 deraadt 352:
1.25 johns 353: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3 fn 354: <ul>
1.50 jason 355: <li> sun4: 4/400 (lacks support for the I/O cache, and has Ethernet problems)
1.74 deraadt 356: <li> sun4d machines<br>
357: SPARC Server 1000<br>
358: SPARC Center 2000<br>
359: These machines use XD-Bus instead of M-Bus for their CPUs, and we do
360: not support that yet.
1.97 miod 361: <li> sun4u: UltraSPARC 64-bit machines. Some of these are supported in the
362: <a href="sparc64.html">OpenBSD/sparc64</a> port.
1.50 jason 363: <li> It does not work on most Solbourne machines, which are quite different.
1.77 deraadt 364: (However, it works on the sun4c/sun4m compatible machines.)
1.3 fn 365: </ul>
1.19 johns 366:
1.1 deraadt 367: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
368: A comprehensive list can probably not be written.</h4>
1.3 fn 369: <ul>
1.73 deraadt 370: <li><strong> Serial Cards:</strong>
1.19 johns 371: <ul>
1.50 jason 372: <li> VME mti 16-port serial card
373: <li> VME alm2 16-port serial card
374: <li> VME mcp 4-port serial card (or is it 8 port)
1.19 johns 375: </ul>
376:
1.73 deraadt 377: <li><strong>Disk Controllers:</strong>
1.19 johns 378: <ul>
1.50 jason 379: <li> VME "sc" SCSI controller
380: <li> VME IPI controller
1.19 johns 381: </ul>
382:
1.73 deraadt 383: <li><strong> Framebuffers:</strong>
1.19 johns 384: <ul>
1.50 jason 385: <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered,
386: unaccelerated without GP/GP2
387: <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered,
388: unaccelerated without GP/GP2
389: <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
390: <li> SBus cgeight 24-bit color, unaccelerated
391: (note: SBus cgeight is quite different from VME/P4 cgeight)
392: <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered,
393: 3-D acceleration (aka cgtwelve)
394: <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered,
395: 3-D acceleration (aka Graphics Tower)
396: <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered,
397: 3-D acceleration (aka Leo)
398: </ul>
1.74 deraadt 399: <p>
1.50 jason 400:
1.74 deraadt 401: <li><strong>On-board Audio and ISDN</strong><br>
402: This is present on some sun4m systems (LX, LC, SPARCstation 10/20).
403: <p>
404: <li><strong>Multiple Processors/Modules in sun4m systems</strong><br>
1.91 art 405: OpenBSD will not currently boot on some machines with multiple processors.
1.74 deraadt 406: You must remove the extra CPUs.
407: <p>
408: <li><strong>SBUS SUNW,bpp (parallel port)</strong><br>
409: A driver exists in the source tree, but it does not work. None of the
410: developers have printers or cables to work with, to make it work, but
411: we really would prefer to receive a fixed driver.
412: <p>
413: <li><strong>SBUS FAS scsi controllers</strong><br>
1.87 deraadt 414: The FAS-only card is not supported. The HME+FAS card only supports the
1.74 deraadt 415: HME part of the card.
416: <p>
417: <li><strong>SBUS FDDI cards</strong><br>
418: <p>
419: <li><strong>Tadpole PCMCIA bridge</strong>
420: <p>
421: <li><strong>SBus cards other those listed above...</strong>
422: <p>
1.3 fn 423: </ul>
1.1 deraadt 424:
1.3 fn 425: <hr>
1.86 jufi 426: <a name=projects></a>
1.50 jason 427: <h3><font color=#0000e0>Project list:</font></h3>
1.21 johns 428: <ul>
1.50 jason 429: <li>Merge in useful NetBSD work.
430: <li>Start work on device drivers for unsupported framebuffers.
1.21 johns 431: </ul>
432:
433: <hr>
1.26 downsj 434:
1.44 pauls 435: <a href=plat.html><img height=24 width=24 src=back.gif border=0 alt=OpenBSD></a>
1.1 deraadt 436: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3 fn 437: <br>
1.103 ! jufi 438: <small>$OpenBSD: sparc.html,v 1.102 2002/01/29 22:08:37 horacio Exp $</small>
1.3 fn 439:
440: </body>
441: </html>