[BACK]Return to sparc.html CVS log [TXT][DIR] Up to [local] / www

Annotation of www/sparc.html, Revision 1.27

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.25      johns      15: <h2>OpenBSD/sparc</h2>
1.1       deraadt    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
1.25      johns      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
1.1       deraadt    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.25      johns      53: Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
1.7       deraadt    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.25      johns      59: David Miller of the Sparclinux project got a little bit involved.
1.7       deraadt    60: </p>
                     61:
                     62: <p>
1.27    ! downsj     63: Theo and Jason Downs merged the NetBSD sparc code back into OpenBSD, making
        !            64: OpenBSD/sparc usable again.  There are still a few OpenBSD/sparc features
        !            65: from older source trees that need to be re-integrated; these will likely
        !            66: surface soon.
1.3       fn         67: </p>
1.1       deraadt    68:
                     69: <p>
1.25      johns      70: The people working the most on OpenBSD/sparc are Jason Downs, George Robbins,
1.27    ! downsj     71: and John Stone.
1.6       downsj     72: </p>
                     73:
                     74: <p>
1.25      johns      75: An important note about OpenBSD/sparc is that it is designed so that
1.26      downsj     76: a single kernel can run on <b>ALL</b><sup>(1)</sup> sparc machines.  Whereas
                     77: SunOS and Solaris have always had separate `kernel architectures', ie. sun4,
                     78: sun4c, and sun4m, the same `GENERIC' OpenBSD kernel will run on all the
                     79: supported models.
1.15      grr        80: </p>
                     81:
                     82: <p>
1.25      johns      83: OpenBSD/sparc can be reasonably described as a continuation of the
                     84: NetBSD/sparc development with improvements.  The current status is
1.17      johns      85: somewhere between under development and ready for general use, in that
1.15      grr        86: it does support many of the Sparc based systems and their peripherals,
                     87: and can be quite reliable depending on the system configuration and
                     88: usage.
                     89: </p>
                     90:
                     91: <p>
1.25      johns      92: Most of the problems are believed to stem from the wide variety of sparc
1.15      grr        93: processor and cache implementations along with their undocumented bugs,
1.24      johns      94: rather then general kernel problems.
1.15      grr        95: Feedback on which models do and do not work reliably is
                     96: appreciated, particularly with the newer sun4m implementations like the
                     97: Fujitsu TurboSparc and Ross HyperSparc based systems and upgrades.
                     98: </p>
                     99:
                    100: <p>
1.17      johns     101: The installation tools and process as of the 2.1 release are greatly
1.25      johns     102: improved over previous releases of OpenBSD.  OpenBSD/sparc can be installed
1.17      johns     103: or upgraded via floppy boot images on sun4c and sun4m, miniroot images
                    104: for machines without floppies (and sun4 machines).
1.3       fn        105: </p>
                    106:
                    107: <hr>
1.1       deraadt   108: <p>
1.22      johns     109: <ul>
                    110: <li><a href=ftp.html>Snapshots are made available from time to time.</a>
1.25      johns     111: <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     112: </ul>
                    113: </p>
1.3       fn        114:
1.22      johns     115: <p>
1.3       fn        116: <hr>
                    117: <h3><strong>What hardware is supported?</strong></h3>
1.1       deraadt   118:
1.25      johns     119: <h4>OpenBSD/sparc runs on the following classes of machines:</h4>
1.3       fn        120: <ul>
1.19      johns     121: <li> sun4: 4/100, 4/200, and 4/300
                    122: <li> sun4c: SS1, SS1+, IPC, SLC, SS2, IPX, and ELC
                    123: <li> sun4m: at least the LC, LX, 4, 5, 10, and 20. A few cpu
1.17      johns     124:        combinations do not work reliably, as well as a few odd memory
                    125:        configurations.
