Annotation of www/sparc.html, Revision 1.46
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.42 deraadt 138: <li><a href=ftp://ftp3.usa.openbsd.org/pub/OpenBSD/2.2/sparc/INSTALL.sparc>Installation information for the 2.2 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
1.43 deraadt 171: <li> SBUS magma serial port cards, including: 4Sp, 8Sp, 12Sp, 16Sp, LC2+1Sp,
172: 2+1Sp, 4+1Sp, and 8+2Sp.
1.19 johns 173: </ul>
174:
175:
176: <li> Audio support:
177: <ul>
178: <li> sun4c on-board audio
179: </ul>
180:
181: <li> Framebuffers:
182: <ul>
1.33 downsj 183: <li>SBus, MBus and sun4c/sun4m on-board video:
1.19 johns 184: <ul>
1.33 downsj 185: <li>bwtwo - black and white.
186: <li>cgthree - 8-bit color, unaccelerated.
187: <br>The cgthree driver also supports the cgRDI, an onboard cgthree-like
188: framebuffer found in some laptops.
189: <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+).
190: <br>This should work with most faithful emulations/clones of the SBus
191: cgsix.
192: <li>cgfourteen - 8-bit color (24-bit MBus accelerated card, but the driver
193: only properly emulates a cgthree).
1.35 johns 194: <li>TCX - 8-bit color (24-bit, but driver currently emulates a cgthree).
1.19 johns 195: </ul>
196:
197: <li> 4/200 on-board bwtwo
198:
199: <li> P4 video (4/100 and 4/300):
200: <ul>
201: <li> bwtwo - black and white
202: <li> cgthree - 8-bit color, unaccelerated
203: <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
204: <li> cgsix - 8-bit color, accelerated
205: <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
206: </ul>
207:
208: <li> VME video (sun4):
209: <ul>
210: <li> cgtwo - black and white
211: <li> cgthree - 8-bit color, unaccelerated
212: <li> cgsix - 8-bit color, accelerated
213: </ul>
214: </ul>
215:
216: <li> Ethernet adapters:
217: <ul>
218: <li> on-board AMD Lance ethernet
219: <li> SBus AMD Lance ethernet cards
1.41 deraadt 220: <li> Sbus cards containing both AMD Lance and "esp" scsi
1.19 johns 221: <li> on-board Intel 82586 ethernet (ie0 on 4/100 and 4/200)
222: <li> VME Intel 82586 ethernet cards
1.46 ! jason 223: <li> Sbus 10/100Mbit hme found on SunSwift and Quad FastEthernet boards
1.45 deraadt 224: <li> 100Mbit qec+be driver being worked on.
1.19 johns 225: </ul>
226:
227: <li> SCSI controllers:
228: <ul>
229: <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
1.41 deraadt 230: <li> SBus "esp" SCSI controller (Also works with several 3rd party
231: esp compatible boards)
232: <li> Sbus cards containing both AMD Lance and "esp" scsi
1.42 deraadt 233: <li> VME "SUN-3"/"si" SCSI controller (interrupt driven DMA)
234: <li> 4/110 "SCSI Weird"/"sw" on-board controller (polled DMA)
1.19 johns 235: </ul>
236:
237: <li> SMD and other disk controllers
238: <ul>
239: <li> Xylogics 7053 VME/SMD disk controller ("xd")
240: <li> Xylogics 450/451 VME disk controller ("xy")
241: </ul>
242:
1.3 fn 243: </ul>
1.1 deraadt 244:
1.25 johns 245: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3 fn 246: <ul>
1.19 johns 247: <li> sun4: 4/400 (lacks support for the I/O cache, and has ethernet problems)
248: <li> sun4m: older systems with Viking (TMS390Z55) processor modules without external cache chips, aka SuperCache, aka MXCC, aka PAC.
249: <li> sun4m: model 4/600 -- uses auxio registers, sun4m VME, I/O cache?
250: <li> sun4d: SPARC Server 1000, SPARC Center 2000 -- XD-Bus vs. M-Bus, MP issues.
251: <li> sun4u: UltraSPARC 64-bit machines.
1.1 deraadt 252: <li> It does not work on most Solbourne machines, which are quite different.
1.3 fn 253: </ul>
1.19 johns 254:
1.15 grr 255: <p>
1.36 todd 256: OpenBSD/Sparc on the 4c/4m machines is critically dependent on configuration
1.25 johns 257: information returned by the openboot prom. A sparc clone that differs
1.15 grr 258: substantially from the Sun model as far as device names and properties will
259: require additional work in this area.
1.1 deraadt 260:
261: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
262: A comprehensive list can probably not be written.</h4>
1.3 fn 263: <ul>
1.19 johns 264: <li> Serial Cards:
265: <ul>
266: <li> VME mti 16-port serial card
267: <li> VME alm2 16-port serial card
268: <li> VME mcp 4-port serial card (or is it 8 port)
269: </ul>
270:
271: <li>Disk Controllers:
272: <ul>
273: <li> VME "sc" SCSI controller
274: <li> VME IPI controller
275: </ul>
276:
277: <li> Framebuffers:
278: <ul>
279: <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
280: <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
281: <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
282: <li> SBus cgeight 24-bit color, unaccelerated (note: SBus cgeight is quite different from VME/P4 cgeight)
283: <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka cgtwelve)
284: <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Graphics Tower)
285: <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Leo)
286: </ul>
287:
1.17 johns 288: <li> SBus cards other than the standard video/scsi/ethernet listed above
1.15 grr 289: <li> On-board Audio and ISDN hardware present on some sun4m systems
1.39 johns 290: <li> Multiple Processors/Modules in sun4m systems (OpenBSD will not currently boot on machines with multiple processors.)
1.3 fn 291: </ul>
1.1 deraadt 292:
1.3 fn 293: <hr>
1.29 downsj 294: <a name=projects>
1.37 deraadt 295: <h3><font color=#0000e0>OpenBSD/sparc Projects:</font></h3>
1.21 johns 296: <ul>
297: <li>Improve sun4m stability.
298: <li>Merge in useful NetBSD work.
299: <li>Start work on device drivers for unsupported framebuffers.
1.25 johns 300: <li>Bring back OpenBSD/sparc features from older code.
1.21 johns 301: </ul>
302:
303: <hr>
1.26 downsj 304:
1.44 pauls 305: <a href=plat.html><img height=24 width=24 src=back.gif border=0 alt=OpenBSD></a>
1.1 deraadt 306: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3 fn 307: <br>
1.46 ! jason 308: <small>$OpenBSD: sparc.html,v 1.45 1998/07/09 06:36:34 deraadt Exp $</small>
1.3 fn 309:
310: </body>
311: </html>