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

Annotation of www/mvme88k.html, Revision 1.49

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: <link rev="made" href="mailto:www@openbsd.org">
                      7: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
1.3       fn          8: <meta name="resource-type" content="document">
                      9: <meta name="description" content="the OpenBSD/mvme88k page">
                     10: <meta name="keywords" content="openbsd,mvme88k">
                     11: <meta name="distribution" content="global">
1.47      jose       12: <meta name="copyright" content="This document copyright 1996-2004 by OpenBSD.">
1.3       fn         13: </head>
                     14:
1.29      miod       15: <body bgcolor="#ffffff" text="#000000" link="#23238e">
                     16: <a href="index.html"><img alt="[OpenBSD]" height="30" width="141" src="images/smalltitle.gif" border="0"></a>
                     17: <p>
                     18: <h2><font color="#e00000">OpenBSD/mvme88k</font></h2>
                     19:
                     20: <hr>
1.3       fn         21:
1.29      miod       22: <p>
1.45      miod       23: OpenBSD/mvme88k is an effort to port OpenBSD to the systems built upon
                     24: Motorola's 881x0-based VME motherboard family.
1.29      miod       25: </p>
1.1       deraadt    26:
1.29      miod       27: <p>
1.37      miod       28: The current port maintainer is Miodrag Vallat
                     29: (<a href="mailto:miod@openbsd.org">miod@openbsd.org</a>), with the help of
                     30: Steve Murphree. Others are definitely welcome to contribute!
1.29      miod       31: </p>
1.3       fn         32:
1.29      miod       33: <a href="#toc"></a>
                     34: <h3><font color="#0000e0"><i>Table of contents</i></font></h3>
1.3       fn         35: <p>
1.13      smurph     36: <ul>
1.31      jufi       37:   <li><a href="#history">History of the port</a>
1.29      miod       38:   <li><a href="#status">Current status</a>
                     39:   <li><a href="#projects">Project list</a>
                     40:   <li><a href="#hardware">Supported hardware list</a>
                     41:   <li><a href="#install">Getting and installing OpenBSD/mvme88k</a>
                     42:   <li><a href="#details">Hardware details</a>
1.13      smurph     43: </ul>
                     44: </p>
                     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.16      smurph     53: hearty, robust platform.
                     54: </p>
1.29      miod       55:
1.13      smurph     56: <p>
1.29      miod       57: Nivas Madhur started the initial mvme88k port for the MVME187 card, but
                     58: has since moved on to another employer.
                     59: The port was brought in the OpenBSD tree by Dale Rahn, but he did not
                     60: have enough time to work on it.
                     61: Steve Murphree, Jr. eventually completed the port to the MVME187 in
                     62: November 1998.
1.13      smurph     63: </p>
                     64:
                     65: <p>
1.29      miod       66: Unfortunately, at the same time, a compiler upgrade from gcc 2.8.1 to
                     67: egcs revealed a lot of problems in the mvme88k support in gcc, which
                     68: could not be fixed in time for mvme88k to be a supported OpenBSD 2.5
                     69: release.
1.13      smurph     70: </p>
                     71:
                     72: <p>
1.29      miod       73: The lack of an in-tree toolchain did not prevent further work on the port,
                     74: and a lot of changes were made to the codebase, such as revamped autoconf
                     75: and on-board SCSI driver, greatly expanded VME bus support, working install
                     76: process that correctly creates a Motorola VID block on the disks,
                     77: and support for MVME188 as well as improving support for MVME197.
1.13      smurph     78: </p>
                     79:
1.34      miod       80: <p>
                     81: During summer 2003, an effort to fix the toolchain eventually produced a
                     82: working gcc 2.95 compiler, and allowed the port to be self-hosting again.
                     83: </p>
                     84:
1.29      miod       85: <hr>
                     86: <a name="status"></a>
                     87: <h3><font color="#0000e0"><strong>Current status:</strong></font></h3>
                     88:
