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

Annotation of www/sparc.html, Revision 1.71

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.50      jason      13: <body bgcolor="#FFFFFF" text="#000000" link="#23238E">
1.3       fn         14:
1.50      jason      15: <img alt="[OpenBSD]" src="images/bsd_small.gif">
1.1       deraadt    16:
1.3       fn         17: <hr>
1.50      jason      18:
                     19: <p>
                     20: OpenBSD/sparc runs on most of the 32bit Sun SPARC workstations, including
                     21: the sun4, sun4c, and sun4m architectures
                     22: (not the 64bit <a href="sparc64.html">Ultra SPARC</a> computers).
                     23: The current port maintainer is
                     24: Jason Wright (<a href="mailto:jason@openbsd.org">jason@openbsd.org</a>).
1.56      aaron      25: Others are definitely welcome to contribute!
1.50      jason      26: </p>
                     27:
1.38      downsj     28: <img align=right vspace=5 hspace=5 src="images/sparc.gif">
1.37      deraadt    29: <h3><font color=#0000e0><i>Table of contents</i></font></h3>
1.29      downsj     30: <p>
                     31: <ul>
1.50      jason      32:  <li><a href="#history">Past history of the port</a>
                     33:  <li><a href="#status">Current status</a>
                     34:  <li><a href="#info">Where to get it</a>
                     35:  <li><a href="#hardware">Supported hardware list</a>
                     36:  <li><a href="#projects">Project list</a>
1.29      downsj     37: </ul>
                     38: </p>
                     39:
                     40: <hr>
                     41: <a name=history>
1.37      deraadt    42: <h3><font color=#0000e0><strong>History:</strong></font></h3>
1.3       fn         43:
                     44: <p>
1.1       deraadt    45: The original BSD4.4 port was done by Chris Torek as a contract to
1.50      jason      46: LBL. The code was released by Chris in mid-1993, and Theo de Raadt
1.1       deraadt    47: worked it into shape for the NetBSD tree.  Theo and Markus Wild worked
                     48: on improving Chris' original SunOS compatibility code into a highly
                     49: complete and reliable emulation. Chuck Cranor ported the sun4c code to
                     50: the 8KB pagesized Sun4 architecture, and Theo merged this code in a
                     51: way that would allow the same kernel and programs to run on either
