<?xml version='1.0' encoding="UTF-8"?>
<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">

<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/mips-requirements.xml,v 1.7 2005/03/12 17:36:22 neysx Exp $ -->

<guide link="/doc/en/mips-requirements.xml">
				
<title>Gentoo/MIPS Linux Hardware Requirements</title>

<author title="Author">
  <mail link="kumba@gentoo.org">Joshua Kinard</mail>
</author>

<author title="Editor">
  <mail link="stuartl@longlandclan.hopto.org">Stuart Longland</mail>
</author>

<abstract>
This document provides an overview of the status of various MIPS-based systems 
for installing Gentoo Linux. If you find errors or ommissions please email the
maintainer or an editor.
</abstract>

<!-- The content of this document is licensed under the CC-BY-SA license -->
<!-- See http://creativecommons.org/licenses/by-sa/2.0 -->
<license />

<version>0.5</version>
<date>2005-03-08</date>

<chapter>
<title>General Requirements</title>

<section>
<title>System Requirements</title>
<body>

<p>
The exact requirements will largely depend on what you intend to use the machine
for and how you wish to go about installing Gentoo.  The following table should
give you a rough idea.
</p>

<table>
  <tr>
    <ti/>
    <th>Minimum</th>
    <th>Recommended</th>
    <th>Ideal</th>
  </tr>
  <tr>
    <th>RAM:</th>
    <ti>48~64MB</ti>
    <ti>&gt;128MB</ti>
    <ti>~256MB</ti>
  </tr>
  <tr>
    <th>HDD:</th>
    <ti>4GB</ti>
    <ti>&gt;8GB</ti>
    <ti>18GB</ti>
  </tr>
</table>

</body>

</section>

<section>
<title>A Note about serial consoles</title>
<body>

<p>
If you lack an appropriate Framebuffer, you will be required to use serial
console.  Serial console programs for linux include <c>minicom</c> and
<c>xc</c>, and for Windows, <c>HyperTerminal</c> and <c>Tera Term Pro</c>.  If
you are running Windows, and intend to use HyperTerminal, it is advised that
you seek out an updated client from the program's website instead of the one
installed by default.  An upgraded client provides much better serial support
than the default one installed by Windows.
</p>

</body>
</section>
<section>
<title>User Testimonies &amp; Kernel Configurations</title>
<body>

<p>
As an aid to the project, a <uri
link="http://stuartl.longlandclan.hopto.org/gentoo/mips/">hardware support
database</uri> has been set up.  This support database is intended to provide a
quick and easy way to determine how well certain configurations are supported.
The system also allows people to contribute their comments and kernel configs.
</p>

</body>
</section>
</chapter>

<chapter>
<title>Silicon Graphics Systems -- Stable</title>
<section>
<body>

<p>
The following systems are known to be very stable overall.  Just about all the
core hardware is supported in these systems, and there are very few outstanding
stability issues at this time.
</p>

</body>
</section>
<section>
<title>IP22: Indy, Indigo 2 and Challenge S</title>
<body>

<ul>
  <li>
    <b>Processor Options (Stable):</b>
    <ul>
      <li>
        <e>(on Indy and Challenge S)</e>
        R4000, R4400, R4600, R5000
      </li>
      <li>
        <e>(on Indigo 2)</e>
        R4000, R4400
      </li>
    </ul>
  </li>
  <li>
    <b>Kernel Support:</b>
    <ul>
      <li>Linux 2.4: <e>Stable</e></li>
      <li>Linux 2.6: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Stable</e></li>
      <li>64-bit: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Stable</e></li>
      <li>n32: <e>Experimental</e> (Only on Linux 2.6 R5000/RM5200)</li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

<p>
At present, only the Newport (XL) graphics framebuffer is supported in Linux.
Therefore on systems with other framebuffers, you will need to use serial
console.
</p>

<p>
The Challenge S has its RJ-45 connector on a daughter board (Mezz) linked with
an unsupported SCSI adapter, a WD33C95A.  In order for this network connector
to function, this SCSI bus needs to be activated, however it is not yet
supported by Linux.  As a result of this, the Challenge S can only get network
connectivity via its AUI connector.
</p>