1.13      smurph     89: <p>
1.46      miod       90: Currently, only the MVME187 and some MVME188 boards, as well as similar
                     91: designs, are booting multi-user, supporting most of the on-board devices.
1.39      david      92: There are still a few caveats; depending on your exact hardware setup,
                     93: your mileage may vary.
1.37      miod       94: Work is on progress to fix the remaining problems and reliably support more
                     95: boards.
1.13      smurph     96: </p>
                     97:
1.29      miod       98: <hr>
                     99: <a name="projects"></a>
                    100: <h3><font color="#0000e0"><strong>Projects (in no particular order):
                    101: </strong></font></h3>
1.19      smurph    102:
                    103: <p>
                    104: <ul>
1.37      miod      105:   <li>Fix remaining gcc mvme88k code generation bugs when -O2 optimization
                    106:       is used.
1.38      miod      107:   <li>Support the remaining MVME188 configurations.
                    108:   <li>Improve MVME376 support, which is very flakey.
                    109:   <li>MVME197 support.
1.37      miod      110:   <li>Work on unsupported device cards (MVME327, MVME374...).
                    111:   <li>Write code for new binutils (and gdb), switch to ELF and, later,
1.32      miod      112:       shared libraries.
1.19      smurph    113: </ul>
                    114: </p>
                    115:
1.13      smurph    116: <hr>
1.29      miod      117: <a name="hardware"></a>
                    118: <h3><font color="#0000e0"><strong>Supported hardware:</strong></font></h3>
1.13      smurph    119:
                    120: <p>
1.29      miod      121: <h4>Supported processor boards</h4>
1.13      smurph    122: </p>
                    123:
                    124: <p>
                    125: <ul>
1.35      miod      126: <li><strong>MVME187</strong><br>
                    127: A single 88100 processor-based version of the <a href="mvme68k.html">mvme68k</a>
1.36      miod      128: MVME167 and MVME177 boards. Features two 88200 CMMUs with 16KB cache
1.35      miod      129: each, SRAM, and on-board ethernet and SCSI controllers, as well as four serial
                    130: ports and one parallel port.<br>
1.46      miod      131: <li><strong><i>some</i> MVME188 and MVME188A</strong><br>
1.38      miod      132: Contrary to the other MVME processor boards, this board has no on-board
                    133: devices; it just acts as a container for an <i>HYPERmodule</i> which provides
                    134: one, two or four 88110 processors, and two or four 88200 (16KB cache) or 88204
                    135: (64KB cache) CMMUs per processor.<br>
                    136: Currently, only the following HYPERmodules are supported:
1.40      miod      137: 2P64, 2P256, 4P128, 4P512.<br>
1.38      miod      138: External cards specific to the MVME188 family provide memory and serial ports.
1.13      smurph    139: </ul>
1.29      miod      140: </p>
1.13      smurph    141:
1.29      miod      142: <p>
1.45      miod      143: Besides various Motorola complete systems (<strong>M8120</strong>,
                    144: MVME187-based <strong>series 900</strong>, etc), this port also runs on the
                    145: MVME187-based <strong>Triton Dolphin System 100</strong>.
                    146: </p>
                    147:
                    148: <p>
1.29      miod      149: <h4>Supported on-board devices</h4>
                    150: </p>
1.13      smurph    151:
1.29      miod      152: <p>
1.13      smurph    153: <ul>
1.45      miod      154: <li><strong>MVME187</strong>
1.13      smurph    155:   <ul>
1.49    ! miod      156:   <li>Cirrus Logic CL2400 serial ports (tty00-tty03/tty07<i>[M8120]</i>) (cl)
1.45      miod      157:   <li>Intel 82596CA Ethernet interface
1.43      miod      158: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=ie&amp;sektion=4&amp;arch=mvme88k">ie</a>)
1.45      miod      159:   <li>NCR53c710 SCSI Controller
                    160: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=ssh&amp;sektion=4&amp;arch=mvme88k">ssh</a>)
                    161:   <li>128KB SRAM (/dev/sram0)
                    162:   <li>8KB NVRAM (/dev/nvram0)
