Annotation of www/sparc.html, Revision 1.32
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.30 downsj 15: <img alt="[OpenBSD]" SRC="images/smalltitle.gif">
1.1 deraadt 16:
1.3 fn 17: <hr>
1.30 downsj 18: <img align=right vspace=5 hspace=5 src="images/Sparc.gif">
1.29 downsj 19: <h3><i>Table of contents</i></h3>
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:
1.30 downsj 30: <p>
31: <small><em>"Sparc" logo by Gary Snow.</em></small>
32:
1.29 downsj 33: <hr>
34: <a name=history>
35: <h3><strong>History:</strong></h3>
1.3 fn 36:
37: <p>
1.1 deraadt 38: The original BSD4.4 port was done by Chris Torek as a contract to
39: LBL. The code was released by Chris in mid-93, and Theo de Raadt
40: worked it into shape for the NetBSD tree. Theo and Markus Wild worked
41: on improving Chris' original SunOS compatibility code into a highly
42: complete and reliable emulation. Chuck Cranor ported the sun4c code to
43: the 8KB pagesized Sun4 architecture, and Theo merged this code in a
44: way that would allow the same kernel and programs to run on either
45: sun4c or sun4 machines (unlike Sun's seperate kernel environments).
46: This last change also required a rewrite of the device configuration
1.25 johns 47: code. Just after the NetBSD/sparc 1.0 release, Peter Galbavy wrote an
48: ESP scsi device driver as a replacement for Chris' sparc-specific scsi
1.1 deraadt 49: code, this new driver unfortunately had some problems.
1.3 fn 50: </p>
1.1 deraadt 51:
52: <p>
53: At this point a conflict emerged between Theo and the other people he
54: started the NetBSD project with, and Theo was forced by the core group
55: to resign from NetBSD. After Theo left NetBSD, a few people in the
56: NetBSD group did some other things for the port: Paul Kranenburg
57: ported a floppy driver and started writing support for the 4/400.
58: Chuck spent many long hours working on the ie, xy, xd device drivers.
1.3 fn 59: </p>
1.1 deraadt 60:
61: <p>
62: Theo continued working independently, and made a number of additions:
63: P4 support, flexible boot strategy, a few graphics drivers with help
64: from John Stone, and masses of bug fixes. Many people will be most
65: interested that the ESP scsi driver has been completely replaced by
66: Theo, and that it supports disconnect/reconnect.
1.3 fn 67: </p>
1.1 deraadt 68:
69: <p>
1.25 johns 70: Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
1.7 deraadt 71: but tendonitis problems with his wrists and the problems with the NetBSD
72: core conspired, and he stopped work. Theo passed his initial sun4m work
73: to Aaron Brown of Harvard, who was paid out of Margo Seltzer's research
74: funds. This initial stuff consisted mostly of a few attempts at building
1.8 deraadt 75: pmap structure that could support all 3 MMU types efficiently. Also,
1.25 johns 76: David Miller of the Sparclinux project got a little bit involved.
1.7 deraadt 77: </p>
78:
79: <p>
1.27 downsj 80: Theo and Jason Downs merged the NetBSD sparc code back into OpenBSD, making
81: OpenBSD/sparc usable again. There are still a few OpenBSD/sparc features
82: from older source trees that need to be re-integrated; these will likely
83: surface soon.
1.3 fn 84: </p>
1.1 deraadt 85:
1.28 downsj 86: <hr>
1.29 downsj 87: <a name=status>
88: <h3><strong>Current Status:</strong></h3>
1.28 downsj 89:
1.1 deraadt 90: <p>
1.25 johns 91: The people working the most on OpenBSD/sparc are Jason Downs, George Robbins,
1.27 downsj 92: and John Stone.
1.28 downsj 93: <br>
94: Email may be sent to the maintainers of the OpenBSD/sparc port at
95: <a href="mailto:sparc@openbsd.org">sparc@openbsd.org</a>.
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>
133: <h3><strong>Where to get it:</strong></h3>
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.25 johns 138: <li><a href=ftp://ftp2.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.3 fn 145: <h3><strong>What hardware is supported?</strong></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>
181: <li>SBus or sun4c on-board video:
182: <ul>
183: <li>bwtwo - black and white
184: <li>cgthree - 8-bit color, unaccelerated
1.32 ! downsj 185: <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+); should probably work with most faithful emulations/clones of SBus cgsix.
1.19 johns 186: </ul>
187:
188: <li> 4/200 on-board bwtwo
189:
190: <li> P4 video (4/100 and 4/300):
191: <ul>
192: <li> bwtwo - black and white
193: <li> cgthree - 8-bit color, unaccelerated
194: <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
195: <li> cgsix - 8-bit color, accelerated
196: <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
197: </ul>
198:
199: <li> VME video (sun4):
200: <ul>
201: <li> cgtwo - black and white
202: <li> cgthree - 8-bit color, unaccelerated
203: <li> cgsix - 8-bit color, accelerated
204: </ul>
205: </ul>
206:
207: <li> Ethernet adapters:
208: <ul>
209: <li> on-board AMD Lance ethernet
210: <li> SBus AMD Lance ethernet cards
211: <li> on-board Intel 82586 ethernet (ie0 on 4/100 and 4/200)
212: <li> VME Intel 82586 ethernet cards
213: </ul>
214:
215: <li> SCSI controllers:
216: <ul>
217: <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
218: <li> SBus "esp" SCSI controller
219: <li> VME "SUN-3"/"si" SCSI controller (polled mode only, slow)
220: <li> 4/110 "SCSI Weird"/"sw" on-board controller (slow, polled mode)
221: </ul>
222:
223: <li> SMD and other disk controllers
224: <ul>
225: <li> Xylogics 7053 VME/SMD disk controller ("xd")
226: <li> Xylogics 450/451 VME disk controller ("xy")
227: </ul>
228:
1.3 fn 229: </ul>
1.1 deraadt 230:
1.25 johns 231: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3 fn 232: <ul>
1.19 johns 233: <li> sun4: 4/400 (lacks support for the I/O cache, and has ethernet problems)
234: <li> sun4m: older systems with Viking (TMS390Z55) processor modules without external cache chips, aka SuperCache, aka MXCC, aka PAC.
235: <li> sun4m: model 4/600 -- uses auxio registers, sun4m VME, I/O cache?
236: <li> sun4d: SPARC Server 1000, SPARC Center 2000 -- XD-Bus vs. M-Bus, MP issues.
237: <li> sun4u: UltraSPARC 64-bit machines.
1.1 deraadt 238: <li> It does not work on most Solbourne machines, which are quite different.
1.3 fn 239: </ul>
1.19 johns 240:
1.15 grr 241: <p>
242: OpenBSD/Sparc on the 4c/4m machines is criticaly dependent on configuration
1.25 johns 243: information returned by the openboot prom. A sparc clone that differs
1.15 grr 244: substantially from the Sun model as far as device names and properties will
245: require additional work in this area.
1.1 deraadt 246:
247: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
248: A comprehensive list can probably not be written.</h4>
1.3 fn 249: <ul>
1.19 johns 250: <li> Serial Cards:
251: <ul>
252: <li> VME mti 16-port serial card
253: <li> VME alm2 16-port serial card
254: <li> VME mcp 4-port serial card (or is it 8 port)
255: </ul>
256:
257: <li>Disk Controllers:
258: <ul>
259: <li> VME "sc" SCSI controller
260: <li> VME IPI controller
261: </ul>
262:
263: <li> Framebuffers:
264: <ul>
265: <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
266: <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
267: <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
268: <li> SBus cgeight 24-bit color, unaccelerated (note: SBus cgeight is quite different from VME/P4 cgeight)
269: <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka cgtwelve)
270: <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Graphics Tower)
271: <li> SS20 SX, 24-bit color, 8-bit color, overlay planes, potentially double-buffered, accelerated (aka cgfourteen)
272: <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Leo)
273: </ul>
274:
1.17 johns 275: <li> SBus cards other than the standard video/scsi/ethernet listed above
1.15 grr 276: <li> On-board Audio and ISDN hardware present on some sun4m systems
277: <li> Multiple Processors/Modules in sun4m systems (OpenBSD will run, but only uses one processor)
1.3 fn 278: </ul>
1.1 deraadt 279:
1.3 fn 280: <hr>
1.29 downsj 281: <a name=projects>
1.25 johns 282: <h3>OpenBSD/sparc Projects:</h3>
1.21 johns 283: <ul>
284: <li>Improve sun4m stability.
285: <li>Merge in useful NetBSD work.
286: <li>Start work on device drivers for unsupported framebuffers.
1.25 johns 287: <li>Bring back OpenBSD/sparc features from older code.
1.21 johns 288: </ul>
289:
290: <hr>
1.26 downsj 291:
1.11 deraadt 292: <a href=plat.html><img src=back.gif border=0 alt=OpenBSD></a>
1.1 deraadt 293: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3 fn 294: <br>
1.32 ! downsj 295: <small>$OpenBSD: sparc.html,v 1.31 1997/06/25 21:32:24 downsj Exp $</small>
1.3 fn 296:
297: </body>
298: </html>