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

Annotation of www/mvme88k.html, Revision 1.94

1.29      miod        1: <!DOCTYPE HTML PUBLIC  "-//W3C//DTD HTML 4.01 Transitional//EN"
                      2:        "http://www.w3.org/TR/html4/loose.dtd">
1.3       fn          3: <html>
1.1       deraadt     4: <head>
                      5: <title>OpenBSD/mvme88k</title>
1.29      miod        6: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
1.3       fn          7: <meta name="resource-type" content="document">
                      8: <meta name="description" content="the OpenBSD/mvme88k page">
                      9: <meta name="keywords" content="openbsd,mvme88k">
                     10: <meta name="distribution" content="global">
1.88      miod       11: <meta name="copyright" content="This document copyright 1996-2013 by OpenBSD.">
1.3       fn         12: </head>
                     13:
1.29      miod       14: <body bgcolor="#ffffff" text="#000000" link="#23238e">
                     15: <a href="index.html"><img alt="[OpenBSD]" height="30" width="141" src="images/smalltitle.gif" border="0"></a>
                     16: <p>
                     17: <h2><font color="#e00000">OpenBSD/mvme88k</font></h2>
                     18:
                     19: <hr>
1.3       fn         20:
1.29      miod       21: <p>
1.80      miod       22: OpenBSD/mvme88k is a port of OpenBSD to the systems built upon
                     23: Motorola's 88xxx-based VME motherboard family.
1.1       deraadt    24:
1.29      miod       25: <p>
1.64      miod       26: A mailing list for m88k-based ports is available at
                     27: <u><font color="#23238e">m88k@openbsd.org</font></u>.
                     28: To join the OpenBSD/m88k mailing list, send a message body of
                     29: <b>"subscribe m88k"</b> to
                     30: <a href="mailto:majordomo@openbsd.org">majordomo@openbsd.org</a>.
                     31: Please be sure to check our <a href="mail.html">mailing list policy</a> before
                     32: subscribing.
                     33:
1.67      nick       34: <a name="toc"></a>
1.29      miod       35: <h3><font color="#0000e0"><i>Table of contents</i></font></h3>
1.3       fn         36: <p>
1.13      smurph     37: <ul>
1.31      jufi       38:   <li><a href="#history">History of the port</a>
1.29      miod       39:   <li><a href="#status">Current status</a>
                     40:   <li><a href="#projects">Project list</a>
1.56      nick       41:   <li><a href="#hardware">Supported hardware</a>
1.29      miod       42:   <li><a href="#install">Getting and installing OpenBSD/mvme88k</a>
                     43:   <li><a href="#details">Hardware details</a>
1.13      smurph     44: </ul>
                     45:
                     46: <hr>
1.29      miod       47: <a name="history"></a>
                     48: <h3><font color="#0000e0"><strong>History:</strong></font></h3>
1.13      smurph     49:
                     50: <p>
1.16      smurph     51: The Motorola 88k processor is said to be the best RISC processor ever
1.17      deraadt    52: devised.  Its simplicity and elegance combine to make the mvme88k a
1.89      miod       53: hearty, robust platform.
1.29      miod       54:
1.13      smurph     55: <p>
1.89      miod       56: Unfortunately, the first generation designs (88100) made use of companion chips
                     57: for cache and virtual memory management, making hardware designs painfully
                     58: complex (and expensive, at that time).  The second generation (88110) addressed
1.91      miod       59: this issue, but was plagued with reliability issues.  Eventually, Motorola
1.89      miod       60: seized the opportunity to drop the 88000 line in favour of the PowerPC as soon
                     61: as possible, although some parts of the 88110 still exist in the PowerPC family
                     62: processors today.
                     63:
                     64: <p>
                     65: Nivas Madhur started the initial mvme88k port for the MVME187 card, building
                     66: upon the CMU Mach code running on the 88100-based Omron Luna88k systems.
                     67: However, he moved on to another employer before his work was ready to be
                     68: imported into the OpenBSD source tree.
                     69:
                     70: <p>
                     71: This integration work was completed by Dale Rahn, but he did not have enough
                     72: time to continue working on the port.  Steve Murphree, Jr., stepped up, and
                     73: eventually completed the port to the MVME187 in November 1998.
