Annotation of www/mvme88k.html, Revision 1.88
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.88 ! miod 12: <meta name="copyright" content="This document copyright 1996-2013 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.80 miod 23: OpenBSD/mvme88k is a port of OpenBSD to the systems built upon
24: Motorola's 88xxx-based VME motherboard family.
1.1 deraadt 25:
1.29 miod 26: <p>
1.64 miod 27: A mailing list for m88k-based ports is available at
28: <u><font color="#23238e">m88k@openbsd.org</font></u>.
29: To join the OpenBSD/m88k mailing list, send a message body of
30: <b>"subscribe m88k"</b> to
31: <a href="mailto:majordomo@openbsd.org">majordomo@openbsd.org</a>.
32: Please be sure to check our <a href="mail.html">mailing list policy</a> before
33: subscribing.
34:
1.67 nick 35: <a name="toc"></a>
1.29 miod 36: <h3><font color="#0000e0"><i>Table of contents</i></font></h3>
1.3 fn 37: <p>
1.13 smurph 38: <ul>
1.31 jufi 39: <li><a href="#history">History of the port</a>
1.29 miod 40: <li><a href="#status">Current status</a>
41: <li><a href="#projects">Project list</a>
1.56 nick 42: <li><a href="#hardware">Supported hardware</a>
1.29 miod 43: <li><a href="#install">Getting and installing OpenBSD/mvme88k</a>
44: <li><a href="#details">Hardware details</a>
1.13 smurph 45: </ul>
46:
47: <hr>
1.29 miod 48: <a name="history"></a>
49: <h3><font color="#0000e0"><strong>History:</strong></font></h3>
1.13 smurph 50:
51: <p>
1.16 smurph 52: The Motorola 88k processor is said to be the best RISC processor ever
1.17 deraadt 53: devised. Its simplicity and elegance combine to make the mvme88k a
1.16 smurph 54: hearty, robust platform.
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:
64: <p>
1.29 miod 65: Unfortunately, at the same time, a compiler upgrade from gcc 2.8.1 to
1.80 miod 66: egcs exposed a lot of problems in the mvme88k support in gcc, which
1.29 miod 67: could not be fixed in time for mvme88k to be a supported OpenBSD 2.5
68: release.
1.13 smurph 69:
70: <p>
1.29 miod 71: The lack of an in-tree toolchain did not prevent further work on the port,
72: and a lot of changes were made to the codebase, such as revamped autoconf
1.80 miod 73: and on-board SCSI driver, greatly expanded VME bus support, a working
74: install process that correctly creates a Motorola VID block on the disks,
1.29 miod 75: and support for MVME188 as well as improving support for MVME197.
1.13 smurph 76:
1.34 miod 77: <p>
78: During summer 2003, an effort to fix the toolchain eventually produced a
79: working gcc 2.95 compiler, and allowed the port to be self-hosting again.
1.54 miod 80: With the help of Mark Kettenis, the toolchain effort eventually produced
81: working binutils and gdb in late may 2004.
1.34 miod 82:
1.69 miod 83: <p>
84: Work towards multiprocessor support on the MVME188 boards started in
85: summer 2005 and, after a lot of tedious bugfixing, was eventually
86: completed shortly after the 4.2 release in november 2007.
87:
1.70 miod 88: <p>
89: The next step was getting the 88110-based MVME197 designs to work.
1.80 miod 90: Single-processor kernels started to run reliably in december 2007;
91: multiprocessor support was completed in march 2009, but kept triggering
92: obscure bugs which eventually got tracked down to a processor errata,
93: fixed for good in april 2010.
1.70 miod 94:
1.29 miod 95: <hr>
96: <a name="status"></a>
97: <h3><font color="#0000e0"><strong>Current status:</strong></font></h3>
98:
1.13 smurph 99: <p>
1.70 miod 100: Currently, MVME187, MVME188 and MVME197 boards, as well as similar
1.46 miod 101: designs, are booting multi-user, supporting most of the on-board devices.
1.39 david 102: There are still a few caveats; depending on your exact hardware setup,
103: your mileage may vary.
1.74 sthen 104: Work is in progress to fix the remaining problems.
1.13 smurph 105:
1.29 miod 106: <hr>
107: <a name="projects"></a>
108: <h3><font color="#0000e0"><strong>Projects (in no particular order):
109: </strong></font></h3>
1.19 smurph 110:
111: <p>
112: <ul>
1.77 miod 113: <li>Work on unsupported device cards (MVME330, MVME374...).
1.88 ! miod 114: <li>Support for ELF shared libraries (in progress).
1.19 smurph 115: </ul>
116:
1.13 smurph 117: <hr>
1.29 miod 118: <a name="hardware"></a>
119: <h3><font color="#0000e0"><strong>Supported hardware:</strong></font></h3>
1.13 smurph 120:
121: <p>
1.29 miod 122: <h4>Supported processor boards</h4>
1.13 smurph 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.55 miod 131: <li><strong>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
1.69 miod 134: one, two or four 88100 processors, and two or four 88200 (16KB cache) or 88204
1.38 miod 135: (64KB cache) CMMUs per processor.<br>
1.55 miod 136: All HYPERmodules combinations are supported, but M88200 1P128 and 1P512 have
137: not been tested.<br>
1.38 miod 138: External cards specific to the MVME188 family provide memory and serial ports.
1.70 miod 139: <br>
1.75 miod 140: Multi-processor kernels are supported on these boards.
1.70 miod 141: <li><strong>MVME197LE</strong><br>
142: An entry-level design similar to the MVME187, but based on the 88110 processor
143: with integrated MMU and cache controller.<br>
144: <li><strong>MVME197SP and MVME197DP</strong><br>
145: Improved versions of the MVME197LE, with one (SP) or two (DP) 88110 processors,
146: and one 88410 external cache controller per processor.<br>
1.80 miod 147: Multi-processor kernels are supported on these boards.
1.13 smurph 148: </ul>
149:
1.29 miod 150: <p>
1.45 miod 151: Besides various Motorola complete systems (<strong>M8120</strong>,
1.76 miod 152: <strong>Series 900</strong>, etc), this port also runs on the
1.45 miod 153: MVME187-based <strong>Triton Dolphin System 100</strong>.
154:
155: <p>
1.29 miod 156: <h4>Supported on-board devices</h4>
1.13 smurph 157:
1.29 miod 158: <p>
1.13 smurph 159: <ul>
1.70 miod 160: <li><strong>MVME187 and MVME197</strong>
1.13 smurph 161: <ul>
1.49 miod 162: <li>Cirrus Logic CL2400 serial ports (tty00-tty03/tty07<i>[M8120]</i>) (cl)
1.45 miod 163: <li>Intel 82596CA Ethernet interface
1.43 miod 164: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=ie&sektion=4&arch=mvme88k">ie</a>)
1.45 miod 165: <li>NCR53c710 SCSI Controller
1.53 miod 166: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=osiop&sektion=4&arch=mvme88k">osiop</a>)
1.45 miod 167: <li>128KB SRAM (/dev/sram0)
168: <li>8KB NVRAM (/dev/nvram0)
1.13 smurph 169: </ul>
1.45 miod 170: </li>
171: <li><strong>MVME188</strong>
1.13 smurph 172: <ul>
1.45 miod 173: <li>serial ports on <i>SYSCON</i> board (ttya-ttyb) (dart)
174: <li>2KB NVRAM (/dev/nvram0)
1.13 smurph 175: </ul>
1.45 miod 176: </li>
1.29 miod 177: </ul>
1.13 smurph 178:
1.29 miod 179: <p>
1.45 miod 180: <h4>Supported VME boards</h4>
1.13 smurph 181:
1.29 miod 182: <p>
1.13 smurph 183: <ul>
1.77 miod 184: <li><strong>MVME327A</strong> SCSI and floppy Controller
185: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=vsbic&sektion=4&arch=mvme88k">vsbic</a>),
186: currently limited to the SCSI interface
1.45 miod 187: <li><strong>MVME328</strong> High Performance SCSI Controller
1.43 miod 188: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=vs&sektion=4&arch=mvme88k">vs</a>)
1.45 miod 189: <li><strong>MVME332XT</strong> High Performance Serial I/O Controller
1.42 miod 190: (8 serial ports, 1 parallel port) (vx)
1.45 miod 191: <li><strong>MVME376</strong> Ethernet Communications Controller
1.44 miod 192: (<a href="http://www.openbsd.org/cgi-bin/man.cgi?query=le&sektion=4&arch=mvme88k">le</a>)
1.13 smurph 193: </ul>
194:
1.33 miod 195: <p>
196: <h4>Unsupported processor boards</h4>
197: <p>
198:
199: <p>
1.70 miod 200: These boards are currently not supported. There is nothing, apart from lack
1.72 saad 201: of available hardware, preventing them from being supported eventually.
1.33 miod 202: <ul>
1.48 miod 203: <li><strong>MVME180 <i>``Angelfire''</i> and MVME181</strong><br>
204: A low-cost, entry level board, featuring a single 88100 processor, two 88200
205: CMMUs and two on-board serial ports.
1.33 miod 206: </ul>
207:
1.13 smurph 208: <hr>
1.29 miod 209: <a name="install"></a>
210: <h3><font color="#0000e0">
211: <strong>Getting and installing OpenBSD/mvme88k:</strong>
212: </font></h3>
213:
214: <p>
1.52 david 215: The latest supported OpenBSD/mvme88k release is
1.86 sthen 216: <a href="52.html">OpenBSD 5.2</a>.
1.52 david 217: Here are the
1.86 sthen 218: <a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/5.2/mvme88k/INSTALL.mvme88k">
219: OpenBSD/mvme88k 5.2 installation instructions
1.52 david 220: </a>.
221:
222: <p>
1.38 miod 223: Snapshots are made available from time to time, in
1.52 david 224: <a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/mvme88k">this location</a>
1.33 miod 225: as well as in a few
226: <a href="ftp.html">mirrors</a>.
227: Here are the
1.52 david 228: <a href="ftp://ftp.OpenBSD.org/pub/OpenBSD/snapshots/mvme88k/INSTALL.mvme88k">
1.33 miod 229: OpenBSD/mvme88k snapshot installation instructions
230: </a> as well.
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.
240:
1.48 miod 241: <p>
242: A comprehensive reference about the m88k processor and the various designs
243: built upon it is being gathered by Paul Weissmann at
1.57 miod 244: <a href="http://badabada.org/">badabada</a>.
1.48 miod 245:
1.52 david 246: <a name="pics"></a>
1.29 miod 247: <p>
248: Pictures of a Motorola 900 modular chassis, with a 33MHz MVME187 CPU board,
249: 32MB RAM, 4 MVME332XT serial boards, and an Archive 250MB QIC tape drive.
1.14 smurph 250: <ul>
1.29 miod 251: <li><a href="images/mvme187-1.jpg">MVME187 Series 900 (front view)</a>
1.14 smurph 252: <li><a href="images/mvme187-2.jpg">MVME187 Series 900 (rear view)</a>
253: <li><a href="images/mvme187-3.jpg">MVME187 Series 900 (rear view w/terminal)</a>
254: <li><a href="images/mvme187-4.jpg">MVME187 Series 900 (rear view close up)</a>
255: <li><a href="images/mvme188-2.jpg">MVME188 Dual proc board</a>
256: </ul>
1.15 smurph 257:
1.19 smurph 258: <p>
1.80 miod 259: This is a boot log of an MVME197DP system.
1.19 smurph 260: <pre>
1.80 miod 261: [ using 205464 bytes of bsd a.out symbol table ]
1.21 miod 262: Copyright (c) 1982, 1986, 1989, 1991, 1993
1.33 miod 263: The Regents of the University of California. All rights reserved.
1.80 miod 264: Copyright (c) 1995-2010 OpenBSD. All rights reserved. http://www.OpenBSD.org
1.21 miod 265:
1.80 miod 266: OpenBSD 4.7-current (GENERIC.MP) #308: Thu Apr 15 21:09:19 GMT 2010
267: miod@arzon.gentiane.org:/usr/src/sys/arch/mvme88k/compile/GENERIC.MP
268: real mem = 134217728 (128MB)
269: avail mem = 125927424 (120MB)
1.71 miod 270: mainbus0 at root: Motorola MVME197, 50MHz
271: cpu0: M88110 version 0xf, 8K I/D caches
272: cpu0: external M88410 cache controller
1.80 miod 273: cpu1: M88110 version 0xf, 8K I/D caches
274: cpu1: external M88410 cache controller
1.71 miod 275: bussw0 at mainbus0 addr 0xfff00000: rev 4
276: pcctwo0 at bussw0 offset 0x0: rev 0
277: nvram0 at pcctwo0 offset 0xc0000: MK48T08
278: cl0 at pcctwo0 offset 0x45000 ipl 3: console
1.80 miod 279: osiop0 at pcctwo0 offset 0x47000 ipl 2: NCR53C710 rev 2, 50MHz
280: scsibus0 at osiop0: 8 targets, initiator 7
281: osiop0: target 0 now using 8 bit 10 MHz 8 REQ/ACK offset xfers
282: sd0 at scsibus0 targ 0 lun 0: <SAMSUNG, WN34324U (gm030), 0105> SCSI2 0/direct fixed
283: sd0: 4120MB, 512 bytes/sec, 8438976 sec total
284: osiop0: target 1 now using 8 bit 10 MHz 8 REQ/ACK offset xfers
285: sd1 at scsibus0 targ 1 lun 0: <QUANTUM, FIREBALL_TM3200S, 300X> SCSI2 0/direct fixed
286: sd1: 3067MB, 512 bytes/sec, 6281856 sec total
287: vme0 at pcctwo0 offset 0x40000
1.33 miod 288: vme0: using BUG parameters
1.80 miod 289: vme0: 1phys 0x08000000-0xefff0000 to VME 0x08000000-0xefff0000
1.33 miod 290: vme0: vme to cpu irq level 1:1
1.21 miod 291: vmes0 at vme0
292: vmel0 at vme0
1.71 miod 293: ie0 at pcctwo0 offset 0x46000 ipl 3: address 08:00:3e:23:ed:e8
1.80 miod 294: vscsi0 at root
295: scsibus1 at vscsi0: 256 targets
1.71 miod 296: softraid0 at root
1.21 miod 297: boot device: sd0
1.71 miod 298: root on sd0a swap on sd0b dump on sd0b
1.33 miod 299: Automatic boot in progress: starting file system checks.
300: /dev/rsd0a: file system is clean; not checking
1.80 miod 301: /dev/rsd0f: file system is clean; not checking
302: /dev/rsd1a: file system is clean; not checking
1.33 miod 303: /dev/rsd0d: file system is clean; not checking
1.80 miod 304: /dev/rsd0h: file system is clean; not checking
1.33 miod 305: /dev/rsd0e: file system is clean; not checking
306: /dev/rsd0g: file system is clean; not checking
307: setting tty flags
308: ddb.console: 0 -> 1
1.71 miod 309: kern.splassert: 1 -> 2
1.33 miod 310: starting network
311: starting system logger
1.80 miod 312: starting initial daemons: portmap ypbind rdate ntpd.
1.33 miod 313: savecore: no core dump
314: checking quotas: done.
315: building ps databases: kvm dev.
316: clearing /tmp
317: starting pre-securelevel daemons:.
318: setting kernel security level: kern.securelevel: 0 -> 1
1.71 miod 319: creating runtime link editor directory cache.
1.80 miod 320: preserving editor files.
1.36 miod 321: starting network daemons: sendmail inetd sshd.
1.33 miod 322: starting local daemons:.
323: standard daemons: cron.
1.80 miod 324: Thu Apr 15 21:12:51 GMT 2010
1.33 miod 325:
1.80 miod 326: OpenBSD/mvme88k (arzon.gentiane.org) (console)
1.33 miod 327:
1.80 miod 328: login:
1.19 smurph 329: </pre>
330:
1.15 smurph 331: <hr>
1.29 miod 332: <a href="plat.html">
333: <img height="24" width="24" src="back.gif" border="0" alt="Supported platforms">
334: </a>
335: <br>
336: <small><a href="mailto:www@openbsd.org">www@openbsd.org</a></small>
1.3 fn 337: <br>
1.88 ! miod 338: <small>$OpenBSD: mvme88k.html,v 1.87 2012/11/22 03:00:50 nick Exp $</small>
1.3 fn 339:
340: </body>
341: </html>