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

File: [local] / www / sparc.html (download) (as text)

Revision 1.100, Sun Dec 2 00:12:11 2001 UTC (22 years, 5 months ago) by miod
Branch: MAIN
Changes since 1.99: +2 -2 lines

3.0

<!DOCTYPE HTML PUBLIC  "-//IETF//DTD HTML Strict//EN">
<html>
<head>
<title>OpenBSD/sparc</title>
<link rev=made href=mailto:www@openbsd.org>
<meta name="resource-type" content="document">
<meta name="description" content="the OpenBSD/sparc page">
<meta name="keywords" content="openbsd,sparc">
<meta name="distribution" content="global">
<meta name="copyright" content="This document copyright 1996-2001 by OpenBSD">
</head>

<body bgcolor="#FFFFFF" text="#000000" link="#23238E">

<img alt="[OpenBSD]" src="images/bsd_small.gif">

<hr>

<p>
OpenBSD/sparc runs on most of the 32bit Sun SPARC workstations, including
the sun4, sun4c, and sun4m architectures
(not the 64bit <a href="sparc64.html">Ultra SPARC</a> computers).
The current port maintainer is
Art Grabowski (<a href="mailto:art@openbsd.org">art@openbsd.org</a>).
Others are definitely welcome to contribute!
</p>

<img align=right vspace=5 hspace=5 src="images/sparc.gif">
<h3><font color=#0000e0><i>Table of contents</i></font></h3>
<p>
<ul>
 <li><a href="#history">Past history of the port</a>
 <li><a href="#status">Current status</a>
 <li><a href="#info">Where to get it</a>
 <li><a href="#hardware">Supported hardware list</a>
 <li><a href="#projects">Project list</a>
</ul>
</p>

<hr>
<a name=history></a>
<h3><font color=#0000e0><strong>History:</strong></font></h3>

