<?xml version='1.0' encoding="UTF-8"?>
<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-sparc-faq.xml,v 1.7 2005/10/27 19:41:57 rane Exp $ -->

<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
<guide link="/doc/en/gentoo-sparc-faq.xml">
<title>Gentoo Linux/SPARC Frequently Asked Questions</title>

<author title="SPARC Developer">
  <mail link="weeve@gentoo.org">Jason Wever</mail>
</author>

<abstract>
This FAQ is designed to help answer the most commonly asked questions about
Gentoo Linux/SPARC and Linux on SPARC architecture.  Feel free to send
revisions and corrections to the sparc team or the doc team.
</abstract>

<!-- The content of this document is licensed under the CC-BY-SA license -->
<!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
<license/>
<version>1.4</version>
<date>2005-10-28</date>

<chapter>
<title>Documentation Notes</title>
<section>
<body>

<p>
These are some notes to elaborate on acronyms and terms used in this document.
</p>

<p>
When mentioning <c>SPARC</c> and <c>SPARC64</c>, this refers to the type of
<c>sun4x</c> system.  SPARC represents the 32 bit systems using the
<c>sun4c</c>, <c>sun4d</c> and <c>sun4m</c> architectures (i.e. SPARCstations).
SPARC64 represents the <c>sun4u</c> architecture seen in the UltraSPARC series
of systems (Ultras, Blades, SunFires, etc).
</p>

<p>
Acronyms: <c>OBP</c> = OpenBoot PROM, <c>SS</c> = SPARCstation.
</p>

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

<chapter>
<title>Installation</title>
<section>
<title>How do I install/use my SPARC over a serial console?</title>
<body>

<p>
First, make sure you do not have a keyboard and monitor plugged in. OBP will
use the monitor for output by default if either are plugged in. You will need a
null modem cable or a regular serial cable with a null modem adapter to be able
to view output.
</p>

<p>
Standard serial port settings:
</p>

<ul>
  <li>9600 baud</li>
  <li>8 data bits</li>
  <li>None for parity</li>
  <li>1 stop bits</li>
</ul>

<p>
Below is a list of commonly used programs for viewing a serial console. Check
to see if your serial console application has the ability to send a break, as
it can be very useful on a SPARC. The break signal on a serial console is the
equivalent to issuing the Stop+A command on the keyboard.
</p>

<table>
<tr>
  <th>Linux</th>
  <th>Windows</th>
</tr>
<tr>
  <ti>Minicom</ti>
  <ti>Hyperterm</ti>
</tr>
<tr>
  <ti>Kermit</ti>
  <ti>TeraTerm Pro</ti>
</tr>
<tr>
  <ti>Console</ti>
  <ti></ti>
</tr>
<tr>
  <ti>Seyon</ti>
  <ti></ti>
</tr>
</table>

</body>
</section>
<section>
<title>How do I network boot my SPARC system for installation?</title>
<body>

<p>
Currently, Gentoo has experimental network boot/tftpboot images available on a
local Gentoo mirror in experimental/sparc/tftpboot. Get the appropriate image
for your SPARC computer and then proceed to the Netboot HOWTO for further
instructions.
</p>

</body>
</section>
<section>
<title>I have a CRT/LCD monitor attached to my SPARC that selects a resolution 
my monitor can't handle when the kernel boots. How do I get a visible and/or
non-distorted display on my monitor?</title>
<body>

<p>
This problem is a result of the framebuffer support the Linux kernel loads at
boot time, and the modelines available on SPARC systems.  Here we will assume
your monitor and video card will agree on a resolution of 1024 by 768 at a
refresh rate of 60 Hz.  In OBP, you can set the resolution by adjusting the
setting for <c>output-device</c>.  To view the current setting, use the
command:
</p>

<pre caption="View current settings">
ok <i>printenv output-device</i>

<comment>&lt;output-device&gt;        &lt;screen&gt;          &lt;screen&gt;</comment>
</pre>

<p>
Now, to set this so it will start the display using the above mentioned
resolution, we will use the <c>setenv</c> command as follows:
</p>

<pre caption="Setting display">
ok <i>setenv output-device screen:r1024x768x60</i>

output-device =       screen:r1024x768x60
</pre>

<p>
In order for this to take effect, you will need to reset the machine:
</p>

<pre caption="Resetting the machine">
ok <i>reset</i>
</pre>