1.13      smurph    163:   </ul>
1.45      miod      164: </li>
                    165: <li><strong>MVME188</strong>
1.13      smurph    166:   <ul>
1.45      miod      167:   <li>serial ports on <i>SYSCON</i> board (ttya-ttyb) (dart)
                    168:   <li>2KB NVRAM (/dev/nvram0)
1.13      smurph    169:   </ul>
1.45      miod      170: </li>
1.29      miod      171: </ul>
                    172: </p>
1.13      smurph    173:
1.29      miod      174: <p>
1.45      miod      175: <h4>Supported VME boards</h4>
1.29      miod      176: </p>
1.13      smurph    177:
1.29      miod      178: <p>
1.13      smurph    179: <ul>
1.45      miod      180:   <li><strong>MVME328</strong> High Performance SCSI Controller
1.43      miod      181: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=vs&amp;sektion=4&amp;arch=mvme88k">vs</a>)
1.45      miod      182:   <li><strong>MVME332XT</strong> High Performance Serial I/O Controller
1.42      miod      183:        (8 serial ports, 1 parallel port) (vx)
1.45      miod      184:   <li><strong>MVME376</strong> Ethernet Communications Controller
1.44      miod      185: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=le&amp;sektion=4&amp;arch=mvme88k">le</a>)
1.13      smurph    186: </ul>
1.29      miod      187: </p>
1.13      smurph    188:
1.33      miod      189: <p>
                    190: <h4>Unsupported processor boards</h4>
                    191: <p>
                    192:
                    193: <p>
1.37      miod      194: These boards are currently not supported. However, code for some of them exists
                    195: in the tree, and is currently being debugged.
1.33      miod      196: <ul>
1.48      miod      197: <li><strong>MVME180 <i>``Angelfire''</i> and MVME181</strong><br>
                    198: A low-cost, entry level board, featuring a single 88100 processor, two 88200
                    199: CMMUs and two on-board serial ports.
1.46      miod      200: <li><strong><i>some</i> MVME188 and MVME188A</strong><br>
1.40      miod      201: The following HYPERmodules (with split user/supervisor MMUs) are not supported
1.38      miod      202: at the moment: 1P64, 1P128, 1P256, 1P512, 2P128, 2P512.<br>
1.35      miod      203: <li><strong>MVME197LE</strong><br>
                    204: An entry-level design similar to the MVME187, but based on the 88110 processor
1.37      miod      205: with integrated MMU and cache controller.
1.46      miod      206: <li><strong>MVME197SP and MVME197DP</strong><br>
                    207: Improved versions of the MVME197LE, with one or two 88110 processors, and
                    208: one 88410 external cache controller per processor.
1.33      miod      209: </ul>
                    210: </p>
                    211:
1.13      smurph    212: <hr>
1.29      miod      213: <a name="install"></a>
                    214: <h3><font color="#0000e0">
                    215: <strong>Getting and installing OpenBSD/mvme88k:</strong>
                    216: </font></h3>
                    217:
                    218: <p>
1.38      miod      219: The last OpenBSD/mvme88k release is
                    220: <a href="ftp://ftp.openbsd.org/pub/OpenBSD/3.4/mvme88k/">OpenBSD 3.4</a>, but
                    221: this is not a supported release.<br>
                    222: Snapshots are made available from time to time, in
1.33      miod      223: <a href="ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/mvme88k">this location</a>
                    224: as well as in a few
                    225: <a href="ftp.html">mirrors</a>.
                    226: Here are the
                    227: <a href="ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/mvme88k/INSTALL.mvme88k">
                    228: OpenBSD/mvme88k snapshot installation instructions
                    229: </a> as well.
