Annotation of www/sparc.html, Revision 1.15
1.3 fn 1: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML Strict//EN">
2: <html>
1.1 deraadt 3: <head>
4: <title>OpenBSD/sparc</title>
1.3 fn 5: <link rev=made href=mailto:www@openbsd.org>
6: <meta name="resource-type" content="document">
7: <meta name="description" content="the OpenBSD/sparc page">
8: <meta name="keywords" content="openbsd,sparc">
9: <meta name="distribution" content="global">
10: <meta name="copyright" content="This document copyright 1996 by OpenBSD, Inc.">
11: </head>
12:
13: <body>
14:
1.1 deraadt 15: <h2>OpenBSD/sparc</h2>
16:
1.3 fn 17: <hr>
18: <h3><strong>History and Status:</strong></h3>
19:
20: <p>
1.1 deraadt 21: The original BSD4.4 port was done by Chris Torek as a contract to
22: LBL. The code was released by Chris in mid-93, and Theo de Raadt
23: worked it into shape for the NetBSD tree. Theo and Markus Wild worked
24: on improving Chris' original SunOS compatibility code into a highly
25: complete and reliable emulation. Chuck Cranor ported the sun4c code to
26: the 8KB pagesized Sun4 architecture, and Theo merged this code in a
27: way that would allow the same kernel and programs to run on either
28: sun4c or sun4 machines (unlike Sun's seperate kernel environments).
29: This last change also required a rewrite of the device configuration
30: code. Just after the NetBSD/sparc 1.0 release, Peter Galbavy wrote an
31: ESP scsi device driver as a replacement for Chris' sparc-specific scsi
32: code, this new driver unfortunately had some problems.
1.3 fn 33: </p>
1.1 deraadt 34:
35: <p>
36: At this point a conflict emerged between Theo and the other people he
37: started the NetBSD project with, and Theo was forced by the core group
38: to resign from NetBSD. After Theo left NetBSD, a few people in the
39: NetBSD group did some other things for the port: Paul Kranenburg
40: ported a floppy driver and started writing support for the 4/400.
41: Chuck spent many long hours working on the ie, xy, xd device drivers.
1.3 fn 42: </p>
1.1 deraadt 43:
44: <p>
45: Theo continued working independently, and made a number of additions:
46: P4 support, flexible boot strategy, a few graphics drivers with help
47: from John Stone, and masses of bug fixes. Many people will be most
48: interested that the ESP scsi driver has been completely replaced by
49: Theo, and that it supports disconnect/reconnect.
1.3 fn 50: </p>
1.1 deraadt 51:
52: <p>
1.7 deraadt 53: Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
54: but tendonitis problems with his wrists and the problems with the NetBSD
55: core conspired, and he stopped work. Theo passed his initial sun4m work
56: to Aaron Brown of Harvard, who was paid out of Margo Seltzer's research
57: funds. This initial stuff consisted mostly of a few attempts at building
1.8 deraadt 58: pmap structure that could support all 3 MMU types efficiently. Also,
1.7 deraadt 59: David Miller of the Sparclinux project got a little bit involved.
60: </p>
61:
62: <p>
63: Recently Theo and Jason Downs began merging the NetBSD sparc code back into
64: OpenBSD. OpenBSD/sparc is becoming usable again. There are still a few
65: OpenBSD/sparc features from older source trees that need to be re-integrated;
66: these will likely surface soon.
1.3 fn 67: </p>
1.1 deraadt 68:
69: <p>
1.7 deraadt 70: The people working the most on OpenBSD/sparc currently consists of
71: Theo de Raadt, Jason Downs, and probably Chuck Cranor again now that it
72: once again works.
1.6 downsj 73: </p>
74:
75: <p>
1.7 deraadt 76: An important note about OpenBSD/sparc is that it is designed so that
77: a single kernel can run on *ALL* sparc machines. Whereas SunOS and
1.15 ! grr 78: Solaris have always had separate `kernel architectures', ie. sun4, sun4c,
! 79: and sun4m, the same `GENERIC' OpenBSD kernel will run on all the supported
! 80: models.
! 81: </p>
! 82:
! 83: <p>
! 84: OpenBSD/sparc can be reasonably described as a continuation of the
! 85: NetBSD/sparc development with improvements. The current status is
! 86: somewhere between under development and ready for gneral use, in that
! 87: it does support many of the Sparc based systems and their peripherals,
! 88: and can be quite reliable depending on the system configuration and
! 89: usage.
! 90: </p>
! 91:
! 92: <p>
! 93: Most of the problems are believed to stem from the wide variety of sparc
! 94: processor and cache implementations along with their undocumented bugs,
! 95: rather then general kernal problems.
! 96: Feedback on which models do and do not work reliably is
! 97: appreciated, particularly with the newer sun4m implementations like the
! 98: Fujitsu TurboSparc and Ross HyperSparc based systems and upgrades.
! 99: </p>
! 100:
! 101: <p>
! 102: The installation tools and process as of the 2.0 release are currently not
! 103: in user-friendly form, as most developers short-cut the process from running
! 104: SunOS or OpenBSD systems. This situation is currently being improved.
1.3 fn 105: </p>
106:
107: <hr>
1.1 deraadt 108: <p>
1.12 deraadt 109: <a href=ftp.html>Snapshots are made available from time to time.</a>
1.3 fn 110:
111: <hr>
112: <h3><strong>What hardware is supported?</strong></h3>
1.1 deraadt 113:
114: <h4>OpenBSD/sparc runs on the following classes of machines:</h4>
1.3 fn 115: <ul>
1.1 deraadt 116: <li> sun4c: the SS1, SS1+, IPC, SLC, SS2, IPX, and ELC
117: <li> sun4: the 4/100, 4/200, and 4/300
1.14 deraadt 118: <li> sun4m machines: at least the LC, LX, 4, 5, 10, and 20. A few cpu
119: combinations do not work reliably.
1.15 ! grr 120: <li> Typically it works on faithful clones of these machines
1.3 fn 121: </ul>
122: <h4>Supported devices. This list of basically declares that any `stock' sun4c
123: "sparcstation" machine will probably work; for sun4 machines one must be more
124: careful.</h4>
125: <ul>
1.1 deraadt 126: <li> sun4c sbus or on-board cgsix, cgthree, and bwtwo
127: <li> 4/200 on-board bwtwo
128: <li> 4/300 and 4/100 P4 video: bwtwo, cgthree, cgsix. As well, P4 cgeight may work
129: <li> sun4 VME cgtwo, cgthree, cgsix
130: <li> P4 on-board bwtwo, and VME cgtwo card<br>
131: <li> ttya and ttyb serial ports (can be used as console if needed)
132: <li> 4/300 ttyc and ttyc serial ports
133: <li> on-board AMD Lance ethernet
134: <li> sbus AMD Lance ethernet cards
135: <li> on-board Intel 82586 ethernet (ie0 on 4/100 and 4/200)
136: <li> VME Intel 82586 ethernet cards
1.14 deraadt 137: <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
1.1 deraadt 138: <li> sbus "esp" SCSI controller
139: <li> VME "SUN-3"/"si" SCSI controller (polled mode only, slow)
140: <li> 4/110 "SCSI Weird"/"sw" on-board controller (slow, polled mode)
141: <li> Xylogics 7053 VME/SMD disk controller ("xd")
142: <li> Xylogics 450/451 VME disk controller ("xy")
143: <li> sun4c floppy disk drive
144: <li> sun4c audio
145: <li> sun keyboard and mouse
1.3 fn 146: </ul>
1.1 deraadt 147:
148: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3 fn 149: <ul>
1.1 deraadt 150: <li> 4/400 (lacks support for the I/O cache, and has ethernet problems)
1.15 ! grr 151: <li> older sun4m systems with Viking (TMS390Z55) processor modules without
! 152: external cache chips, aka SuperCache, aka MXCC, aka PAC.
1.14 deraadt 153: <li> the VME sun4m model --4/600
1.1 deraadt 154: <li> sun4d: sparc center 1000/2000
155: <li> the new Ultra sparc-64 machines...
156: <li> It does not work on most Solbourne machines, which are quite different.
1.3 fn 157: </ul>
1.15 ! grr 158: <p>
! 159: OpenBSD/Sparc on the 4c/4m machines is criticaly dependent on configuration
! 160: information returned by the openboot prom. A sparc clone that differs
! 161: substantially from the Sun model as far as device names and properties will
! 162: require additional work in this area.
1.1 deraadt 163:
164: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
165: A comprehensive list can probably not be written.</h4>
1.3 fn 166: <ul>
1.1 deraadt 167: <li> VME mti 16-port serial card
168: <li> VME alm2 16-port serial card
169: <li> VME mcp 4-port serial card (or is it 8 port)
170: <li> VME "sc" SCSI controller
171: <li> VME IPI controller
172: <li> VME cgfive
173: <li> VME cgnine
174: <li> VME GP/GP2 Graphics Processor
175: <li> sbus cgeight 24-bit video card (note: sbus cgeight is quite different from
176: VME cgeight)
1.15 ! grr 177: <li> sbus cards other than the standard video/scsi/ethernet listed above
! 178: <li> On-board Audio and ISDN hardware present on some sun4m systems
! 179: <li> Multiple Processors/Modules in sun4m systems (OpenBSD will run, but only uses one processor)
1.3 fn 180: </ul>
1.1 deraadt 181:
1.3 fn 182: <hr>
1.11 deraadt 183: <a href=plat.html><img src=back.gif border=0 alt=OpenBSD></a>
1.1 deraadt 184: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3 fn 185: <br>
1.15 ! grr 186: <small>$OpenBSD: sparc.html,v 1.14 1997/01/29 01:54:37 deraadt Exp $</small>
1.3 fn 187:
188: </body>
189: </html>