1.13      smurph     74:
                     75: <p>
1.29      miod       76: Unfortunately, at the same time, a compiler upgrade from gcc 2.8.1 to
1.80      miod       77: egcs exposed a lot of problems in the mvme88k support in gcc, which
1.29      miod       78: could not be fixed in time for mvme88k to be a supported OpenBSD 2.5
                     79: release.
1.13      smurph     80:
                     81: <p>
1.29      miod       82: The lack of an in-tree toolchain did not prevent further work on the port,
                     83: and a lot of changes were made to the codebase, such as revamped autoconf
1.80      miod       84: and on-board SCSI driver, greatly expanded VME bus support, a working
                     85: install process that correctly creates a Motorola VID block on the disks,
1.29      miod       86: and support for MVME188 as well as improving support for MVME197.
1.13      smurph     87:
1.34      miod       88: <p>
                     89: During summer 2003, an effort to fix the toolchain eventually produced a
                     90: working gcc 2.95 compiler, and allowed the port to be self-hosting again.
1.54      miod       91: With the help of Mark Kettenis, the toolchain effort eventually produced
                     92: working binutils and gdb in late may 2004.
1.34      miod       93:
1.69      miod       94: <p>
                     95: Work towards multiprocessor support on the MVME188 boards started in
                     96: summer 2005 and, after a lot of tedious bugfixing, was eventually
                     97: completed shortly after the 4.2 release in november 2007.
                     98:
1.70      miod       99: <p>
                    100: The next step was getting the 88110-based MVME197 designs to work.
1.80      miod      101: Single-processor kernels started to run reliably in december 2007;
                    102: multiprocessor support was completed in march 2009, but kept triggering
                    103: obscure bugs which eventually got tracked down to a processor errata,
                    104: fixed for good in april 2010.
1.70      miod      105:
1.89      miod      106: <p>
                    107: The long-awaited switch from the a.out binary format to ELF happened after the
1.93      sthen     108: 5.3 release, with a compiler upgrade to gcc 3.3.6.  This work paved the way
1.90      miod      109: for ELF shared libraries support.
1.89      miod      110:
1.29      miod      111: <hr>
                    112: <a name="status"></a>
                    113: <h3><font color="#0000e0"><strong>Current status:</strong></font></h3>
                    114:
1.13      smurph    115: <p>
1.70      miod      116: Currently, MVME187, MVME188 and MVME197 boards, as well as similar
1.46      miod      117: designs, are booting multi-user, supporting most of the on-board devices.
1.39      david     118: There are still a few caveats; depending on your exact hardware setup,
                    119: your mileage may vary.
1.74      sthen     120: Work is in progress to fix the remaining problems.
1.13      smurph    121:
1.29      miod      122: <hr>
                    123: <a name="projects"></a>
                    124: <h3><font color="#0000e0"><strong>Projects (in no particular order):
                    125: </strong></font></h3>
1.19      smurph    126:
                    127: <p>
                    128: <ul>
1.77      miod      129:   <li>Work on unsupported device cards (MVME330, MVME374...).
1.19      smurph    130: </ul>
                    131:
1.13      smurph    132: <hr>
1.29      miod      133: <a name="hardware"></a>
                    134: <h3><font color="#0000e0"><strong>Supported hardware:</strong></font></h3>
1.13      smurph    135:
                    136: <p>
1.29      miod      137: <h4>Supported processor boards</h4>
1.13      smurph    138:
                    139: <p>
                    140: <ul>
1.35      miod      141: <li><strong>MVME187</strong><br>
                    142: A single 88100 processor-based version of the <a href="mvme68k.html">mvme68k</a>
1.36      miod      143: MVME167 and MVME177 boards. Features two 88200 CMMUs with 16KB cache
1.35      miod      144: each, SRAM, and on-board ethernet and SCSI controllers, as well as four serial
                    145: ports and one parallel port.<br>
