Annotation of www/mvme88k.html, Revision 1.37
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.30 miod 12: <meta name="copyright" content="This document copyright 1996-2003 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>
23: OpenBSD/mvme88k is an effort to port OpenBSD to the Motorola's 881x0-based
24: VME motherboard family.
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.37 ! miod 90: Currently, only the MVME187 board and similar designs are supported, and will
! 91: boot multi-user, supporting most of the on-board devices. There are still
! 92: a few caveats; depending on your exact hardware setup, your mileage may vary.
! 93: Work is on progress to fix the remaining problems and reliably support more
! 94: boards.
1.13 smurph 95: </p>
96:
1.29 miod 97: <hr>
98: <a name="projects"></a>
99: <h3><font color="#0000e0"><strong>Projects (in no particular order):
100: </strong></font></h3>
1.19 smurph 101:
102: <p>
103: <ul>
1.37 ! miod 104: <li>Fix remaining gcc mvme88k code generation bugs when -O2 optimization
! 105: is used.
1.36 miod 106: <li>Repair MVME188 and MVME197LE support; finish MVME197SP/DP support.
1.37 ! miod 107: <li>Work on unsupported device cards (MVME327, MVME374...).
! 108: <li>Write code for new binutils (and gdb), switch to ELF and, later,
1.32 miod 109: shared libraries.
1.19 smurph 110: </ul>
111: </p>
112:
1.13 smurph 113: <hr>
1.29 miod 114: <a name="hardware"></a>
115: <h3><font color="#0000e0"><strong>Supported hardware:</strong></font></h3>
1.13 smurph 116:
117: <p>
1.29 miod 118: <h4>Supported processor boards</h4>
1.13 smurph 119: </p>
120:
121: <p>
122: <ul>
1.35 miod 123: <li><strong>MVME187</strong><br>
124: A single 88100 processor-based version of the <a href="mvme68k.html">mvme68k</a>
1.36 miod 125: MVME167 and MVME177 boards. Features two 88200 CMMUs with 16KB cache
1.35 miod 126: each, SRAM, and on-board ethernet and SCSI controllers, as well as four serial
127: ports and one parallel port.<br>
1.29 miod 128: All the on-board devices are supported, except for the parallel port.
1.34 miod 129: <li><strong>Motorola M8120</strong><br>
1.33 miod 130: This system is based on an MVME187 with no VMEBus, and is supported as well
131: as the regular MVME187.
1.13 smurph 132: </ul>
1.29 miod 133: </p>
1.13 smurph 134:
1.29 miod 135: <p>
136: <h4>Supported on-board devices</h4>
137: </p>
1.13 smurph 138:
1.29 miod 139: <p>
1.13 smurph 140: <ul>
1.29 miod 141: <li><strong>Serial ports</strong>
1.13 smurph 142: <ul>
1.36 miod 143: <li>MVME187 on-board Cirrus Logic CL2400 serial ports (tty00-tty03)<br>
144: The second set of serial ports found on the M8120 only is currently not
145: supported.
1.33 miod 146: <!-- <li>MVME188 SYSCON DUART serial ports (ttya, ttyb) -->
1.13 smurph 147: </ul>
1.29 miod 148: <li><strong>Ethernet adapters</strong>
1.13 smurph 149: <ul>
1.33 miod 150: <li>MVME187 <!-- and MVME197 -->on-board Intel i82586 interface
1.13 smurph 151: </ul>
1.29 miod 152: <li><strong>SCSI controllers</strong>
1.13 smurph 153: <ul>
1.33 miod 154: <li>MVME187 <!-- and MVME197 -->on-board NCR 53c7xx controller
1.13 smurph 155: </ul>
1.29 miod 156: </ul>
157: </p>
1.13 smurph 158:
1.29 miod 159: <p>
160: <h4>Supported extension boards</h4>
161: </p>
1.13 smurph 162:
1.29 miod 163: <p>
1.13 smurph 164: <ul>
1.29 miod 165: <li><strong>MVME328</strong>: SCSI controller
166: <li><strong>MVME332</strong>: 8 port serial board
167: <li><strong>MVME376</strong>: VME Lance ethernet
1.13 smurph 168: </ul>
1.29 miod 169: </p>
1.13 smurph 170:
1.33 miod 171: <p>
172: <h4>Unsupported processor boards</h4>
173: <p>
174:
175: <p>
1.37 ! miod 176: These boards are currently not supported. However, code for some of them exists
! 177: in the tree, and is currently being debugged.
1.33 miod 178: <ul>
1.37 ! miod 179: <li><strong>MVME181</strong><br>
! 180: A stripped-down MVME187 with no on-board devices, except for serial ports.
1.35 miod 181: <li><strong>MVME188 and MVME188A</strong><br>
1.33 miod 182: Contrary to the other MVME processor boards, this board has no on-board
183: devices; it just acts as a container for an <i>HyperModule</i> which provides
1.36 miod 184: one, two or four 88110 processors, and two or four 88200 (16KB cache) or 88204
185: (64KB cache) CMMUs per processor.<br>
1.37 ! miod 186: <!--
1.33 miod 187: All existing HyperModule models should be supported, but this has only been
188: tested so far on 1P64 (1 cpu, 4 cmmu) and 2P256 (2 cpu, 4 cmmu) modules.
1.37 ! miod 189: -->
1.33 miod 190: External cards specific to the MVME188 family provide memory and serial ports.
1.35 miod 191: <li><strong>MVME197LE</strong><br>
192: An entry-level design similar to the MVME187, but based on the 88110 processor
1.37 ! miod 193: with integrated MMU and cache controller.
1.35 miod 194: <li><strong>MVME197SP/DP</strong><br>
195: Improved version of the MVME197LE, with one or two 88110 processors, and
196: associated 88410 external cache controllers.
1.33 miod 197: </ul>
198: </p>
199:
1.13 smurph 200: <hr>
1.29 miod 201: <a name="install"></a>
202: <h3><font color="#0000e0">
203: <strong>Getting and installing OpenBSD/mvme88k:</strong>
204: </font></h3>
205:
206: <p>
1.37 ! miod 207: There is currently no supported OpenBSD/mvme88k release. However,
! 208: snapshots are made available from time to time, in
1.33 miod 209: <a href="ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/mvme88k">this location</a>
210: as well as in a few
211: <a href="ftp.html">mirrors</a>.
212: Here are the
213: <a href="ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/mvme88k/INSTALL.mvme88k">
214: OpenBSD/mvme88k snapshot installation instructions
215: </a> as well.
1.29 miod 216: </p>
1.1 deraadt 217:
1.3 fn 218: <hr>
1.30 miod 219: <a name="details"></a>
1.29 miod 220: <h3><font color="#0000e0"><strong>Hardware details:</strong></font></h3>
1.13 smurph 221:
1.14 smurph 222: <p>
1.29 miod 223: As VME hardware is quite uncommon in the average retail place, and Motorola
224: 881x0-based hardware is even more rare, this section is here to satisfy the
225: well-founded curiosity about the mvme88k hardware.
1.14 smurph 226: </p>
1.29 miod 227:
228: <a name="pics">
229: <p>
230: Pictures of a Motorola 900 modular chassis, with a 33MHz MVME187 CPU board,
231: 32MB RAM, 4 MVME332XT serial boards, and an Archive 250MB QIC tape drive.
1.14 smurph 232: <ul>
1.29 miod 233: <li><a href="images/mvme187-1.jpg">MVME187 Series 900 (front view)</a>
1.14 smurph 234: <li><a href="images/mvme187-2.jpg">MVME187 Series 900 (rear view)</a>
235: <li><a href="images/mvme187-3.jpg">MVME187 Series 900 (rear view w/terminal)</a>
236: <li><a href="images/mvme187-4.jpg">MVME187 Series 900 (rear view close up)</a>
237: <li><a href="images/mvme188-2.jpg">MVME188 Dual proc board</a>
238: </ul>
1.15 smurph 239: </p>
240:
1.19 smurph 241: <p>
1.33 miod 242: This is a boot log of an MVME187 system.
1.19 smurph 243: <pre>
1.33 miod 244: CPU0 is attached with 2 MC88200 CMMUs
1.21 miod 245: CPU0 is master CPU
1.33 miod 246: [ using 163088 bytes of bsd a.out symbol table ]
1.21 miod 247: Copyright (c) 1982, 1986, 1989, 1991, 1993
1.33 miod 248: The Regents of the University of California. All rights reserved.
249: Copyright (c) 1995-2003 OpenBSD. All rights reserved. http://www.OpenBSD.org
1.21 miod 250:
1.36 miod 251: OpenBSD 3.4-beta (GENERIC) #202: Tue Sep 2 20:46:50 GMT 2003
1.33 miod 252: miod@arzon:/usr/src/sys/arch/mvme88k/compile/GENERIC
253: Model: Motorola MVME187, 33MHz
254: real mem = 67108864
1.36 miod 255: avail mem = 59142144 (14439 pages)
1.33 miod 256: using 844 buffers containing 3457024 bytes of memory
257: mainbus0 (root) machine type MVME187
1.21 miod 258: bugtty0 at mainbus0 addr 0xfff45000: bugtty
1.33 miod 259: pcctwo0 at mainbus0 addr 0xfff00000: rev 0
260: clock0 at pcctwo0 ipl 5: VME1x7
261: sclock0 at pcctwo0 ipl 5: VME1x7
262: memc0 at pcctwo0 offset 0x43000: MEMC040 rev 1
263: memc1 at pcctwo0 offset 0x43100: MCECC rev 0
264: nvram0 at pcctwo0 offset 0xc0000: MK48T08 len 8192
265: cl0 at pcctwo0 offset 0x45000 ipl 3 console
266: vme0 at pcctwo0 offset 0x40000: vector base 0x80, system controller
267: vme0: using BUG parameters
268: vme0: 1phys 0x04000000-0xefff0000 to VME 0x04000000-0xefff0000
269: vme0: 2phys 0xff000000-0xff7f0000 to VME 0xff000000-0xff7f0000
270: vme0: 3phys 0x00000000-0x00000000 to VME 0x00000000-0x00000000
271: vme0: 4phys 0x00000000-0x00000000 to VME 0x00000000-0x00000000
272: vme0: vme to cpu irq level 1:1
1.21 miod 273: vmes0 at vme0
1.33 miod 274: vs0 at vmes0 addr 0xffff9000 vaddr 0x551b000 vec 0x80 ipl 2: target 7
1.21 miod 275: scsibus0 at vs0: 8 targets
1.33 miod 276: sd0 at scsibus0 targ 0 lun 0: <COMPAQPC, DCAS-32160, S6CA> SCSI2 0/direct fixed
277: sd0: 2006MB, 8188 cyl, 3 head, 167 sec, 512 bytes/sec, 4110000 sec total
1.21 miod 278: vmel0 at vme0
1.33 miod 279: ie0 at pcctwo0 offset 0x46000 ipl 1: address 08:00:3e:21:7c:74
1.21 miod 280: boot device: sd0
281: root on sd0a
282: rootdev=0x400 rrootdev=0x800 rawdev=0x802
1.33 miod 283: Automatic boot in progress: starting file system checks.
284: /dev/rsd0a: file system is clean; not checking
285: /dev/rsd0d: file system is clean; not checking
286: /dev/rsd0e: file system is clean; not checking
287: /dev/rsd0f: file system is clean; not checking
288: /dev/rsd0g: file system is clean; not checking
289: /dev/rsd0h: file system is clean; not checking
290: /dev/rsd0i: file system is clean; not checking
291: setting tty flags
292: ddb.console: 0 -> 1
293: kern.splassert: 0 -> 2
294: starting network
295: add net default: gateway odyssee
296: starting system logger
297: starting rpc daemons: portmap ypbind rdate timed.
298: savecore: no core dump
299: checking quotas: done.
300: building ps databases: kvm dev.
301: clearing /tmp
302: starting pre-securelevel daemons:.
303: setting kernel security level: kern.securelevel: 0 -> 1
1.36 miod 304: preserving editor files
1.33 miod 305: creating runtime link editor directory cache.
1.36 miod 306: starting network daemons: sendmail inetd sshd.
1.33 miod 307: starting local daemons:.
308: standard daemons: cron.
1.36 miod 309: Tue Sep 2 20:50:24 GMT 2003
1.33 miod 310:
311: OpenBSD/mvme88k (arzon) (console)
312:
313: login:
1.19 smurph 314: </pre>
315:
1.15 smurph 316: <hr>
1.29 miod 317: <a href="plat.html">
318: <img height="24" width="24" src="back.gif" border="0" alt="Supported platforms">
319: </a>
320: <br>
321: <small><a href="mailto:www@openbsd.org">www@openbsd.org</a></small>
1.3 fn 322: <br>
1.37 ! miod 323: <small>$OpenBSD: mvme88k.html,v 1.36 2003/09/02 22:00:34 miod Exp $</small>
1.3 fn 324:
325: </body>
326: </html>