<p>
Indigo2 EISA Support is <e>highly</e> experimental.  It isn't very well tested
and may not work with all hardware.  Hardware that it is known to function with
is listed, and as more compatible hardware is discovered, it will be added.
Please note that hardware requiring DMA support is currently not functional.
This includes EISA/ISA-based soundcards.  EISA Video cards requiring an
x86-compatible BIOS are also not functional.
</p>

</body>
</section>
<section>
<title>IP32: O2</title>
<body>

<ul>
  <li>
    <b>Processor Options:</b>
    <ul>
      <li><b>Stable:</b> R5000, RM5200</li>
      <li><b>Experimental:</b> RM7000</li>
      <li><b>Unsupported:</b> R10000</li>
    </ul>
  </li>
  <li>
    <b>Kernel Support:</b>
    <ul>
      <li>Linux 2.4: <e>Unsupported in Kernel</e></li>
      <li>Linux 2.6: <e>Stable</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Unsupported in Kernel</e></li>
      <li>64-bit: <e>Stable</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Stable</e></li>
      <li>n32: <e>Experimental</e> (Only on Linux 2.6)</li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

<p>
The O2 RM7000 Processor support is limited in Linux currently, as it requires a
fairly recent kernel version (>2.6.7), and has several notable issues.  The
first issue is a problem with scsi at the moment, making the internal disks
unusable at the current time.  The Level 3 (Tertiary) Cache is also disabled
due to there being no support for this cache in the linux kernel.
</p>

<p>
Please be aware that this note only applies to the official SGI RM7000 running
at 350MHz, not the 600MHz RM7000 that can be assembed using an RM5200 board.
These "modded" CPU modules for O2 systems are not supported/tested, although,
in theory, they should be functional, but may suffer from the same problems
listed above.
</p>

</body>
</section>
</chapter>

<chapter>
<title>Silicon Graphics Systems -- Experimental/Unstable</title>
<section>
<body>

<p>
The systems listed here are known to run Linux... <e>HOWEVER</e>, in many
cases, there are known stability issues, and major gaps in the hardware
support. In short, it will be a rough and bumpy ride.
</p>

</body>
</section>
<section>
<title>IP27: Origin 200 and 2000</title>
<body>

<ul>
  <li>
    <b>Processor Options <e>(Experimental)</e>:</b>
    R10000, R12000
  </li>
  <li>
    <b>Kernel Support:</b>
    <ul>
      <li>Linux 2.4: <e>Unsupported in Kernel</e></li>
      <li>Linux 2.6: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Unsupported in Kernel</e></li>
      <li>64-bit: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Stable</e></li>
      <li>n32: <e>Experimental</e></li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

</body>
</section>
<section>
<title>IP28: Indigo 2 Impact (a.k.a Indigo 2 R10k)</title>
<body>

<ul>
  <li>
    <b>Processor Options <e>(Experimental)</e>:</b>
    R10000
  </li>
  <li>
    <b>Kernel Support:</b>
    <ul>
      <li>Linux 2.4: <e>Experimental</e></li>
      <li>Linux 2.6: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Unsupported in Kernel</e></li>
      <li>64-bit: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Stable</e></li>
      <li>n32: <e>Experimental</e> (Only on Linux 2.6)</li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

<p>
IP28 Indigo2 Impact support (classified as an Indigo2 system w/ an R10000
Processor) is <e>very experimental</e>.  Most of the work is currently being
done by Peter Fuerst who maintains patches on his <uri
link="http://home.alphastar.de/fuerst/download.html">website</uri>.  This
kernel is <e>NOT</e> intended for stable, day-to-day use.  The Indigo2 IP28
system suffers from an issue known as <e>Speculative Execution</e>, a feature
of the R10000 Processor that is problematic on machines that are <e>Non Cache
Coherent</e>, such as the IP28 Indigo2 and on R10000/R12000-based IP32 O2
systems.  Details on the nature of Speculative Execution, and the issues it
poses to the Indigo2 can be found at the following URLs:
</p>

<ul>
  <li>
    MIPS R10000 Microprocessor User's Manual (See <e>PDF Pages 51-55</e>)
    <uri>http://techpubs.sgi.com/library/manuals/2000/007-2490-001/pdf/007-2490-001.pdf</uri>
  </li>
  <li>
    Post to NetBSD sgimips Mailing List on 29 Jun 2000
    <uri>http://mail-index.netbsd.org/port-sgimips/2000/06/29/0006.html</uri>
  </li>
</ul>