<p>
The original BSD4.4 port was done by Chris Torek as a contract to
LBL. The code was released by Chris in mid-1993, and Theo de Raadt
worked it into shape for the NetBSD tree.  Theo and Markus Wild worked
on improving Chris' original SunOS compatibility code into a highly
complete and reliable emulation. Chuck Cranor ported the sun4c code to
the 8KB pagesized Sun4 architecture, and Theo merged this code in a
way that would allow the same kernel and programs to run on either
sun4c or sun4 machines (unlike Sun's separate kernel environments).
This last change also required a rewrite of the device configuration
code.  Just after the NetBSD/sparc 1.0 release, Peter Galbavy wrote an
ESP scsi device driver as a replacement for Chris' sparc-specific scsi
code, this new driver unfortunately had some problems and was eventually
replaced.
</p>

<p>
At this point a conflict emerged between Theo and the other people he
started the NetBSD project with, and Theo was forced by the core group
to resign from NetBSD.  After Theo left NetBSD, a few people in the
NetBSD group did some other things for the port: Paul Kranenburg
ported a floppy driver and started writing support for the 4/400.
Chuck spent many long hours working on the ie, xy, xd device drivers.
</p>

<p>
Theo continued working independently, and made a number of additions:
P4 support, flexible boot strategy, a few graphics drivers with help
from John Stone, and masses of bug fixes.  Many people will be most
interested that the ESP scsi driver has been completely replaced by
Theo, and that it supports disconnect/reconnect.
</p>

<p>
Work on porting OpenBSD/sparc to the sun4m platform was started by Theo,
but tendinitis problems with his wrists and the problems with the NetBSD
core conspired, and he stopped work.  Theo passed his initial sun4m work 
to Aaron Brown of Harvard, who was paid out of Margo Seltzer's research
funds.  This initial stuff consisted mostly of a few attempts at building
pmap structure that could support all 3 MMU types efficiently.  Also,
David Miller of the S/Linux project got a little bit involved.
</p>

<p>
Theo and Jason Downs merged the NetBSD sparc code back into OpenBSD, making
OpenBSD/sparc usable again.  Jason Wright wrote a few new SBus Ethernet
drivers with information from the S/Linux project and has merged a few bits
from NetBSD sources to improve the stability of this architecture.
</p>

<p>
And work continues...
</p>

<hr>
<a name=status></a>
<h3><font color=#0000e0><strong>Current Status:</strong></font></h3>

<p>
The people working the most on OpenBSD/sparc are
Jason Wright, Theo de Raadt, Todd Fries and Artur Grabowski.
</p>

<p>
Email may be sent to the maintainers and users of the OpenBSD/sparc port at
<a href="mailto:sparc@openbsd.org">sparc@openbsd.org</a>.  
To join the OpenBSD/sparc mailing list, send a message body of <b>"subscribe
sparc"</b> to <a href="mailto:majordomo@OpenBSD.org">majordomo@OpenBSD.org</a>.
Please be sure to check our <a href="mail.html">mailing list policy</a> before
subscribing.
</p>

<p>
An important note about OpenBSD/sparc is that it is designed so that
a single kernel can run on <b>ALL SUPPORTED</b> sparc machines.  Whereas
SunOS and Solaris have always had separate `kernel architectures', i.e. sun4,
sun4c, and sun4m, the same `GENERIC' OpenBSD kernel will run on all the
supported models. 
</p>

<p>
Most of the problems with OpenBSD/sparc are believed to stem from the wide
variety of sparc processor and cache implementations along with their
undocumented bugs, rather then general kernel problems.
Feedback on which models do and do not work reliably is
appreciated, particularly with newer models or upgrades.
</p>

<p>
OpenBSD/sparc can be installed or upgraded via floppy boot images on
sun4c and sun4m, miniroot images for machines without floppies
(and sun4 machines), as well as network and diskless installs.
</p>

<hr>
<a name=info></a>
<h3><font color=#0000e0><strong>Where to get it:</strong></font></h3>

<p>
<ul>
<li><a href=ftp.html>Snapshots are made available from time to time.</a>
<li><a href=ftp://ftp.openbsd.org/pub/OpenBSD/3.0/sparc/INSTALL.sparc>Installation information</a>
</ul>
</p>

<p>
<hr>
<a name=hardware></a>
<h3><font color=#0000e0><strong>Supported hardware list:</strong></font></h3>

<h4>OpenBSD/sparc runs on the following classes of machines:</h4>
<ul>
<li> sun4: the VME series
	<ul>
	<li>4/100: Original sparc with VME.  Many hardware bugs.
	<li>4/200: A fairly decent VME-only machine
	<li>4/300: a 25MHz VME machine with many devices built onto the main board.
	    In other respects, it is quite similar to the SS1+.
	</ul>
<p>
<li> sun4c: 
	<ul>
	<li>SS1: the original 20MHz sun4c.
		(Hardware limitations prevent SBus DMA peripherals from working
		in some of the slots).
	<li>SS1+: 25MHz version of the above.
		(Hardware limitations prevent SBus DMA peripherals from working
		in some of the slots).
	<li>IPC: SS1+ in a cube, with bwtwo graphics builtin
	<li>SLC: SS1+ built into a B&amp;W monitor
	<li>SS2: 40MHz version of the SS1
	<li>IPX: SS2 in a cube, with cgsix graphics builtin
	<li>ELC: SS2-performance built into a B&amp;W monitor
	</ul>
	<p>
<p>
<li> sun4m: 
	<ul>
	<li>600MP:  The original Sun4m machine.  This is a <a href=#mbus>mbus</a> machine
	    with SBUS and VME buses.
	<li>LC: 50MHz MicroSPARC-1 based machines (aka Classic)
	<li>LX: LC with a few more devices
	<li>SS4: Reduced cost version of the SS5, available at 70MHz and 110MHz
	<li>SS5: MicroSPARC-2 based machines available in 60, 70, 85,
	    and 110 MHz versions
	<li>SS5: TurboSPARC cpus in accelerated SS5 machines, running at 170 MHz
	<li>SS10: Pizzabox <a href=#mbus>mbus</a>-based machine
	<li>SS20: Improved Pizzabox <a href=#mbus>mbus</a>-based machine
	<li>Sun Voyager (untested)
	</ul>

<p>
<li>As well, the following clones:
	<ul>
	<li>Aries Research Inc, Parrot II (SS2 clone) 
	<li>Axil 243 and 245 (and possibly other models) (SS5 clones)
	<li>Axil 320 (SS20 clone)
	<li>Opus 5000 (SS1 clone)
	<li>Opus 5250 (SS1 clone)
	<li>SPARCbook 3GX, 3GS, and 3XP by Tadpole (MicroSPARC-2)
	<li>CPU5V: VME card by Force Computer (sun4m)
	<li>TWS,SuperCOMPstation-20S (SS20 clone).
	<li>TATUNG micro COMPstation 5 (SS5 clone) 
	<li>Tatung micro COMPstation LX (LX clone)
	<li>RDI,PowerLite: sun4m models, available in 50MHz, 85MHz, and 110MHz
	<li>RDI,BrigeLite
	<li>DTKstation/Classic+ 
	<li>Transtec SS5/170
	</ul>

</ul>

<h4>Supported devices</h4>

<p> This list of basically declares that any `stock' sun4c or sun4m
"sparcstation" or "sparcserver" machine will probably work; for sun4 machines
one must be more careful.

<ul>
<a name=mbus></a>
<li><strong> Mbus CPU modules</strong>
  <ul>
   <li> SM30:   30 or 36 MHz Supersparc with no secondary cache
   <li> SM40:   40 MHz SuperSPARC with no secondary cache
   <li> SM41:   40 MHz SuperSPARC with 1MB of secondary cache
   <li> SM50:   50 MHz SuperSPARC with no secondary cache
   <li> SM51:   50 MHz SuperSPARC with 1MB of secondary cache
   <li> SM51-2: 50 MHz SuperSPARC with 2MB of secondary cache
   <li> SM61:   60 MHz SuperSPARC with 1MB of secondary cache
   <li> SM61-2: 60 MHz SuperSPARC with 2MB of secondary cache
   <li> SM71:   75 MHz SuperSPARC with 1MB of secondary cache
   <li> SM81:   85 MHz SuperSPARC with 1MB of secondary cache
   <li> SM81-2: 85 MHz SuperSPARC with 2MB of secondary cache
   <li> SM100:  dual 40 MHz Cypress 7C601 with 64KB of primary cache
   <li> Ross HyperSparc RT620/RT625 at 90MHz, with 256KB of primary cache
   <li> Ross HyperSparc RT620/RT625 at 125MHz, with 256KB of primary cache
   <li> Ross HyperSparc RT620/RT625 at 150MHz, with 512KB of primary cache
   <li> Ross HyperSparc RT620/RT625 at 166MHz, with 512KB of primary cache
  </ul>
  <p>

<li><strong> Sun keyboard and mouse</strong>
  <ul>
   <li> Type 2, 3, 4, and 5 keyboards with several layouts
  </ul>

<li><strong> Floppy drives:</strong>
  <ul>
   <li> sun4c and sun4m floppy disk drive
  </ul>

<li><strong> Serial ports:</strong>
  <ul>
   <li> ttya and ttyb on-board serial ports (can be used as console if needed)
   <li> 4/300 ttyc and ttyd on-board serial ports
   <li> SBus magma serial port cards, including: 4Sp, 8Sp, 12Sp, 16Sp, LC2+1Sp,
	2+1Sp, 4+1Sp, and 8+2Sp.
   <li> SBus Serial/Parallel Interfaces (SUNW,spif, 501-1931)
  </ul>


<li><strong> Audio support:</strong>
  <ul>
   <li>on-board audio support for systems with AMD79C30 8-bit audio chips
       (this includes sun4c models, SPARCclassic, and 600MP)
   <li>SUNW,CS4231 16-bit audio chips found on SPARCstation 4/5, but on-board
       audio for other sun4m systems is not supported
  </ul>

<li><strong> Framebuffers:</strong>
  <ul>
  <li>SBus, MBus and sun4c/sun4m on-board video:
    <ul>
     <li>bwtwo - black and white.
     <li>cgthree - 8-bit color, unaccelerated.
	<br>The cgthree driver also supports the cgRDI, an onboard
	    cgthree-like framebuffer found in some laptops.
     <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+).
	<br>This should work with most faithful emulations/clones of the
	    SBus cgsix.
     <li>cgfourteen - 8-bit color (24-bit MBus accelerated card, but the
	driver only properly emulates a cgthree).
     <li>p9100 - found in Tadpole SPARCbook 3GS and 3GX (8bit unaccelerated)
		(called "pnozz")
     <li>TCX - 8-bit color (24-bit, but driver currently emulates a cgthree).
    </ul>

  <li> 4/200 on-board bwtwo

  <li> P4 video (4/100 and 4/300):
    <ul> 
     <li> bwtwo - black and white
     <li> cgthree - 8-bit color, unaccelerated
     <li> cgfour - 8-bit color, 1-bit overlay, unaccelerated
     <li> cgsix - 8-bit color, accelerated
     <li> cgeight - 24-bit color, 1-bit overlay, unaccelerated
    </ul>

  <li> VME video (sun4):
    <ul>
     <li> cgtwo - black and white
     <li> cgthree - 8-bit color, unaccelerated
     <li> cgsix - 8-bit color, accelerated
    </ul>
  </ul>

<li><strong> Ethernet adapters:</strong>
  <ul>
   <li> on-board AMD Lance Ethernet 
   <li> SBus AMD Lance Ethernet cards 
   <li> SBus cards containing both AMD Lance and "esp" scsi
   <li> on-board Intel 82586 Ethernet (ie0 on 4/100 and 4/200)
   <li> VME Intel 82586 Ethernet cards
   <li> SBus 10/100Mbit qec+be found on Sun FastEthernet cards (SUNW,501-2655)
	(aka. Sun Fast Ethernet 1.x)
   <li> SBus Quad 10Mbit qec+qe found on Sun Quad Ethernet cards (SUNW,595-3198)
   <li> SBus 10/100Mbit hme Ethernet cards
   <li> SBus 10/100Mbit SunSwift SUNW,fas Ethernet+SCSI cards
   <li> SBus Quad 10/100Mbit hme and qfe Ethernet cards
	 (aka. Sun Quad Fast Ethernet 2.x)
  </ul>

<li><strong> SCSI controllers:</strong>
  <ul>
   <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
   <li> SBus "esp" SCSI controller (Also works with several 3rd party
	esp compatible boards)
   <li> SBus cards containing both AMD Lance and "esp" scsi
   <li> VME "SUN-3"/"si" SCSI controller (interrupt driven DMA)
   <li> 4/110 "SCSI Weird"/"sw" on-board controller (polled DMA)
   <li> QSP/ISP scsi controllers (i.e. "PTI,ptisp", "ptisp", "SUNW,isp" and "QLGC,isp").
  </ul>

<li><strong> SMD and other disk controllers:</strong>
  <ul>
   <li> Xylogics 7053 VME/SMD disk controller ("xd")
   <li> Xylogics 450/451 VME disk controller ("xy")
  </ul>

<li><strong> Miscellaneous:</strong>
  <ul>
   <li> SBus Expansion Subsystem ("xbox")
   <li> Force FGA5000 VME/SBus bridge ("fga")
   <li> Force sysconfig registers ("scf")
   <li> Force flash memory ("flash")
   <li> Tadpole microcontroller (power/system control) ("tctrl")
  </ul>
</ul>

<h4>OpenBSD/sparc does *not* run on these machines (yet):</h4>
<ul>
 <li> sun4: 4/400 (lacks support for the I/O cache, and has Ethernet problems)
 <li> sun4d machines<br>
      SPARC Server 1000<br>
      SPARC Center 2000<br>
      These machines use XD-Bus instead of M-Bus for their CPUs, and we do
      not support that yet.
 <li> sun4u: UltraSPARC 64-bit machines.  Some of these are supported in the
      <a href="sparc64.html">OpenBSD/sparc64</a> port.
 <li> It does not work on most Solbourne machines, which are quite different.
      (However, it works on the sun4c/sun4m compatible machines.)
</ul>

<h4>Unsupported Devices. First of all, there are MANY unsupported devices.
A comprehensive list can probably not be written.</h4>
<ul>
<li><strong> Serial Cards:</strong>
  <ul>
   <li> VME mti 16-port serial card
   <li> VME alm2 16-port serial card
   <li> VME mcp 4-port serial card (or is it 8 port)
  </ul>

<li><strong>Disk Controllers:</strong>
  <ul>
   <li> VME "sc" SCSI controller
   <li> VME IPI controller
  </ul>
 
<li><strong> Framebuffers:</strong>
  <ul>
   <li> VME cgfive, 8-bit color, 1-bit overlay, double-buffered,
	unaccelerated without GP/GP2
   <li> VME cgnine, 24-bit color, 1-bit overlay, double-buffered,
	unaccelerated without GP/GP2
   <li> VME GP/GP2 Graphics Processor (drives a cgfive or cgnine)
   <li> SBus cgeight 24-bit color, unaccelerated
	(note: SBus cgeight is quite different from VME/P4 cgeight)
   <li> SBus GS, 24-bit color, 8-bit color, overlay planes, double-buffered,
	3-D acceleration (aka cgtwelve) 
   <li> SBus GT, 24-bit color, 8-bit color, overlay planes, double-buffered,
	3-D acceleration (aka Graphics Tower)
   <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered,
	3-D acceleration (aka Leo)
  </ul>
<p>

<li><strong>On-board Audio and ISDN</strong><br>
    This is present on some sun4m systems (LX, LC, SPARCstation 10/20).
<p>
<li><strong>Multiple Processors/Modules in sun4m systems</strong><br>
    OpenBSD will not currently boot on some machines with multiple processors.
    You must remove the extra CPUs.
<p>
<li><strong>SBUS SUNW,bpp (parallel port)</strong><br>
    A driver exists in the source tree, but it does not work.  None of the
    developers have printers or cables to work with, to make it work, but
    we really would prefer to receive a fixed driver.
<p>
<li><strong>SBUS FAS scsi controllers</strong><br>
    The FAS-only card is not supported.  The HME+FAS card only supports the
    HME part of the card.
<p>
<li><strong>SBUS FDDI cards</strong><br>
<p>
<li><strong>Tadpole PCMCIA bridge</strong>
<p>
<li><strong>SBus cards other those listed above...</strong>
<p>
</ul>

<hr>
<a name=projects></a>
<h3><font color=#0000e0>Project list:</font></h3>
<ul>
 <li>Merge in useful NetBSD work.
 <li>Start work on device drivers for unsupported framebuffers.
</ul>

<hr>

<a href=plat.html><img height=24 width=24 src=back.gif border=0 alt=OpenBSD></a> 
<a href=mailto:www@openbsd.org>www@openbsd.org</a>
<br>
<small>$OpenBSD: sparc.html,v 1.100 2001/12/02 00:12:11 miod Exp $</small>

</body>
</html>