1.29      miod      230: </p>
1.1       deraadt   231:
1.3       fn        232: <hr>
1.30      miod      233: <a name="details"></a>
1.29      miod      234: <h3><font color="#0000e0"><strong>Hardware details:</strong></font></h3>
1.13      smurph    235:
1.14      smurph    236: <p>
1.29      miod      237: As VME hardware is quite uncommon in the average retail place, and Motorola
                    238: 881x0-based hardware is even more rare, this section is here to satisfy the
                    239: well-founded curiosity about the mvme88k hardware.
1.14      smurph    240: </p>
1.29      miod      241:
1.48      miod      242: <p>
                    243: A comprehensive reference about the m88k processor and the various designs
                    244: built upon it is being gathered by Paul Weissmann at
                    245: <a href="http://www.doorslam.net/m88k/">badabada</a>.
                    246: </p>
                    247:
1.29      miod      248: <a name="pics">
                    249: <p>
                    250: Pictures of a Motorola 900 modular chassis, with a 33MHz MVME187 CPU board,
                    251: 32MB RAM, 4 MVME332XT serial boards, and an Archive 250MB QIC tape drive.
1.14      smurph    252: <ul>
1.29      miod      253:  <li><a href="images/mvme187-1.jpg">MVME187 Series 900 (front view)</a>
1.14      smurph    254:  <li><a href="images/mvme187-2.jpg">MVME187 Series 900 (rear view)</a>
                    255:  <li><a href="images/mvme187-3.jpg">MVME187 Series 900 (rear view w/terminal)</a>
                    256:  <li><a href="images/mvme187-4.jpg">MVME187 Series 900 (rear view close up)</a>
                    257:  <li><a href="images/mvme188-2.jpg">MVME188 Dual proc board</a>
                    258: </ul>
1.15      smurph    259: </p>
                    260:
1.19      smurph    261: <p>
1.33      miod      262: This is a boot log of an MVME187 system.
1.19      smurph    263: <pre>
1.33      miod      264: CPU0 is attached with 2 MC88200 CMMUs
1.21      miod      265: CPU0 is master CPU
1.43      miod      266: [ using 164336 bytes of bsd a.out symbol table ]
1.21      miod      267: Copyright (c) 1982, 1986, 1989, 1991, 1993
1.33      miod      268:         The Regents of the University of California.  All rights reserved.
                    269: Copyright (c) 1995-2003 OpenBSD. All rights reserved.  http://www.OpenBSD.org
1.21      miod      270:
1.43      miod      271: OpenBSD 3.4-current (GENERIC) #339: Thu Dec 25 20:53:33 GMT 2003
                    272:     miod@ramade.gentiane.org:/usr/src/sys/arch/mvme88k/compile/GENERIC
                    273: real mem  = 33554432
                    274: avail mem = 28024832 (6842 pages)
                    275: using 435 buffers containing 1781760 bytes of memory
                    276: mainbus0 (root): Motorola MVME187, 25MHz
1.38      miod      277: cpu0: M88100 rev 0x3, 2 CMMU
                    278: cpu0: M88200 (16K) rev 0x9, global Icache, M88200 (16K) rev 0x9, global Dcache
                    279: bugtty0 at mainbus0 addr 0xfff45000: fallback console
1.33      miod      280: pcctwo0 at mainbus0 addr 0xfff00000: rev 0
1.38      miod      281: clock0 at pcctwo0 ipl 5
1.43      miod      282: memc0 at pcctwo0 offset 0x43000: MEMC040 rev 1
1.33      miod      283: nvram0 at pcctwo0 offset 0xc0000: MK48T08 len 8192
1.43      miod      284: cl0 at pcctwo0 offset 0x45000 ipl 3 console
1.38      miod      285: ssh0 at pcctwo0 offset 0x47000 ipl 2: version 0 target 7
                    286: scsibus0 at ssh0: 8 targets