<p>
Additionally, for users using the onboard video card based on the ATI Mach64
chipset (Ultra 5/10 and Blade 100/150), you will want to append the following
to your kernel boot options:
</p>

<pre caption="Appending a kernel boot option">
video=atyfb:1024x768@60
</pre>

<p>
If you are booting from SILO, you can append the above string onto the end of a
given boot image. The following example would be if you were booting from the
LiveCD.
</p>

<pre caption="Booting a Gentoo LiveCD">
boot: <i>gentoo video=atyfb:1024x768@60</i>
</pre>

<p>
If you were booting from the network, you would append the string onto the end
of the boot net command in OBP as illustrated below:
</p>

<pre caption="Booting from the net">
ok <i>boot net video=atyfb:1024x768@60</i>
</pre>

</body>
</section>
<section>
<title>I'm new to SPARC and am not sure what kernel options to use, 
HELP!</title>
<body>

<p>
Most of the time, the default kernel options will be acceptable for hardware
support. You will need to make sure that <c>devfs</c> and <c>virtual memory
filesystem support</c> is enabled in the kernel as instructed in the <uri
link="http://www.gentoo.org/doc/en/handbook/">Installation Handbook</uri>.
</p>

</body>
</section>
<section>
<title>How do I dual boot Gentoo Linux/SPARC with Solaris?</title>
<body>

<p>
Dual booting Gentoo Linux/SPARC and Solaris can be done one of two ways. The
two ways are: having both Gentoo Linux/SPARC and Solaris on the same drive, or
having them on separate drives. Below are example SILO configurations for each
scenario. In the example configs, the following things are assumed:
</p>

<p>
Single Drive Setup:
</p>

<ul>
  <li>Boot drive is SCSI ID 0</li>
  <li>Gentoo boots from partition 1</li>
  <li>Solaris boots from partition 5</li>
</ul>

<p>
Separate Drive Setup:
</p>

<ul>
  <li>Second drive is SCSI ID 1</li>
  <li>Gentoo is on SCSI ID 0</li>
  <li>Solaris is on SCSI ID 1</li>
  <li>boot-device in OBP is SCSI ID 0</li>
</ul>


<pre caption="Sample silo.conf for a single drive installation">
<comment># Generic config options</comment>
partition = 1
timeout = 50

<comment># Gentoo Linux/SPARC options</comment>
image = /boot/vmlinux
    label = linux
    root=/dev/sda4

<comment># Solaris options</comment>
other=5
    label = Solaris
</pre>

<pre caption="Sample silo.conf for separate disk installation">
<comment># Generic config options</comment>
parition = 1
timeout = 50

<comment># Gentoo Linux/SPARC options</comment>
image = /boot/vmlinux
    label = linux
    root=/dev/sda4

<comment># Solaris options</comment>
other = /sbus/espdma/esp/sd@1,0;1
	  label = solaris
</pre>

</body>
</section>
<section>
<title>I just booted my SPARCstation after installing Gentoo but it won't boot.
Why isn't it booting?</title>
<body>

<p>
One possibility has to do with the way the that the SCSI IDs are assigned.
Gentoo/SPARC developer Keith Wesolowski provides us with the following:
</p>

<p>
Linux, normally, orders devices by SCSI ID. The lowest-numbered disk is
<c>sda</c>, the next-lowest is <c>sdb</c>, and so on. Note that <c>devfs</c>
allows you to specify devices by SCSI ID, so that adding a new device doesn't
cause your existing devices to be renamed, unless of course you use the
compatibility names. There are additional ways to solve this.
</p>

<p>
The OBP in most or all sun4c and sun4m systems aliases "disk" to the device
with SCSI ID 3, and "disk0" through "disk3" to the device with = the
corresponding SCSI ID, if it happens to be a disk rather than a tape, CDROM,
etc.
</p>

<p>
In the desktop systems of this era that support two SCA disks (the Aurora
chassis systems), the lower slot is assigned SCSI ID 3, and the upper slot is
assigned SCSI ID 1.
</p>

<p>
If you like, you can change the PROM alias "disk" to match that of "disk1" so
that the <c>boot disk</c> command causes the system to boot from the same
device Linux calls <c>sda</c>. This feels more consistent and normal,
especially for users with a PC background. Alternatively, you can simply place
the filesystem containing <path>/boot</path> (which could be the root
filesystem or a separate boot filesystem) on device ID 3 (Linux <c>sdb</c>) and
boot from it, using a root filesystem on either <c>sda</c> or <c>sdb</c>, or in
fact any other disk attached to the system.
</p>

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