1.55      miod      146: <li><strong>MVME188 and MVME188A</strong><br>
1.38      miod      147: Contrary to the other MVME processor boards, this board has no on-board
                    148: devices; it just acts as a container for an <i>HYPERmodule</i> which provides
1.69      miod      149: one, two or four 88100 processors, and two or four 88200 (16KB cache) or 88204
1.38      miod      150: (64KB cache) CMMUs per processor.<br>
1.55      miod      151: All HYPERmodules combinations are supported, but M88200 1P128 and 1P512 have
                    152: not been tested.<br>
1.38      miod      153: External cards specific to the MVME188 family provide memory and serial ports.
1.70      miod      154: <br>
1.75      miod      155: Multi-processor kernels are supported on these boards.
1.70      miod      156: <li><strong>MVME197LE</strong><br>
                    157: An entry-level design similar to the MVME187, but based on the 88110 processor
                    158: with integrated MMU and cache controller.<br>
                    159: <li><strong>MVME197SP and MVME197DP</strong><br>
                    160: Improved versions of the MVME197LE, with one (SP) or two (DP) 88110 processors,
                    161: and one 88410 external cache controller per processor.<br>
1.80      miod      162: Multi-processor kernels are supported on these boards.
1.13      smurph    163: </ul>
                    164:
1.29      miod      165: <p>
1.45      miod      166: Besides various Motorola complete systems (<strong>M8120</strong>,
1.76      miod      167: <strong>Series 900</strong>, etc), this port also runs on the
1.45      miod      168: MVME187-based <strong>Triton Dolphin System 100</strong>.
                    169:
                    170: <p>
1.29      miod      171: <h4>Supported on-board devices</h4>
1.13      smurph    172:
1.29      miod      173: <p>
1.13      smurph    174: <ul>
1.70      miod      175: <li><strong>MVME187 and MVME197</strong>
1.13      smurph    176:   <ul>
1.49      miod      177:   <li>Cirrus Logic CL2400 serial ports (tty00-tty03/tty07<i>[M8120]</i>) (cl)
1.45      miod      178:   <li>Intel 82596CA Ethernet interface
1.43      miod      179: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=ie&amp;sektion=4&amp;arch=mvme88k">ie</a>)
1.45      miod      180:   <li>NCR53c710 SCSI Controller
1.53      miod      181: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=osiop&amp;sektion=4&amp;arch=mvme88k">osiop</a>)
1.45      miod      182:   <li>128KB SRAM (/dev/sram0)
                    183:   <li>8KB NVRAM (/dev/nvram0)
1.13      smurph    184:   </ul>
1.45      miod      185: </li>
                    186: <li><strong>MVME188</strong>
1.13      smurph    187:   <ul>
1.45      miod      188:   <li>serial ports on <i>SYSCON</i> board (ttya-ttyb) (dart)
                    189:   <li>2KB NVRAM (/dev/nvram0)
1.13      smurph    190:   </ul>
1.45      miod      191: </li>
1.29      miod      192: </ul>
1.13      smurph    193:
1.29      miod      194: <p>
1.45      miod      195: <h4>Supported VME boards</h4>
1.13      smurph    196:
1.29      miod      197: <p>
1.13      smurph    198: <ul>
1.77      miod      199:   <li><strong>MVME327A</strong> SCSI and floppy Controller
                    200: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=vsbic&amp;sektion=4&amp;arch=mvme88k">vsbic</a>),
                    201: currently limited to the SCSI interface
1.45      miod      202:   <li><strong>MVME328</strong> High Performance SCSI Controller
1.43      miod      203: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=vs&amp;sektion=4&amp;arch=mvme88k">vs</a>)
1.45      miod      204:   <li><strong>MVME332XT</strong> High Performance Serial I/O Controller
1.42      miod      205:        (8 serial ports, 1 parallel port) (vx)
1.45      miod      206:   <li><strong>MVME376</strong> Ethernet Communications Controller
1.44      miod      207: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=le&amp;sektion=4&amp;arch=mvme88k">le</a>)
1.13      smurph    208: </ul>
                    209:
1.33      miod      210: <p>
                    211: <h4>Unsupported processor boards</h4>
                    212: <p>
                    213:
                    214: <p>
1.70      miod      215: These boards are currently not supported. There is nothing, apart from lack
1.72      saad      216: of available hardware, preventing them from being supported eventually.
1.33      miod      217: <ul>
1.48      miod      218: <li><strong>MVME180 <i>``Angelfire''</i> and MVME181</strong><br>
                    219: A low-cost, entry level board, featuring a single 88100 processor, two 88200
                    220: CMMUs and two on-board serial ports.
1.33      miod      221: </ul>
                    222:
1.13      smurph    223: <hr>
1.29      miod      224: <a name="install"></a>
                    225: <h3><font color="#0000e0">
                    226: <strong>Getting and installing OpenBSD/mvme88k:</strong>
                    227: </font></h3>
                    228:
                    229: <p>
1.52      david     230: The latest supported OpenBSD/mvme88k release is
1.93      sthen     231: <a href="54.html">OpenBSD 5.4</a>.
1.52      david     232: Here are the
1.93      sthen     233: <a href="http://ftp.OpenBSD.org/pub/OpenBSD/5.4/mvme88k/INSTALL.mvme88k">
                    234: OpenBSD/mvme88k 5.4 installation instructions
1.52      david     235: </a>.
                    236:
                    237: <p>
1.38      miod      238: Snapshots are made available from time to time, in
1.92      sthen     239: <a href="http://ftp.OpenBSD.org/pub/OpenBSD/snapshots/mvme88k">this location</a>
1.33      miod      240: as well as in a few
                    241: <a href="ftp.html">mirrors</a>.
                    242: Here are the
1.92      sthen     243: <a href="http://ftp.OpenBSD.org/pub/OpenBSD/snapshots/mvme88k/INSTALL.mvme88k">
1.33      miod      244: OpenBSD/mvme88k snapshot installation instructions
                    245: </a> as well.
1.1       deraadt   246:
1.3       fn        247: <hr>
1.30      miod      248: <a name="details"></a>
1.29      miod      249: <h3><font color="#0000e0"><strong>Hardware details:</strong></font></h3>
1.13      smurph    250:
1.14      smurph    251: <p>
1.29      miod      252: As VME hardware is quite uncommon in the average retail place, and Motorola
                    253: 881x0-based hardware is even more rare, this section is here to satisfy the
                    254: well-founded curiosity about the mvme88k hardware.
                    255:
1.89      miod      256: <!--
1.48      miod      257: <p>
                    258: A comprehensive reference about the m88k processor and the various designs
                    259: built upon it is being gathered by Paul Weissmann at
1.57      miod      260: <a href="http://badabada.org/">badabada</a>.
1.89      miod      261: -->
1.48      miod      262:
1.52      david     263: <a name="pics"></a>
1.29      miod      264: <p>
                    265: Pictures of a Motorola 900 modular chassis, with a 33MHz MVME187 CPU board,
                    266: 32MB RAM, 4 MVME332XT serial boards, and an Archive 250MB QIC tape drive.
1.14      smurph    267: <ul>
1.29      miod      268:  <li><a href="images/mvme187-1.jpg">MVME187 Series 900 (front view)</a>
1.14      smurph    269:  <li><a href="images/mvme187-2.jpg">MVME187 Series 900 (rear view)</a>
                    270:  <li><a href="images/mvme187-3.jpg">MVME187 Series 900 (rear view w/terminal)</a>
                    271:  <li><a href="images/mvme187-4.jpg">MVME187 Series 900 (rear view close up)</a>
                    272:  <li><a href="images/mvme188-2.jpg">MVME188 Dual proc board</a>
                    273: </ul>
1.3       fn        274:
                    275: </body>
                    276: </html>