1.15      grr       126: <li> Typically it works on faithful clones of these machines
1.3       fn        127: </ul>
                    128: <h4>Supported devices.  This list of basically declares that any `stock' sun4c
                    129: "sparcstation" machine will probably work; for sun4 machines one must be more
                    130: careful.</h4>
                    131: <ul>
1.19      johns     132: <li> Sun keyboard and mouse
                    133:
                    134: <li> Floppy drives:
                    135:   <ul>
1.26      downsj    136:   <li> sun4c and sun4m floppy disk drive
1.19      johns     137:   </ul>
                    138:
                    139: <li> Serial ports:
                    140:   <ul>
                    141:   <li> ttya and ttyb on-board serial ports (can be used as console if needed)
                    142:   <li> 4/300 ttyc and ttyd on-board serial ports
                    143:   </ul>
                    144:
                    145:
                    146: <li> Audio support:
                    147:   <ul>
                    148:   <li> sun4c on-board audio
                    149:   </ul>
                    150:
                    151: <li> Framebuffers:
                    152:   <ul>
                    153:   <li>SBus or sun4c on-board video:
                    154:     <ul>
                    155:     <li>bwtwo - black and white
                    156:     <li>cgthree - 8-bit color, unaccelerated
1.26      downsj    157:     <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+)  Should probably work with most faithful emulations/clones of SBus cgsix.
1.19      johns     158:     </ul>
                    159:
                    160:   <li> 4/200 on-board bwtwo
                    161:
                    162:   <li> P4 video (4/100 and 4/300):
                    163:     <ul>
                    164:     <li> bwtwo - black and white
                    165:     <li> cgthree - 8-bit color, unaccelerated
                    166:     <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
                    167:     <li> cgsix - 8-bit color, accelerated
                    168:     <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
                    169:     </ul>
                    170:
                    171:   <li> VME video (sun4):
                    172:     <ul>
                    173:     <li> cgtwo - black and white
                    174:     <li> cgthree - 8-bit color, unaccelerated
                    175:     <li> cgsix - 8-bit color, accelerated
                    176:     </ul>
                    177:   </ul>
                    178:
                    179: <li> Ethernet adapters:
                    180:   <ul>
                    181:   <li> on-board AMD Lance ethernet
                    182:   <li> SBus AMD Lance ethernet cards
                    183:   <li> on-board Intel 82586 ethernet (ie0 on 4/100 and 4/200)
                    184:   <li> VME Intel 82586 ethernet cards
                    185:   </ul>
                    186:
                    187: <li> SCSI controllers:
                    188:   <ul>
                    189:   <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
                    190:   <li> SBus "esp" SCSI controller
                    191:   <li> VME "SUN-3"/"si" SCSI controller (polled mode only, slow)
                    192:   <li> 4/110 "SCSI Weird"/"sw" on-board controller (slow, polled mode)
                    193:   </ul>
                    194:
                    195: <li> SMD and other disk controllers
                    196:   <ul>
                    197:   <li> Xylogics 7053 VME/SMD disk controller ("xd")
                    198:   <li> Xylogics 450/451 VME disk controller ("xy")
                    199:   </ul>
                    200:
1.3       fn        201: </ul>
1.1       deraadt   202:
1.25      johns     203: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3       fn        204: <ul>
1.19      johns     205: <li> sun4: 4/400 (lacks support for the I/O cache, and has ethernet problems)
                    206: <li> sun4m: older systems with Viking (TMS390Z55) processor modules without external cache chips, aka SuperCache, aka MXCC, aka PAC.
                    207: <li> sun4m: model 4/600 -- uses auxio registers, sun4m VME, I/O cache?
                    208: <li> sun4d: SPARC Server 1000, SPARC Center 2000 -- XD-Bus vs. M-Bus, MP issues.
                    209: <li> sun4u: UltraSPARC 64-bit machines.
1.1       deraadt   210: <li> It does not work on most Solbourne machines, which are quite different.
1.3       fn        211: </ul>
1.19      johns     212:
1.15      grr       213: <p>
                    214: OpenBSD/Sparc on the 4c/4m machines is criticaly dependent on configuration
1.25      johns     215: information returned by the openboot prom.  A sparc clone that differs
1.15      grr       216: substantially from the Sun model as far as device names and properties will
                    217: require additional work in this area.
1.1       deraadt   218:
                    219: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
                    220: A comprehensive list can probably not be written.</h4>
1.3       fn        221: <ul>
1.19      johns     222: <li> Serial Cards:
                    223:   <ul>
                    224:   <li> VME mti 16-port serial card
                    225:   <li> VME alm2 16-port serial card
                    226:   <li> VME mcp 4-port serial card (or is it 8 port)
                    227:   </ul>
                    228:
                    229: <li>Disk Controllers:
                    230:   <ul>
                    231:   <li> VME "sc" SCSI controller
                    232:   <li> VME IPI controller
                    233:   </ul>
                    234:
                    235: <li> Framebuffers:
                    236:   <ul>
                    237:   <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
                    238:   <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered, unaccelerated without GP/GP2
                    239:   <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
                    240:   <li> SBus cgeight 24-bit color, unaccelerated (note: SBus cgeight is quite different from VME/P4 cgeight)
                    241:   <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka cgtwelve)
                    242:   <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Graphics Tower)
                    243:   <li> SS20 SX, 24-bit color, 8-bit color, overlay planes, potentially double-buffered, accelerated (aka cgfourteen)
                    244:   <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Leo)
                    245:   </ul>
                    246:
1.17      johns     247: <li> SBus cards other than the standard video/scsi/ethernet listed above
1.15      grr       248: <li> On-board Audio and ISDN hardware present on some sun4m systems
1.18      johns     249: <li> sun4m floppies (OpenBSD can boot/install from them though)
1.15      grr       250: <li> Multiple Processors/Modules in sun4m systems (OpenBSD will run, but only uses one processor)
1.3       fn        251: </ul>
1.1       deraadt   252:
1.3       fn        253: <hr>
1.25      johns     254: <h3>OpenBSD/sparc Projects:</h3>
1.21      johns     255: <ul>
                    256: <li>Improve sun4m stability.
                    257: <li>Merge in useful NetBSD work.
                    258: <li>Start work on device drivers for unsupported framebuffers.
1.25      johns     259: <li>Bring back OpenBSD/sparc features from older code.
1.21      johns     260: </ul>
                    261:
                    262: <hr>
1.26      downsj    263: <p>
                    264: <sup>(1) sun4u ("Ultra") would probably not conform to this model, and have
                    265: it's own kernel port.</sup>
                    266: </p>
                    267: <hr>
                    268:
1.11      deraadt   269: <a href=plat.html><img src=back.gif border=0 alt=OpenBSD></a>
1.1       deraadt   270: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3       fn        271: <br>
1.27    ! downsj    272: <small>$OpenBSD: sparc.html,v 1.26 1997/06/25 19:11:48 downsj Exp $</small>
1.3       fn        273:
                    274: </body>
                    275: </html>