<chapter>
<title>Hardware</title>
<section>
<title>Will Gentoo run on my SPARC?</title>
<body>

<p>
It depends on the type of SPARC, but chances are yes. One exception seems to be
the SPARC based laptops from Tadpole, particularly the newer models. If you
have a working Tadpole on Gentoo/SPARC, please contact us and let us know the
details on the model and anything special needed to get it to work.
</p>

<p>
Gentoo/SPARC Developer Todd Sunderlin keeps a partial list of the status of
SPARC64 systems under Gentoo at
<uri>http://dev.gentoo.org/~todd/sparc64.html</uri>. Email him with any
additions or possible changes to <mail
link="todd@gentoo.org">todd@gentoo.org</mail>. 
</p>

<p>
To add details on your model SPARC64 to the list, email <mail
link="todd@gentoo.org">todd@gentoo.org</mail> with the pertinent information.
In general, support for the SPARC64 systems is good enough to allow some users
to run it successfully in production environments.
</p>

<p>
32-bit SPARC systems vary. Systems with the sun4m architecture have been
reported to work fine (SS4-SS20) including SMP configurations with the later
2.4 series kernels. sun4m systems using HyperSPARC or Ross processors in a SMP
configuration will have a lot of kernel related trouble. Additionally the
author hasn't heard of any user reports in regards to the JavaStations so its
status is unknown. sun4d based systems currently do not work in the 2.4 kernel
series, and sun4c has been unstable as well.
</p>

<p>
Often, the problems encountered in trying to run Gentoo on a 32-bit SPARC
system stem from the kernel. Rob Radez (not related to Gentoo) maintains a
webpage <uri>http://osinvestor.com/sparc/</uri> with the status of SPARC system
support for various versions of the Linux kernel. This can help indicate how
usable your SPARC system would be under SPARC/Linux.
</p>

</body>
</section>
<section>
<title>What additional hardware is supported under Gentoo/SPARC?</title>
<body>

<p>
For a list of additionally supported Sun hardware, consult the following list
from the UltraLinux homepage -
<uri>http://www.ultralinux.org/faq.html#q_2_2.</uri>
</p>

<p>
A partial list of Sun devices which do NOT currently have support under
Gentoo/SPARC or SPARC/Linux in general are:
</p>

<ul>
  <li>SunPCI cards</li>
  <li>SBUS or PCI PCMCIA controllers</li>
  <li>Smart card readers on some Sun Blade workstations</li>
  <li>Floppy drive on some Sun Blade workstations</li>
</ul>

<p>
Also, Gentoo/SPARC developer Sven Blumenstein keeps a list of PC hardware that
has been tested with the PCI based SPARC64 systems at
<uri>http://dev.gentoo.org/~bazik/hw.php</uri>. Feel free to add your results
at testing PC or non-Sun hardware to the list by emailing <mail
link="bazik@gentoo.org">bazik@gentoo.org</mail> with the information on the
hardware as displayed in the existing hardware list.
</p>

</body>
</section>
<section>
<title>So you keep talking about sun4c/sun4d/sun4m/sun4u. How do I
know which one I have?</title>
<body>

<p>
The UltraLinux FAQ has the answer at
<uri>http://www.ultralinux.org/faq.html#q_2_1</uri>.
</p>

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

<chapter>
<title>Applications</title>
<section>
<title>
How do I get XFree86 to find a usable modeline on my Ultra 5/10 or Blade
100/150?
</title>
<body>

<p>
The ATI Framebuffer normally expects a PC's BIOS to set the Reference Clock
speed for the video card. However, on non-x86 architectures, this doesn't
happen. So what needs to be done is to set the Reference Clock speed in the
XF86Config file.
</p>

<p>
In the "Device" section of your XF86Config file, you will want to add a line
similar to the following:
</p>

<pre caption="Add to XF86Config">
Option      "reference_clock"   "28.636 MHz"
</pre>

<p>
The following URLs contain more information on how to set the reference clock:
<uri>http://www.xfree86.org/~dawes/4.3.0/ati5.html#26</uri>. If you have issues
you might want to try without a similar setting first.
</p>

</body>
</section>
<section>
<title>How come package foo is masked on Sparc?</title>
<body>

