Annotation of www/sparc.html, Revision 1.40
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.16 deraadt 10: <meta name="copyright" content="This document copyright 1996 by OpenBSD">
1.3 fn 11: </head>
12:
1.20 johns 13: <BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#23238E">
1.3 fn 14:
1.38 downsj 15: <img alt="[OpenBSD]" SRC="images/bsd_small.gif">
1.1 deraadt 16:
1.3 fn 17: <hr>
1.38 downsj 18: <img align=right vspace=5 hspace=5 src="images/sparc.gif">
1.37 deraadt 19: <h3><font color=#0000e0><i>Table of contents</i></font></h3>
1.29 downsj 20: <p>
21: <ul>
22: <li><a href="#history">Past history of the port</a>
23: <li><a href="#status">Current status</a>
24: <li><a href="#info">Where to get the port</a>
25: <li><a href="#hardware">Supported hardware list</a>
26: <li><a href="#projects">Project list</a>
27: </ul>
28: </p>
29:
30: <hr>
31: <a name=history>
1.37 deraadt 32: <h3><font color=#0000e0><strong>History:</strong></font></h3>
1.3 fn 33:
34: <p>
1.1 deraadt 35: The original BSD4.4 port was done by Chris Torek as a contract to
36: LBL. The code was released by Chris in mid-93, and Theo de Raadt
37: worked it into shape for the NetBSD tree. Theo and Markus Wild worked
38: on improving Chris' original SunOS compatibility code into a highly
39: complete and reliable emulation. Chuck Cranor ported the sun4c code to
40: the 8KB pagesized Sun4 architecture, and Theo merged this code in a
41: way that would allow the same kernel and programs to run on either
42: sun4c or sun4 machines (unlike Sun's seperate kernel environments).
43: This last change also required a rewrite of the device configuration
1.25 johns 44: code. Just after the NetBSD/sparc 1.0 release, Peter Galbavy wrote an
45: ESP scsi device driver as a replacement for Chris' sparc-specific scsi
1.1 deraadt 46: code, this new driver unfortunately had some problems.
1.3 fn 47: </p>
1.1 deraadt 48:
49: <p>
50: At this point a conflict emerged between Theo and the other people he
51: started the NetBSD project with, and Theo was forced by the core group
52: to resign from NetBSD. After Theo left NetBSD, a few people in the
53: NetBSD group did some other things for the port: Paul Kranenburg
54: ported a floppy driver and started writing support for the 4/400.
55: Chuck spent many long hours working on the ie, xy, xd device drivers.
1.3 fn 56: </p>
1.1 deraadt 57:
58: <p>
59: Theo continued working independently, and made a number of additions:
60: P4 support, flexible boot strategy, a few graphics drivers with help
61: from John Stone, and masses of bug fixes. Many people will be most
62: interested that the ESP scsi driver has been completely replaced by
63: Theo, and that it supports disconnect/reconnect.
1.3 fn 64: </p>
1.1 deraadt 65:
66: <p>
1.25 johns 67: Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
1.36 todd 68: but tendinitis problems with his wrists and the problems with the NetBSD
1.7 deraadt 69: core conspired, and he stopped work. Theo passed his initial sun4m work
70: to Aaron Brown of Harvard, who was paid out of Margo Seltzer's research
71: funds. This initial stuff consisted mostly of a few attempts at building
1.8 deraadt 72: pmap structure that could support all 3 MMU types efficiently. Also,
1.25 johns 73: David Miller of the Sparclinux project got a little bit involved.
1.7 deraadt 74: </p>
75:
76: <p>
1.27 downsj 77: Theo and Jason Downs merged the NetBSD sparc code back into OpenBSD, making
78: OpenBSD/sparc usable again. There are still a few OpenBSD/sparc features
79: from older source trees that need to be re-integrated; these will likely
80: surface soon.
1.3 fn 81: </p>
1.1 deraadt 82:
1.28 downsj 83: <hr>
1.29 downsj 84: <a name=status>
1.37 deraadt 85: <h3><font color=#0000e0><strong>Current Status:</strong></font></h3>
1.28 downsj 86:
1.1 deraadt 87: <p>
1.25 johns 88: The people working the most on OpenBSD/sparc are Jason Downs, George Robbins,
1.27 downsj 89: and John Stone.
1.28 downsj 90: <br>
1.34 johns 91: Email may be sent to the maintainers and users of the OpenBSD/sparc port at
92: <a href="mailto:sparc@openbsd.org">sparc@openbsd.org</a>.
93: To join the OpenBSD/sparc mailing list, send a message body of <b>"help"</b>
94: to <a href="mailto:majordomo@OpenBSD.org">majordomo@OpenBSD.org</a>
95: and you will receive a reply outlining all your options.
1.6 downsj 96: </p>
97:
98: <p>
1.25 johns 99: An important note about OpenBSD/sparc is that it is designed so that
1.30 downsj 100: a single kernel can run on <b>ALL SUPPORTED</b> sparc machines. Whereas
1.26 downsj 101: SunOS and Solaris have always had separate `kernel architectures', ie. sun4,
102: sun4c, and sun4m, the same `GENERIC' OpenBSD kernel will run on all the
103: supported models.
1.15 grr 104: </p>
105:
106: <p>
1.25 johns 107: OpenBSD/sparc can be reasonably described as a continuation of the
108: NetBSD/sparc development with improvements. The current status is
1.17 johns 109: somewhere between under development and ready for general use, in that
1.15 grr 110: it does support many of the Sparc based systems and their peripherals,
111: and can be quite reliable depending on the system configuration and
112: usage.
113: </p>
114:
115: <p>
1.25 johns 116: Most of the problems are believed to stem from the wide variety of sparc
1.15 grr 117: processor and cache implementations along with their undocumented bugs,
1.24 johns 118: rather then general kernel problems.
1.15 grr 119: Feedback on which models do and do not work reliably is
120: appreciated, particularly with the newer sun4m implementations like the
121: Fujitsu TurboSparc and Ross HyperSparc based systems and upgrades.
122: </p>
123:
124: <p>
1.17 johns 125: The installation tools and process as of the 2.1 release are greatly
1.25 johns 126: improved over previous releases of OpenBSD. OpenBSD/sparc can be installed
1.17 johns 127: or upgraded via floppy boot images on sun4c and sun4m, miniroot images
128: for machines without floppies (and sun4 machines).
1.3 fn 129: </p>
130:
131: <hr>
1.29 downsj 132: <a name=info>
1.37 deraadt 133: <h3><font color=#0000e0><strong>Where to get it:</strong></font></h3>
1.29 downsj 134:
1.1 deraadt 135: <p>
1.22 johns 136: <ul>
137: <li><a href=ftp.html>Snapshots are made available from time to time.</a>
1.34 johns 138: <li><a href=ftp://ftp3.usa.openbsd.org/pub/OpenBSD/2.1/sparc/INSTALL.sparc>Installation information for the 2.1 release of OpenBSD/sparc</a>
1.22 johns 139: </ul>
140: </p>
1.3 fn 141:
1.22 johns 142: <p>
1.3 fn 143: <hr>
1.29 downsj 144: <a name=hardware>
1.37 deraadt 145: <h3><font color=#0000e0><strong>What hardware is supported?</strong></font></h3>
1.1 deraadt 146:
1.25 johns 147: <h4>OpenBSD/sparc runs on the following classes of machines:</h4>
1.3 fn 148: <ul>
1.19 johns 149: <li> sun4: 4/100, 4/200, and 4/300
150: <li> sun4c: SS1, SS1+, IPC, SLC, SS2, IPX, and ELC
151: <li> sun4m: at least the LC, LX, 4, 5, 10, and 20. A few cpu
1.17 johns 152: combinations do not work reliably, as well as a few odd memory
153: configurations.
1.15 grr 154: <li> Typically it works on faithful clones of these machines
1.3 fn 155: </ul>
156: <h4>Supported devices. This list of basically declares that any `stock' sun4c
157: "sparcstation" machine will probably work; for sun4 machines one must be more
158: careful.</h4>
159: <ul>
1.19 johns 160: <li> Sun keyboard and mouse
161:
162: <li> Floppy drives:
163: <ul>
1.26 downsj 164: <li> sun4c and sun4m floppy disk drive
1.19 johns 165: </ul>
166:
167: <li> Serial ports:
168: <ul>
169: <li> ttya and ttyb on-board serial ports (can be used as console if needed)
170: <li> 4/300 ttyc and ttyd on-board serial ports
171: </ul>
172:
173:
174: <li> Audio support:
175: <ul>
176: <li> sun4c on-board audio
177: </ul>
178:
179: <li> Framebuffers:
180: <ul>
1.33 downsj 181: <li>SBus, MBus and sun4c/sun4m on-board video:
1.19 johns 182: <ul>
1.33 downsj 183: <li>bwtwo - black and white.
184: <li>cgthree - 8-bit color, unaccelerated.
185: <br>The cgthree driver also supports the cgRDI, an onboard cgthree-like
186: framebuffer found in some laptops.
187: <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+).
188: <br>This should work with most faithful emulations/clones of the SBus
189: cgsix.
190: <li>cgfourteen - 8-bit color (24-bit MBus accelerated card, but the driver
191: only properly emulates a cgthree).
1.35 johns 192: <li>TCX - 8-bit color (24-bit, but driver currently emulates a cgthree).
1.19 johns 193: </ul>
194:
195: <li> 4/200 on-board bwtwo
196:
197: <li> P4 video (4/100 and 4/300):
198: <ul>
199: <li> bwtwo - black and white
200: <li> cgthree - 8-bit color, unaccelerated
201: <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
202: <li> cgsix - 8-bit color, accelerated
203: <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
204: </ul>
205:
206: <li> VME video (sun4):
207: <ul>
208: <li> cgtwo - black and white
209: <li> cgthree - 8-bit color, unaccelerated
210: <li> cgsix - 8-bit color, accelerated
211: </ul>
212: </ul>
213:
214: <li> Ethernet adapters:
215: <ul>
216: <li> on-board AMD Lance ethernet
217: <li> SBus AMD Lance ethernet cards
218: <li> on-board Intel 82586 ethernet (ie0 on 4/100 and 4/200)
219: <li> VME Intel 82586 ethernet cards
220: </ul>
221:
222: <li> SCSI controllers:
223: <ul>
224: <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
1.40 ! johns 225: <li> SBus "esp" SCSI controller (Also works with several 3rd party esp compatible boards)
1.19 johns 226: <li> VME "SUN-3"/"si" SCSI controller (polled mode only, slow)
227: <li> 4/110 "SCSI Weird"/"sw" on-board controller (slow, polled mode)
228: </ul>
229:
230: <li> SMD and other disk controllers
231: <ul>
232: <li> Xylogics 7053 VME/SMD disk controller ("xd")
233: <li> Xylogics 450/451 VME disk controller ("xy")
234: </ul>
235:
1.3 fn 236: </ul>
1.1 deraadt 237:
1.25 johns 238: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3 fn 239: <ul>
1.19 johns 240: <li> sun4: 4/400 (lacks support for the I/O cache, and has ethernet problems)
241: <li> sun4m: older systems with Viking (TMS390Z55) processor modules without external cache chips, aka SuperCache, aka MXCC, aka PAC.
242: <li> sun4m: model 4/600 -- uses auxio registers, sun4m VME, I/O cache?
243: <li> sun4d: SPARC Server 1000, SPARC Center 2000 -- XD-Bus vs. M-Bus, MP issues.
244: <li> sun4u: UltraSPARC 64-bit machines.
1.1 deraadt 245: <li> It does not work on most Solbourne machines, which are quite different.
1.3 fn 246: </ul>
1.19 johns 247:
1.15 grr 248: <p>
1.36 todd 249: OpenBSD/Sparc on the 4c/4m machines is critically dependent on configuration
1.25 johns 250: information returned by the openboot prom. A sparc clone that differs
1.15 grr 251: substantially from the Sun model as far as device names and properties will
252: require additional work in this area.
1.1 deraadt 253:
254: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
255: A comprehensive list can probably not be written.</h4>
1.3 fn 256: <ul>
1.19 johns 257: <li> Serial Cards:
258: <ul>
259: <li> VME mti 16-port serial card
260: <li> VME alm2 16-port serial card
261: <li> VME mcp 4-port serial card (or is it 8 port)
262: </ul>
263:
264: <li>Disk Controllers:
265: <ul>
266: <li> VME "sc" SCSI controller
267: <li> VME IPI controller
268: </ul>
269:
270: <li> Framebuffers:
271: <ul>
272: <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
273: <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
274: <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
275: <li> SBus cgeight 24-bit color, unaccelerated (note: SBus cgeight is quite different from VME/P4 cgeight)
276: <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka cgtwelve)
277: <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Graphics Tower)
278: <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Leo)
279: </ul>
280:
1.17 johns 281: <li> SBus cards other than the standard video/scsi/ethernet listed above
1.15 grr 282: <li> On-board Audio and ISDN hardware present on some sun4m systems
1.39 johns 283: <li> Multiple Processors/Modules in sun4m systems (OpenBSD will not currently boot on machines with multiple processors.)
1.3 fn 284: </ul>
1.1 deraadt 285:
1.3 fn 286: <hr>
1.29 downsj 287: <a name=projects>
1.37 deraadt 288: <h3><font color=#0000e0>OpenBSD/sparc Projects:</font></h3>
1.21 johns 289: <ul>
290: <li>Improve sun4m stability.
291: <li>Merge in useful NetBSD work.
292: <li>Start work on device drivers for unsupported framebuffers.
1.25 johns 293: <li>Bring back OpenBSD/sparc features from older code.
1.21 johns 294: </ul>
295:
296: <hr>
1.26 downsj 297:
1.11 deraadt 298: <a href=plat.html><img src=back.gif border=0 alt=OpenBSD></a>
1.1 deraadt 299: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3 fn 300: <br>
1.40 ! johns 301: <small>$OpenBSD: sparc.html,v 1.39 1998/03/04 11:20:36 johns Exp $</small>
1.3 fn 302:
303: </body>
304: </html>