</body>
</section>
<section>
<title>IP30: Octane</title>
<body>

<ul>
  <li>
    <b>Processor Options:</b>
    <ul>
      <li><b>Experimental:</b> R10000, R12000</li>
      <li><b>Unsupported:</b> R14000A</li>
    </ul>
  </li>
  <li>
    <b>Kernel Support:</b>
    <ul>
      <li>Linux 2.4: <e>Unsupported in Kernel</e></li>
      <li>Linux 2.6: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Unsupported in Kernel</e></li>
      <li>64-bit: <e>Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Stable</e></li>
      <li>n32: <e>Experimental</e></li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

<p>
Octane support in Linux should be regarded as experimental. Support for this
particular machine from SGI has been progressing quite well and the Linux
kernel functions reasonably well. The current status for this system may be
found on <uri link="http://helios.et.put.poznan.pl/~sskowron/ip30/">Stanislaw
Skowronek's page</uri>. Wider support in Gentoo for this system will be
available in the future, so watch this space closely for more details.
</p>

</body>
</section>
</chapter>

<chapter>
<title>Silicon Graphics Systems -- Unsupported</title>
<section>
<body>

<p>
Just about all of these systems are totally unsupported at the kernel level --
making a full Linux system totally impossible.  Little is known about a lot of
the systems listed here -- therefore any support in the near future is highly
unlikely.  You may wish to keep an eye on the <uri
link="http://www.linux-mips.org">Linux/MIPS website</uri> for any news of ports
-- either that, or start your own. :-)
</p>

<ul>
  <li>IP12: Iris Indigo (R3000 CPU)</li>
  <li>IP20: Iris Indigo (R4000 or R4400 CPU)</li>
  <li>IP26: Indigo 2 Power (R8000 CPU)</li>
  <li>IP34: Fuel (R14000A or R16000 CPU)</li>
  <li>IP35: Origin 3000 (R14000 or R14000A CPU)</li>
  <li>IP45: Origin 300 (R14000 CPU)</li>
  <li>IP53: Origin 350 &amp; Tezro (R16000 CPU)</li>
</ul>

</body>
</section>
</chapter>

<chapter>
<title>Silicon Graphics Accessories</title>
<section>
<body>

<p>
As with most systems, there is quite wide array of peripherals that one can
obtain for Silicon Graphics systems.  While a lot of these work in IRIX, Linux
support is a bit touch-and-go on some of these items.  The following table
lists the support for each device.
</p>

<table>
  <tr>
    <th>Unsupported/Untested</th>
    <th>Experimental Support</th>
    <th>Stable Support</th>
  </tr>
  <tr>
    <ti>Indy/Indigo2: Impact &amp; Extreme/XZ graphics chipsets</ti>
    <ti>Indy: I2C/VINO subsystem &amp; IndyCam</ti>
    <ti>Indy/Indigo2: XL Graphics Card (Newport)</ti>
  </tr>
  <tr>
    <ti>Indy: Phobos G130 10/100Mbps NIC</ti>
    <ti>O2: GBE Framebuffer</ti>
    <ti>Indy/Indigo2: SGI Seeq Ethernet 10Mbps</ti>
  </tr>
  <tr>
    <ti>Indigo2: GIO64 Slots</ti>
    <ti>O2: PCI Slot</ti>
    <ti>Indy/Indigo2: WD33C93 SCSI</ti>
  </tr>
  <tr>
    <ti>Indigo2: Phobos G160 10/100Mbps NIC</ti>
    <ti>Octane: Keyboard</ti>
    <ti>Indy/Indigo2: HAL2 Sound/Audio</ti>
  </tr>
  <tr>
    <ti>Challenge S: WD33C95A SCSI Adapter/RJ-45 Daughter Card</ti>
    <ti>Octane: Mardi Gras (MGRAS) Graphics</ti>
    <ti>Indy/Indigo2: Parallel Port</ti>
  </tr>
  <tr>
    <ti>O2: VICE Subsystem</ti>
    <ti>Octane: QLogic ISP1040B SCSI</ti>
    <ti>Indy/Indigo2: Serial Port</ti>
  </tr>
  <tr>
    <ti>Octane: SMP Support</ti>
    <ti>Octane: RAD1 Audio</ti>
    <ti>O2: SGI MACE Ethernet 10/100Mbps</ti>
  </tr>
  <tr>
    <ti>Octane: V6/V8/V10/V12 Graphics (Odyssey)</ti>
    <ti>Origin: IOC3 Ethernet 10/100Mbps</ti>
    <ti>O2: Adaptec AIC7880 SCSI</ti>
  </tr>
  <tr>
    <ti/>
    <ti>Origin: QLogic ISP1020 SCSI</ti>
    <ti>O2: Serial Port</ti>
  </tr>
  <tr>
    <ti/>
    <ti>Indigo2 EISA: 3COM 3c597 10/100Mbps</ti>
    <ti>Indigo2 ISA: Parallel Port Card (PC-Style)</ti>
  </tr>
  <tr>
    <ti/>
    <ti>O2 PCI: ALi 5273 USB 2.0 (Req. Kernel >=2.6.8.1)</ti>
    <ti>Indigo2 ISA: NE2000 Compatible 10Mbps NIC (RTL8019)</ti>
  </tr>