<p>
Chances are this is due to the fact that none of the Gentoo/SPARC developers
have gotten around to testing this yet, and/or the package is currently marked
with the <c>~sparc</c> keyword (meaning it's in a testing phase).
</p>

<p>
If you still want to install the package, you can follow the instructions from
the at <uri link="http://forums.gentoo.org/viewforum.php?t=33534">Portage
Masked Package FAQ</uri>.
</p>

<note>
The FAQ mentions the sparc64 keyword, which is invalid.
</note>

</body>
</section>
<section>
<title>How can I help get package foo marked stable?</title>
<body>

<p>
If you want to help ensure a package gets marked stable in a timely fashion,
particularly if it's an application with a small userbase (i.e.
net-im/bitlbee), install the package and test to make sure it works. If it
appears to be working well, feel free to file a bug at
<uri>http://bugs.gentoo.org</uri> and assign it to the Gentoo/SPARC team.
</p>

</body>
</section>
<section>
<title>I tried to emerge a package, but emerge failed complaining that a
dependency is masked. How can I fix this?</title>
<body>

<p>
This is a bug. Please file a bug report at <uri>http://bugs.gentoo.org</uri>
for the Gentoo/SPARC team indicating what package you tried to emerge, the
error message emerge gave you, and the output of <c>emerge --info</c>.
</p>

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

<chapter>
<title>Miscellaneous</title>
<section>
<title>I'm interested in becoming more involved with Gentoo/SPARC. How do I go about
doing that?</title>
<body>

<p>
The best way is to join the <c>#gentoo-sparc</c> IRC channel on Freenode IRC
network <c>irc.freenode.net</c>. This is where all of the developers hang out
and talk SPARC (amongst other things). Short of email, this is the best way to
get our attention, and blame seemant! :)
</p>

<p>
Also, many users and developers make use of the <uri
link="http://forums.gentoo.org/viewforum.php?f=27">Gentoo/SPARC forum</uri>.
This is a good place to ask questions and see what problems have come up
before, as well as talk shop about Gentoo/SPARC.
</p>

<p>
Additionally, you can view the bugs for Gentoo/SPARC via the <uri
link="http://bugs.gentoo.org">Gentoo Bugzilla</uri>. The bugs will be assigned
or CC'd to sparc@gentoo.org.
</p>

</body>
</section>
<section>
<title>Are there any currently known bugs/issues with software packages on
Gentoo/SPARC?</title>
<body>

<p>
A list of problematic packages can be found at
<uri>http://dev.gentoo.org/~weeve/problems.html</uri>
</p>

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

<chapter>
<title>Additional Resources</title>
<section>
<body>

<p>
Here is some info on the Gentoo/SPARC project itself:
</p>

<ul>
  <li><uri link="http://sparc.gentoo.org">Gentoo/SPARC Project Page</uri></li>
  <li>#gentoo-sparc - Official IRC channel on irc.freenode.net</li>
  <li>
    <uri link="http://forums.gentoo.org/viewforum.php?f=27">Gentoo/SPARC
    Forum</uri>
  </li>
  <li><mail>sparc@gentoo.org</mail> - Gentoo/SPARC team email address
  </li>
</ul>

<p>
Here are links to additional information about SPARC/Linux or SPARCs in general:
</p>

<ul>
  <li>
    <uri link="http://www.ultralinux.org">UltraLinux Homepage</uri> - Homepage
    of the SPARC/Linux port
  </li>
  <li>
    <uri link="http://sunsolve.sun.com">Sunsolve</uri> - Great resource for Sun
    hardware documentation
  </li>
  <li>
    <uri>http://docs.sun.com</uri> - Additional hardware and software
    information for SPARC systems, including instructions for flashing OBP
  </li>
  <li>
    <uri link="http://www.obsolyte.com">Obsolyte</uri> - Information on older
    SPARC systems and links to a lot of other great SPARC related sites.
  </li>
  <li>
    <uri
    link="http://040.digital-bless.com/texts/Unofficial_Sun_Blade_100_FAQ.htm">Unofficial
    Sun Blade 100 FAQ</uri> - Answers a lot of hardware related questions on
    the Blade 100
  </li>
  <li>
    <uri link="http://docs.sun.com/db/coll/216.2">OBP Reference Guide</uri> -
    Sun's guide to the OpenBoot PROM.
  </li>
</ul>

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