1.33      miod      287: vme0 at pcctwo0 offset 0x40000: vector base 0x80, system controller
                    288: vme0: using BUG parameters
1.43      miod      289: vme0: 1phys 0x02000000-0xefff0000 to VME 0x02000000-0xefff0000
1.33      miod      290: vme0: 2phys 0xff000000-0xff7f0000 to VME 0xff000000-0xff7f0000
                    291: vme0: 3phys 0x00000000-0x00000000 to VME 0x00000000-0x00000000
                    292: vme0: 4phys 0x00000000-0x00000000 to VME 0x00000000-0x00000000
                    293: vme0: vme to cpu irq level 1:1
1.21      miod      294: vmes0 at vme0
1.43      miod      295: vx0 at vmes0 addr 0xff780000 vaddr 0x3ad0000 vec 0x80 ipl 3
                    296: vx0: created channel 1
                    297: vs0 at vmes0 addr 0xffff9000 vaddr 0x3ae0000 vec 0x81 ipl 2: target 7
1.38      miod      298: scsibus1 at vs0: 8 targets
                    299: sd0 at scsibus1 targ 0 lun 0: &lt;COMPAQPC, DCAS-32160, S6CA&gt; SCSI2 0/direct fixed
1.33      miod      300: sd0: 2006MB, 8188 cyl, 3 head, 167 sec, 512 bytes/sec, 4110000 sec total
1.21      miod      301: vmel0 at vme0
1.43      miod      302: ie0 at pcctwo0 offset 0x46000 ipl 1: address 08:00:3e:21:07:25
1.21      miod      303: boot device: sd0
                    304: root on sd0a
                    305: rootdev=0x400 rrootdev=0x800 rawdev=0x802
1.33      miod      306: Automatic boot in progress: starting file system checks.
                    307: /dev/rsd0a: file system is clean; not checking
                    308: /dev/rsd0d: file system is clean; not checking
                    309: /dev/rsd0e: file system is clean; not checking
                    310: /dev/rsd0f: file system is clean; not checking
                    311: /dev/rsd0g: file system is clean; not checking
                    312: /dev/rsd0h: file system is clean; not checking
                    313: /dev/rsd0i: file system is clean; not checking
                    314: setting tty flags
                    315: ddb.console: 0 -&gt; 1
                    316: kern.splassert: 0 -&gt; 2
                    317: starting network
                    318: add net default: gateway odyssee
                    319: starting system logger
                    320: starting rpc daemons: portmap ypbind rdate timed.
                    321: savecore: no core dump
                    322: checking quotas: done.
                    323: building ps databases: kvm dev.
                    324: clearing /tmp
                    325: starting pre-securelevel daemons:.
                    326: setting kernel security level: kern.securelevel: 0 -&gt; 1
1.36      miod      327: preserving editor files
1.33      miod      328: creating runtime link editor directory cache.
1.36      miod      329: starting network daemons: sendmail inetd sshd.
1.33      miod      330: starting local daemons:.
                    331: standard daemons: cron.
1.48      miod      332: Sat Jan  3 22:58:54 GMT 2004
1.33      miod      333:
1.43      miod      334: OpenBSD/mvme88k (ramade.gentiane.org) (console)
1.33      miod      335:
                    336: login:
1.19      smurph    337: </pre>
                    338:
1.15      smurph    339: <hr>
1.29      miod      340: <a href="plat.html">
                    341: <img height="24" width="24" src="back.gif" border="0" alt="Supported platforms">
                    342: </a>
                    343: <br>
                    344: <small><a href="mailto:www@openbsd.org">www@openbsd.org</a></small>
1.3       fn        345: <br>
1.49    ! miod      346: <small>$OpenBSD: mvme88k.html,v 1.48 2004/01/05 22:30:40 miod Exp $</small>
1.3       fn        347:
                    348: </body>
                    349: </html>