</table>

</body>
</section>
</chapter>

<chapter>
<title>Cobalt Servers -- Stable</title>
<section>
<body>

<p>
The Cobalt servers are a set of machines all based around the QED RM523[01]
CPU.  They came in two varieties, the RaQ -- a rackmounted model, and the Qube,
a small desktop model (1ft. cube).  The big difference between these systems
and the SGI systems above, is that these systems are <e>little endian</e>
(<c>mipsel</c>) as opposed to <e>big endian</e> (<c>mips</c>).
</p>

<p>
These were also sold under an OEM arragement to other companies, examples of
this are the Gateway Microserver (Qube 2) and the Seagate NasRaQ (RaQ 2).
</p>

</body>
</section>
<section>
<title>Qube/Raq 2800 (a.k.a Qube/Raq 2)</title>
<body>

<ul>
  <li><b>Processor:</b> QED RM5231 @ 250MHz</li>
  <li>
    <b>Kernel Version Support:</b>
    <ul>
      <li>Linux 2.4: <e>Stable</e></li>
      <li>Linux 2.6: <e>Stable</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Stable</e></li>
      <li>64-bit: <e>Highly Experimental</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Stable</e></li>
      <li>n32: <e>Not Available In Gentoo</e></li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

</body>
</section>
</chapter>

<chapter>
<title>Cobalt Servers -- Experimental</title>
<section>
<title>Raq 2700 (a.k.a Raq 1)</title>
<body>

<ul>
  <li><b>Processor:</b> QED RM5230 @ 150MHz</li>
  <li>
    <b>Kernel Version Support:</b>
    <ul>
      <li>Linux 2.4: <e>Experimental</e></li>
      <li>Linux 2.6: <e>Untested In Gentoo</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Experimental</e></li>
      <li>64-bit: <e>Untested In Gentoo</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Experimental</e></li>
      <li>n32: <e>Not Available In Gentoo</e></li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

</body>
</section>
</chapter>

<chapter>
<title>Cobalt Servers -- Unsupported</title>
<section>
<title>Qube 2700 (a.k.a Qube 1)</title>
<body>

<p>
The Qube 2700 was the first of this whole subarchitecture.  Unfortunately, it
lacks a serial port, making installation at present, damn near impossible.
We're looking into ways we can support this system, but as none of the
developers have access to one of these machines, we have no way to test our
efforts.  You may wish to have a look at <uri
link="http://www.metzner.org/projects/qube/">Jan Metzner's page</uri> for more
information.
</p>

<ul>
  <li><b>Processor:</b> QED RM5230 @ 150MHz</li>
  <li>
    <b>Kernel Version Support:</b>
    <ul>
      <li>Linux 2.4: <e>Untested In Gentoo</e></li>
      <li>Linux 2.6: <e>Untested In Gentoo</e></li>
    </ul>
  </li>
  <li>
    <b>Kernel Architecture Support:</b>
    <ul>
      <li>32-bit: <e>Untested In Gentoo</e></li>
      <li>64-bit: <e>Untested In Gentoo</e></li>
    </ul>
  </li>
  <li>
    <b>Userland Support:</b>
    <ul>
      <li>o32: <e>Untested In Gentoo</e></li>
      <li>n32: <e>Not Available In Gentoo</e></li>
      <li>n64: <e>Not Available In Gentoo</e></li>
    </ul>
  </li>
</ul>

</body>
</section>
</chapter>
</guide>
