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