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

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

Revision 1.23, Tue Jun 17 16:51:21 1997 UTC (26 years, 11 months ago) by johns
Branch: MAIN
Changes since 1.22: +38 -24 lines

Redid sparc page using the rules I got from Sun legal..
(appended sparc trademark stuff at the end as well..  This should silence
 lawyers for the time being.  I applied the same rules to the sparc page
 that Sun / Sparc International required on a research paper I published
 this spring.)

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

<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#23238E">

<h2>OpenBSD for SPARC<sup>tm</sup> Processors</h2>

<hr>
<h3><strong>History and Status:</strong></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-93, 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 seperate kernel environments).
This last change also required a rewrite of the device configuration
code.  Just after the NetBSD 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.
</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 to the sun4m platform was started by Theo,
but tendonitis 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>
Recently Theo and Jason Downs began merging the NetBSD SPARC code back into
OpenBSD.  OpenBSD is becoming usable on SPARC again.  There are still a few
features from older source trees that need to be re-integrated; 
these will likely surface soon.
</p>

<p>
The people working the most on OpenBSD for SPARC are Jason Downs, George Robbins, 
John Stone, and probably Chuck Cranor again now that it once again works.
</p>

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

<p>
OpenBSD for SPARC can be reasonably described as a continuation of the
NetBSD SPARC development with improvements.  The current status is
somewhere between under development and ready for general use, in that
it does support many of the Sparc based systems and their peripherals,
and can be quite reliable depending on the system configuration and
usage.
</p>

<p>
Most of the problems are believed to stem from the wide variety of SPARC
processor and cache implementations along with their undocumented bugs,
rather then general kernal problems.
Feedback on which models do and do not work reliably is
appreciated, particularly with the newer sun4m implementations like the
Fujitsu TurboSparc and Ross HyperSparc based systems and upgrades.
</p>

<p>
The installation tools and process as of the 2.1 release are greatly
improved over previous releases of OpenBSD.  OpenBSD can be installed
or upgraded via floppy boot images on sun4c and sun4m, miniroot images 
for machines without floppies (and sun4 machines). 
</p>

<hr>
<p>
<ul>
<li><a href=ftp.html>Snapshots are made available from time to time.</a>
<li><a href=ftp://ftp2.usa.openbsd.org/pub/OpenBSD/2.1/sparc/INSTALL.sparc>Installation information for the 2.1 release of OpenBSD for SPARC</a>
</ul>
</p>

<p>
<hr>
<h3><strong>What hardware is supported?</strong></h3>

<h4>OpenBSD for SPARC runs on the following classes of machines:</h4>
<ul>
<li> sun4: 4/100, 4/200, and 4/300
<li> sun4c: SS1, SS1+, IPC, SLC, SS2, IPX, and ELC
<li> sun4m: at least the LC, LX, 4, 5, 10, and 20. A few cpu
	combinations do not work reliably, as well as a few odd memory
	configurations.
<li> Typically it works on faithful clones of these machines
</ul>
<h4>Supported devices.  This list of basically declares that any `stock' sun4c
"sparcstation" machine will probably work; for sun4 machines one must be more
careful.</h4>
<ul>
<li> Sun keyboard and mouse

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

<li> Serial ports:
  <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
  </ul>


<li> Audio support:
  <ul>
  <li> sun4c on-board audio
  </ul>

<li> Framebuffers:
  <ul>
  <li>SBus or sun4c on-board video:
    <ul>
    <li>bwtwo - black and white
    <li>cgthree - 8-bit color, unaccelerated 
    <li>cgsix - 8-bit color, accelerated (GX, GX+, TGX, TGX+)  Should probably work with most faithful emulations/clones of SBus cgsix..
    </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> Ethernet adapters:
  <ul>
  <li> on-board AMD Lance ethernet 
  <li> SBus AMD Lance ethernet cards 
  <li> on-board Intel 82586 ethernet (ie0 on 4/100 and 4/200)
  <li> VME Intel 82586 ethernet cards
  </ul>

<li> SCSI controllers:
  <ul>
  <li> on-board "esp" SCSI controller (sun4c, sun4m, and 4/300)
  <li> SBus "esp" SCSI controller
  <li> VME "SUN-3"/"si" SCSI controller (polled mode only, slow)
  <li> 4/110 "SCSI Weird"/"sw" on-board controller (slow, polled mode)
  </ul>

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

</ul>

<h4>OpenBSD for 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> sun4m: older systems with Viking (TMS390Z55) processor modules without external cache chips, aka SuperCache, aka MXCC, aka PAC.
<li> sun4m: model 4/600 -- uses auxio registers, sun4m VME, I/O cache?
<li> sun4d: SPARC Server 1000, SPARC Center 2000 -- XD-Bus vs. M-Bus, MP issues.
<li> sun4u: UltraSPARC 64-bit machines.
<li> It does not work on most Solbourne machines, which are quite different.
</ul>

<p>
OpenBSD/Sparc on the 4c/4m machines is criticaly dependent on configuration
information returned by the openboot prom.  A SPARC clone that differs
substantially from the Sun model as far as device names and properties will
require additional work in this area.

<h4>Unsupported Devices. First of all, there are MANY unsupported devices.
A comprehensive list can probably not be written.</h4>
<ul>
<li> Serial Cards:
  <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>Disk Controllers:
  <ul>
  <li> VME "sc" SCSI controller
  <li> VME IPI controller
  </ul>
 
<li> Framebuffers:
  <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> SS20 SX, 24-bit color, 8-bit color, overlay planes, potentially double-buffered, accelerated (aka cgfourteen)
  <li> SBus ZX, 24-bit color, 8-bit color, overlay planes, double-buffered, 3-D acceleration (aka Leo)
  </ul>

<li> SBus cards other than the standard video/scsi/ethernet listed above
<li> On-board Audio and ISDN hardware present on some sun4m systems
<li> sun4m floppies (OpenBSD can boot/install from them though)  
<li> Multiple Processors/Modules in sun4m systems (OpenBSD will run, but only uses one processor)
</ul>

<hr>
<h3>OpenBSD for SPARC Projects:</h3>
<ul>
<li>Improve sun4m stability.
<li>Merge in useful NetBSD work.
<li>Start work on device drivers for unsupported framebuffers.
<li>Bring back SPARC features from older code.
</ul>

<hr>
<a href=plat.html><img src=back.gif border=0 alt=OpenBSD></a> 
<a href=mailto:www@openbsd.org>www@openbsd.org</a>
<br>


<small>
<p>
"Sun, Sun Microsystems, and Ultra, are trademarks of Sun Microsystems, Inc. in the United States and other countries.  All SPARC trademarks are trademarks of SPARC International, Inc. in the United States and other countries." 
</p>

<p>
"Products bearing the SPARC trademarks are based on an architecture developed by Sun Microsystems, Inc."
</p>
</small>

<p>
<small>$OpenBSD: sparc.html,v 1.23 1997/06/17 16:51:21 johns Exp $</small>
</p>

</body>
</html>