1.64      jason      52: sun4c or sun4 machines (unlike Sun's separate kernel environments).
1.1       deraadt    53: This last change also required a rewrite of the device configuration
1.25      johns      54: code.  Just after the NetBSD/sparc 1.0 release, Peter Galbavy wrote an
                     55: ESP scsi device driver as a replacement for Chris' sparc-specific scsi
1.50      jason      56: code, this new driver unfortunately had some problems and was eventually
                     57: replaced.
1.3       fn         58: </p>
1.1       deraadt    59:
                     60: <p>
                     61: At this point a conflict emerged between Theo and the other people he
                     62: started the NetBSD project with, and Theo was forced by the core group
                     63: to resign from NetBSD.  After Theo left NetBSD, a few people in the
                     64: NetBSD group did some other things for the port: Paul Kranenburg
                     65: ported a floppy driver and started writing support for the 4/400.
                     66: Chuck spent many long hours working on the ie, xy, xd device drivers.
1.3       fn         67: </p>
1.1       deraadt    68:
                     69: <p>
                     70: Theo continued working independently, and made a number of additions:
                     71: P4 support, flexible boot strategy, a few graphics drivers with help
                     72: from John Stone, and masses of bug fixes.  Many people will be most
                     73: interested that the ESP scsi driver has been completely replaced by
                     74: Theo, and that it supports disconnect/reconnect.
1.3       fn         75: </p>
1.1       deraadt    76:
                     77: <p>
1.25      johns      78: Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
1.36      todd       79: but tendinitis problems with his wrists and the problems with the NetBSD
1.7       deraadt    80: core conspired, and he stopped work.  Theo passed his initial sun4m work
                     81: to Aaron Brown of Harvard, who was paid out of Margo Seltzer's research
                     82: funds.  This initial stuff consisted mostly of a few attempts at building
1.8       deraadt    83: pmap structure that could support all 3 MMU types efficiently.  Also,
1.50      jason      84: David Miller of the S/Linux project got a little bit involved.
1.7       deraadt    85: </p>
                     86:
                     87: <p>
1.27      downsj     88: Theo and Jason Downs merged the NetBSD sparc code back into OpenBSD, making
1.50      jason      89: OpenBSD/sparc usable again.  Jason Wright wrote a few new SBus Ethernet
                     90: drivers with information from the S/Linux project and has merged a few bits
                     91: from NetBSD sources to improve the stability of this architecture.
                     92: </p>
                     93:
                     94: <p>
                     95: And work continues...
1.3       fn         96: </p>
1.1       deraadt    97:
1.28      downsj     98: <hr>
1.29      downsj     99: <a name=status>
1.37      deraadt   100: <h3><font color=#0000e0><strong>Current Status:</strong></font></h3>
1.28      downsj    101:
1.1       deraadt   102: <p>
1.50      jason     103: The people working the most on OpenBSD/sparc are
                    104: Jason Wright, Theo de Raadt, and Todd Fries.
                    105: </p>
                    106:
                    107: <p>
1.34      johns     108: Email may be sent to the maintainers and users of the OpenBSD/sparc port at
                    109: <a href="mailto:sparc@openbsd.org">sparc@openbsd.org</a>.
                    110: To join the OpenBSD/sparc mailing list, send a message body of <b>"help"</b>
                    111: to <a href="mailto:majordomo@OpenBSD.org">majordomo@OpenBSD.org</a>
1.50      jason     112: and you will receive a reply outlining all of your options.
1.6       downsj    113: </p>
                    114:
                    115: <p>
1.25      johns     116: An important note about OpenBSD/sparc is that it is designed so that
1.30      downsj    117: a single kernel can run on <b>ALL SUPPORTED</b> sparc machines.  Whereas
1.26      downsj    118: SunOS and Solaris have always had separate `kernel architectures', ie. sun4,
                    119: sun4c, and sun4m, the same `GENERIC' OpenBSD kernel will run on all the
                    120: supported models.
1.15      grr       121: </p>
                    122:
                    123: <p>
1.50      jason     124: Most of the problems with OpenBSD/sparc are believed to stem from the wide
                    125: variety of sparc processor and cache implementations along with their
                    126: undocumented bugs, rather then general kernel problems.
1.15      grr       127: Feedback on which models do and do not work reliably is
                    128: appreciated, particularly with the newer sun4m implementations like the
                    129: Fujitsu TurboSparc and Ross HyperSparc based systems and upgrades.
                    130: </p>
                    131:
                    132: <p>
1.17      johns     133: The installation tools and process as of the 2.1 release are greatly
1.50      jason     134: improved over previous releases of OpenBSD, and more work has been done
                    135: with each successive release.  OpenBSD/sparc can be installed
1.17      johns     136: or upgraded via floppy boot images on sun4c and sun4m, miniroot images
1.50      jason     137: for machines without floppies (and sun4 machines), as well as network
                    138: and diskless installs.
1.3       fn        139: </p>
                    140:
                    141: <hr>
1.29      downsj    142: <a name=info>
1.37      deraadt   143: <h3><font color=#0000e0><strong>Where to get it:</strong></font></h3>
1.29      downsj    144:
1.1       deraadt   145: <p>
1.22      johns     146: <ul>
                    147: <li><a href=ftp.html>Snapshots are made available from time to time.</a>
1.58      mickey    148: <li><a href=ftp://ftp3.usa.openbsd.org/pub/OpenBSD/2.4/sparc/INSTALL.sparc>Installation information for the 2.4 release of OpenBSD/sparc</a>
1.22      johns     149: </ul>
                    150: </p>
1.3       fn        151:
1.22      johns     152: <p>
1.3       fn        153: <hr>
1.29      downsj    154: <a name=hardware>
1.50      jason     155: <h3><font color=#0000e0><strong>Supported hardware list:</strong></font></h3>
1.1       deraadt   156:
1.25      johns     157: <h4>OpenBSD/sparc runs on the following classes of machines:</h4>
1.3       fn        158: <ul>
1.70      deraadt   159: <li> sun4: the VME series
                    160:        <ul>
                    161:        <li>4/100: Original sparc with VME.  Many hardware bugs.
                    162:        <li>4/200: A fairly decent VME-only machine
                    163:        <li>4/300: a 25MHz VME machine with many devices built onto the main board.
                    164:            In other respects, it is quite similar to the SSS1+.
                    165:        </ul>
                    166: <p>
                    167: <li> sun4c:
                    168:        <ul>
                    169:        <li>SS1: the original 20MHz sun4c
                    170:        <li>SS1+: 25MHz version of the above
                    171:        <li>IPC: SS1+ in a cube, with cgtree graphics builtin
                    172:        <li>SLC: SS1+ built into a B&W monitor
                    173:        <li>SS2: 40MHz version of the SS1
                    174:        <li>IPX: SS2 in a cube, with cgsix graphics builtin
                    175:        <li>ELC: SS2-performance built into a B&W monitor
                    176:        </ul>
                    177:        <p>
                    178:        <strong>Please note that SBus DMA peripherals do not work in some
                    179:        of the slots of an SS1 or SS1+</strong>.
                    180: <p>
                    181: <li> sun4m:
                    182:        <ul>
                    183:        <li>600MP:  The original Sun4m machine.  This is a mbus machine
                    184:            with SBUS and VME machine.
                    185:        <li>LC: 50MHz MicroSPARC-1 based machines
                    186:        <li>LX: LC with a few more devices
                    187:        <li>SS5: MicroSPARC-2 based machines available in 60, 70,
                    188:            85, 110, and 170 MHz versions
                    189:        <li>SS4: Reduced cost version of the SS5, only available at 110MHz
1.71    ! deraadt   190:        <li>SS10: Pizzabox mbus-based machine
1.70      deraadt   191:        <li>SS20: Improved Pizzabox mbus-based machine
                    192:        <li>CPU5V by Force Computer
                    193:        <li>SPARCbook 3GX and 3GS by Tadpole.
                    194:        </ul>
                    195:        <p>
1.71    ! deraadt   196:        See below for a list of mbus modules that work.
        !           197:        <p>
1.70      deraadt   198:        A few cpu combinations do not work reliably, as well as a few odd
                    199:        memory configurations.
                    200: <p>
                    201: <li> Typically it works on faithful clones of these machine.
1.3       fn        202: </ul>
1.50      jason     203:
                    204: <h4>Supported devices</h4>
                    205:
                    206: <p> This list of basically declares that any `stock' sun4c or sun4m
                    207: "sparcstation" or "sparcserver" machine will probably work; for sun4 machines
                    208: one must be more careful.
                    209:
1.3       fn        210: <ul>
1.71    ! deraadt   211: <li> Mbus CPU modules
        !           212:   <ul>
        !           213:    <li> SM30
        !           214:    <li> SM41
        !           215:    <li> SM51
        !           216:    <li> SM61: 60MHz Supersparc with 1MB of cache
        !           217:    <li> SM71: 75MHz Supersparc with 1MB of cache
        !           218:    <li> SM81: 85MHz Supersparc with 1MB of cache
        !           219:    <li> SM81-2: 85MHz Supersparc with 2MB of cache
        !           220:   </ul>
        !           221:
1.19      johns     222: <li> Sun keyboard and mouse
1.50      jason     223:   <ul>
                    224:    <li> Type 2, 3, 4, and 5 keyboards with several layouts
                    225:   </ul>
1.19      johns     226:
                    227: <li> Floppy drives:
                    228:   <ul>
1.50      jason     229:    <li> sun4c and sun4m floppy disk drive
1.19      johns     230:   </ul>
                    231:
                    232: <li> Serial ports:
                    233:   <ul>
1.50      jason     234:    <li> ttya and ttyb on-board serial ports (can be used as console if needed)
                    235:    <li> 4/300 ttyc and ttyd on-board serial ports
                    236:    <li> SBus magma serial port cards, including: 4Sp, 8Sp, 12Sp, 16Sp, LC2+1Sp,
1.43      deraadt   237:        2+1Sp, 4+1Sp, and 8+2Sp.
1.60      jason     238:    <li> SBus Serial/Parallel Interfaces (SUNW,spif, 501-1931)
1.19      johns     239:   </ul>
                    240:
                    241:
                    242: <li> Audio support:
                    243:   <ul>
1.55      aaron     244:    <li>on-board audio support for systems with AMD79C30 8-bit audio chips
1.66      jason     245:        (this includes sun4c models, SPARCclassic, and 600MP)
                    246:    <li>SUNW,CS4231 16-bit audio chips found on SPARCstation 4/5, but on-board
1.62      jason     247:        audio for other sun4m systems is not supported
1.19      johns     248:   </ul>
                    249:
                    250: <li> Framebuffers:
                    251:   <ul>
1.33      downsj    252:   <li>SBus, MBus and sun4c/sun4m on-board video:
1.19      johns     253:     <ul>
1.50      jason     254:      <li>bwtwo - black and white.
                    255:      <li>cgthree - 8-bit color, unaccelerated.
                    256:        <br>The cgthree driver also supports the cgRDI, an onboard
                    257:            cgthree-like framebuffer found in some laptops.
                    258:      <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+).
                    259:        <br>This should work with most faithful emulations/clones of the
                    260:            SBus cgsix.
                    261:      <li>cgfourteen - 8-bit color (24-bit MBus accelerated card, but the
                    262:        driver only properly emulates a cgthree).
1.69      jason     263:      <li>p9100 - found in Tadpole SPARCbook 3GS and 3GX (8bit unaccelated)
                    264:                ("pnozz")
1.50      jason     265:      <li>TCX - 8-bit color (24-bit, but driver currently emulates a cgthree).
1.19      johns     266:     </ul>
                    267:
                    268:   <li> 4/200 on-board bwtwo
                    269:
                    270:   <li> P4 video (4/100 and 4/300):
                    271:     <ul>
1.50      jason     272:      <li> bwtwo - black and white
                    273:      <li> cgthree - 8-bit color, unaccelerated
                    274:      <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
                    275:      <li> cgsix - 8-bit color, accelerated
                    276:      <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
1.19      johns     277:     </ul>
                    278:
                    279:   <li> VME video (sun4):
                    280:     <ul>
1.50      jason     281:      <li> cgtwo - black and white
                    282:      <li> cgthree - 8-bit color, unaccelerated
                    283:      <li> cgsix - 8-bit color, accelerated
1.19      johns     284:     </ul>
                    285:   </ul>
                    286:
                    287: <li> Ethernet adapters:
                    288:   <ul>
1.50      jason     289:    <li> on-board AMD Lance Ethernet
                    290:    <li> SBus AMD Lance Ethernet cards
                    291:    <li> SBus cards containing both AMD Lance and "esp" scsi
                    292:    <li> on-board Intel 82586 Ethernet (ie0 on 4/100 and 4/200)
                    293:    <li> VME Intel 82586 Ethernet cards
1.60      jason     294:    <li> SBus 10/100Mbit qec+be found on Sun FastEthernet cards (SUNW,501-2655)
1.54      jason     295:        (aka. Sun Fast Ethernet 1.x)
                    296:    <li> SBus Quad 10Mbit qec+qe found on Sun Quad Ethernet cards (SUNW,595-3198)
1.67      jason     297:    <li> SBus 10/100Mbit hme Ethernet cards
                    298:    <li> SBus 10/100Mbit SunSwift SUNW,fas Ethernet+SCSI cards
                    299:    <li> SBus Quad 10/100Mbit hme and qfe Ethernet cards
1.54      jason     300:         (aka. Sun Quad Fast Ethernet 2.x)
1.19      johns     301:   </ul>
                    302:
                    303: <li> SCSI controllers:
                    304:   <ul>
1.50      jason     305:    <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
                    306:    <li> SBus "esp" SCSI controller (Also works with several 3rd party
1.41      deraadt   307:        esp compatible boards)
1.50      jason     308:    <li> SBus cards containing both AMD Lance and "esp" scsi
                    309:    <li> VME "SUN-3"/"si" SCSI controller (interrupt driven DMA)
                    310:    <li> 4/110 "SCSI Weird"/"sw" on-board controller (polled DMA)
1.63      deraadt   311:    <li> QSP/ISP scsi controllers (ie. "PTI,ptisp", "ptisp", "SUNW,isp" and "QLGC,isp").
1.19      johns     312:   </ul>
                    313:
1.65      jason     314: <li> SMD and other disk controllers:
1.19      johns     315:   <ul>
1.50      jason     316:    <li> Xylogics 7053 VME/SMD disk controller ("xd")
                    317:    <li> Xylogics 450/451 VME disk controller ("xy")
1.19      johns     318:   </ul>
                    319:
1.65      jason     320: <li> Miscellaneous:
                    321:   <ul>
                    322:    <li> SBus Expansion Subsystem ("xbox")
1.68      jason     323:    <li> Force FGA5000 VME/SBus bridge ("fga")
                    324:    <li> Force sysconfig registers ("scf")
                    325:    <li> Force flash memory ("flash")
1.69      jason     326:    <li> Tadpole microcontroller (power/system control) ("tctrl")
1.65      jason     327:   </ul>
1.3       fn        328: </ul>
1.1       deraadt   329:
1.25      johns     330: <h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
1.3       fn        331: <ul>
1.50      jason     332:  <li> sun4: 4/400 (lacks support for the I/O cache, and has Ethernet problems)
                    333:  <li> sun4m: older systems with Viking (TMS390Z55) processor modules
                    334:        without external cache chips, aka SuperCache, aka MXCC, aka PAC.
                    335:  <li> sun4m: with Ross HyperSparc processor modules
                    336:  <li> sun4d: SPARC Server 1000, SPARC Center 2000 -- XD-Bus vs. M-Bus,
                    337:        MP issues.
                    338:  <li> sun4u (<a href="sparc64.html">sparc64</a>): UltraSPARC 64-bit machines.
                    339:  <li> It does not work on most Solbourne machines, which are quite different.
1.3       fn        340: </ul>
1.19      johns     341:
1.15      grr       342: <p>
1.50      jason     343: OpenBSD/sparc on the 4c/4m machines is critically dependent on configuration
                    344: information returned by the OpenBoot PROM.  A sparc clone that differs
1.15      grr       345: substantially from the Sun model as far as device names and properties will
                    346: require additional work in this area.
1.1       deraadt   347:
                    348: <h4>Unsupported Devices. First of all, there are MANY unsupported devices.
                    349: A comprehensive list can probably not be written.</h4>
1.3       fn        350: <ul>
1.50      jason     351:  <li> Serial Cards:
1.19      johns     352:   <ul>
1.50      jason     353:    <li> VME mti 16-port serial card
                    354:    <li> VME alm2 16-port serial card
                    355:    <li> VME mcp 4-port serial card (or is it 8 port)
1.19      johns     356:   </ul>
                    357:
1.50      jason     358:  <li>Disk Controllers:
1.19      johns     359:   <ul>
1.50      jason     360:    <li> VME "sc" SCSI controller
                    361:    <li> VME IPI controller
1.19      johns     362:   </ul>
                    363:
1.50      jason     364:  <li> Framebuffers:
1.19      johns     365:   <ul>
1.50      jason     366:    <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered,
                    367:        unaccelerated without GP/GP2
                    368:    <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered,
                    369:        unaccelerated without GP/GP2
                    370:    <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
                    371:    <li> SBus cgeight 24-bit color, unaccelerated
                    372:        (note: SBus cgeight is quite different from VME/P4 cgeight)
                    373:    <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered,
                    374:        3-D acceleration (aka cgtwelve)
                    375:    <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered,
                    376:        3-D acceleration (aka Graphics Tower)
                    377:    <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered,
                    378:        3-D acceleration (aka Leo)
                    379:   </ul>
                    380:
                    381:  <li> SBus cards other those listed above
                    382:  <li> On-board Audio and ISDN hardware present on some sun4m systems
1.66      jason     383:        (LX,ZX, SPARCstation 10/20)
1.50      jason     384:  <li> Multiple Processors/Modules in sun4m systems
                    385:        (OpenBSD will not currently boot on machines with multiple processors.)
1.57      deraadt   386:
                    387:  <li>SUNW,bpp (parallel port driver)
                    388:  <li>FAS scsi controllers
                    389:  <li>FDDI cards
1.3       fn        390: </ul>
1.1       deraadt   391:
1.3       fn        392: <hr>
1.29      downsj    393: <a name=projects>
1.50      jason     394: <h3><font color=#0000e0>Project list:</font></h3>
1.21      johns     395: <ul>
1.50      jason     396:  <li>Merge in useful NetBSD work.
                    397:  <li>Start work on device drivers for unsupported framebuffers.
1.21      johns     398: </ul>
                    399:
                    400: <hr>
1.26      downsj    401:
1.44      pauls     402: <a href=plat.html><img height=24 width=24 src=back.gif border=0 alt=OpenBSD></a>
1.1       deraadt   403: <a href=mailto:www@openbsd.org>www@openbsd.org</a>
1.3       fn        404: <br>
1.71    ! deraadt   405: <small>$OpenBSD: sparc.html,v 1.70 2000/01/26 20:15:57 deraadt Exp $</small>
1.3       fn        406:
                    407: </body>
                    408: </html>