Annotation of www/sparc.html, Revision 1.19
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">
1.16 deraadt 10: <meta name="copyright" content="This document copyright 1996 by OpenBSD">
1.3 fn 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
1.17 johns 86: somewhere between under development and ready for general use, in that
1.15 grr 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>
1.17 johns 102: The installation tools and process as of the 2.1 release are greatly
103: improved over previous releases of OpenBSD. OpenBSD/sparc can be installed
104: or upgraded via floppy boot images on sun4c and sun4m, miniroot images
105: for machines without floppies (and sun4 machines).
1.3 fn 106: </p>
107:
108: <hr>
1.1 deraadt 109: <p>
1.12 deraadt 110: <a href=ftp.html>Snapshots are made available from time to time.</a>
1.3 fn 111:
112: <hr>
113: <h3><strong>What hardware is supported?</strong></h3>
1.1 deraadt 114:
115: <h4>OpenBSD/sparc runs on the following classes of machines:</h4>
1.3 fn 116: <ul>
1.19 ! johns 117: <li> sun4: 4/100, 4/200, and 4/300
! 118: <li> sun4c: SS1, SS1+, IPC, SLC, SS2, IPX, and ELC
! 119: <li> sun4m: at least the LC, LX, 4, 5, 10, and 20. A few cpu
1.17 johns 120: combinations do not work reliably, as well as a few odd memory
121: configurations.
1.15 grr 122: <li> Typically it works on faithful clones of these machines
1.3 fn 123: </ul>
124: <h4>Supported devices. This list of basically declares that any `stock' sun4c
125: "sparcstation" machine will probably work; for sun4 machines one must be more
126: careful.</h4>
127: <ul>
1.19 ! johns 128: <li> Sun keyboard and mouse
! 129:
! 130: <li> Floppy drives:
! 131: <ul>
! 132: <li> sun4c floppy disk drive
! 133: </ul>
! 134:
! 135: <li> Serial ports:
! 136: <ul>
! 137: <li> ttya and ttyb on-board serial ports (can be used as console if needed)
! 138: <li> 4/300 ttyc and ttyd on-board serial ports
! 139: </ul>
! 140:
! 141:
! 142: <li> Audio support:
! 143: <ul>
! 144: <li> sun4c on-board audio
! 145: </ul>
! 146:
! 147: <li> Framebuffers:
! 148: <ul>
! 149: <li>SBus or sun4c on-board video:
! 150: <ul>
! 151: <li>bwtwo - black and white
! 152: <li>cgthree - 8-bit color, unaccelerated
! 153: <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+) Should probably work with most faithful emulations/clones of SBus cgsix..
! 154: </ul>
! 155:
! 156: <li> 4/200 on-board bwtwo
! 157:
! 158: <li> P4 video (4/100 and 4/300):
! 159: <ul>
! 160: <li> bwtwo - black and white
! 161: <li> cgthree - 8-bit color, unaccelerated
! 162: <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
! 163: <li> cgsix - 8-bit color, accelerated
! 164: <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
! 165: </ul>
! 166:
! 167: <li> VME video (sun4):
! 168: <ul>
! 169: <li> cgtwo - black and white
! 170: <li> cgthree - 8-bit color, unaccelerated
! 171: <li> cgsix - 8-bit color, accelerated
! 172: </ul>
! 173: </ul>
! 174:
! 175: <li> Ethernet adapters:
! 176: <ul>
! 177: <li> on-board AMD Lance ethernet
! 178: <li> SBus AMD Lance ethernet cards
! 179: <li> on-board Intel 82586 ethernet (ie0 on 4/100 and 4/200)
! 180: <li> VME Intel 82586 ethernet cards
! 181: </ul>
! 182:
! 183: <li> SCSI controllers:
! 184: <ul>
! 185: <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
! 186: <li> SBus "esp" SCSI controller
! 187: <li> VME "SUN-3"/"si" SCSI controller (polled mode only, slow)
! 188: <li> 4/110 "SCSI Weird"/"sw" on-board controller (slow, polled mode)
! 189: </ul>
! 190:
! 191: <li> SMD and other disk controllers
! 192: <ul>
! 193: <li> Xylogics 7053 VME/SMD disk controller ("xd")
! 194: <li> Xylogics 450/451 VME disk controller ("xy")
! 195: </ul>
! 196:
1.3 fn 197: </ul>
1.1 deraadt 198:
199: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3 fn 200: <ul>
1.19 ! johns 201: <li> sun4: 4/400 (lacks support for the I/O cache, and has ethernet problems)
! 202: <li> sun4m: older systems with Viking (TMS390Z55) processor modules without external cache chips, aka SuperCache, aka MXCC, aka PAC.
! 203: <li> sun4m: model 4/600 -- uses auxio registers, sun4m VME, I/O cache?
! 204: <li> sun4d: SPARC Server 1000, SPARC Center 2000 -- XD-Bus vs. M-Bus, MP issues.
! 205: <li> sun4u: UltraSPARC 64-bit machines.
1.1 deraadt 206: <li> It does not work on most Solbourne machines, which are quite different.
1.3 fn 207: </ul>
1.19 ! johns 208:
1.15 grr 209: <p>
210: OpenBSD/Sparc on the 4c/4m machines is criticaly dependent on configuration
211: information returned by the openboot prom. A sparc clone that differs
212: substantially from the Sun model as far as device names and properties will
213: require additional work in this area.
1.1 deraadt 214:
215: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
216: A comprehensive list can probably not be written.</h4>
1.3 fn 217: <ul>
1.19 ! johns 218: <li> Serial Cards:
! 219: <ul>
! 220: <li> VME mti 16-port serial card
! 221: <li> VME alm2 16-port serial card
! 222: <li> VME mcp 4-port serial card (or is it 8 port)
! 223: </ul>
! 224:
! 225: <li>Disk Controllers:
! 226: <ul>
! 227: <li> VME "sc" SCSI controller
! 228: <li> VME IPI controller
! 229: </ul>
! 230:
! 231: <li> Framebuffers:
! 232: <ul>
! 233: <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
! 234: <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
! 235: <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
! 236: <li> SBus cgeight 24-bit color, unaccelerated (note: SBus cgeight is quite different from VME/P4 cgeight)
! 237: <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka cgtwelve)
! 238: <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Graphics Tower)
! 239: <li> SS20 SX, 24-bit color, 8-bit color, overlay planes, potentially double-buffered, accelerated (aka cgfourteen)
! 240: <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Leo)
! 241: </ul>
! 242:
1.17 johns 243: <li> SBus cards other than the standard video/scsi/ethernet listed above
1.15 grr 244: <li> On-board Audio and ISDN hardware present on some sun4m systems
1.18 johns 245: <li> sun4m floppies (OpenBSD can boot/install from them though)
1.15 grr 246: <li> Multiple Processors/Modules in sun4m systems (OpenBSD will run, but only uses one processor)
1.3 fn 247: </ul>
1.1 deraadt 248:
1.3 fn 249: <hr>
1.11 deraadt 250: <a href=plat.html><img src=back.gif border=0 alt=OpenBSD></a>
1.1 deraadt 251: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3 fn 252: <br>
1.19 ! johns 253: <small>$OpenBSD: sparc.html,v 1.18 1997/05/26 07:36:14 johns Exp $</small>
1.3 fn 254:
255: </body>
256: </html>