Diff for /wikisrc/ports/sgimips.mdwn between versions 1.1 and 1.2

version 1.1, 2012/12/22 04:03:19 version 1.2, 2014/01/17 22:30:34
Line 64  unsupported_hardware=""" Line 64  unsupported_hardware="""
 * L2 cache on machines with R4600 CPU  * L2 cache on machines with R4600 CPU
   
 """  """
   
 additional="""  additional="""
 * [SGI Hardware Techpubs Library](http://techpubs.sgi.com/library/tpl/cgi-bin/browse.cgi?db=bks&coll=hdwr&pth=/SGI_EndUser)  * [NetBSD/sgimips FAQ](http://www.NetBSD.org/ports/sgimips/faq.html)
   (including some Indy/Indigo2/O2 manuals)  * [Running NetBSD on emulated hardware](http://www.NetBSD.org/ports/emulators.html)
 * [Glaurung's SGI O2](http://www.linux-mips.org/~glaurung/) page (including Linux/O2 info)  
 * [GXemul](http://gxemul.sourceforge.net/) a functional machine emulator which also emulates O2.  
 * [Indy tech](http://www.reputable.com/indytech.html) site has a lot of information on the SGI Indy hardware.  
 * [O2 Workstation Hardware Reference Guide](http://techpubs.sgi.com/library/tpl/cgi-bin/browse.cgi?coll=hdwr&db=bks&cmd=toc&pth=/SGI_EndUser/O2_OG)  
 * [Indigo2 Workstation Owner's Guide](http://techpubs.sgi.com/library/tpl/cgi-bin/browse.cgi?coll=hdwr&db=bks&cmd=toc&pth=/SGI_EndUser/Indigo2_OG)  
 * [Indy Workstation Owner's Guide](http://techpubs.sgi.com/library/tpl/cgi-bin/browse.cgi?coll=hdwr&db=bks&cmd=toc&pth=/SGI_EndUser/Indy_OwnerGd)  
 * [IRIS Indigo Workstation Owner's Guide](http://techpubs.sgi.com/library/tpl/cgi-bin/browse.cgi?coll=hdwr&db=bks&cmd=toc&pth=/SGI_EndUser/Indigo_OG)  
 * [IRIX Device Driver Programmer's Guide](http://techpubs.sgi.com/library/tpl/cgi-bin/browse.cgi?coll=0650&db=bks&cmd=toc&pth=/SGI_Developer/DevDriver_PG)  
   
 <div id="content"><div class="fullWidth"><div class="rowOfBoxes">  
 <h1>NetBSD/sgimips: Frequently Asked Questions</h1>  
 <h3 class="title"><a name="general">General Questions</a></h3>  
 <ul>  
 <li><a href="#serialconsole">Things worth knowing about the Indy serial console</a></li>  
 <li><a href="#resetting-eaddr">How do I reset $eaddr on IP22 etc.?</a></li>  
 <li><a href="#prom-tftp-client-failing">PROM tftp client failing with default NetBSD tftpd settings</a></li>  
 <li><a href="#prom-issues">Other PROM issues you might encounter</a></li>  
 <li><a href="#sgivol">Updating the bootloader (using sgivol)</a></li>  
 </ul>  
 <h3 class="title"><a name="other">Other sources of information</a></h3>  
 <ul>  
 <li><a href="#on-site">Other NetBSD Documentation</a></li>  
 <li><a href="#off-site">Other Off-Site Documentation</a></li>  
 </ul>  
 <hr>  
 <h3 class="title">General Questions</h3>  
 <h4 class="title">  
 <a name="serialconsole"></a>Things worth knowing about the Indy serial console (<a href="#general">top</a>)  
   </h4>  
 <p>  
 Note that this information may apply to other models too. To get the machine  
 to boot up with a serial console, make sure the keyboard is unplugged when  
 turning on the machine. The serial console runs on serial #1, at 9600,  
 8N1 by default.  
 </p>  
 <p>  
 It is also possible to do a "<code class="code">setenv console d</code>" in the PROM  
 monitor to get the console to serial #1, or a "<code class="code">setenv console d2</code>"  
 to get it to serial #2 (default is "<code class="code">g</code>"). Optionally, the console's  
 speed can be set with "<code class="code">setenv dbaud &lt;bps&gt;</code>". After setting  
 these PROM variables either do an "<code class="code">init</code>" or a reboot of the  
 machine.  
 </p>  
 <p>  
   
 When booting up IRIX on the console, logins on the serial console  
 might be disabled. You can enable them by editing /etc/inittab  
 and adding the following line:  
 </p>  
   
 <pre class="programlisting">st:23:respawn:/sbin/getty systty co_9600        # serial console - HF</pre>  
   
 <p>  
 Don't forget to re-read the inittab then with "<code class="code">init q</code>".  
 </p>  
 <p>  
   
 The serial port pinouts are the same as SPARC systems' serial ports, so  
 Macintosh serial cables work great for serial-console cables, as long as  
 you are willing to do it without hardware handshaking lines.  See the <a class="ulink" href="../../docs/Hardware/Misc/serial.html" target="_top">NetBSD Serial Port  
 Primer</a> for more information.   
 </p>  
   
 <h4 class="title">  
 <a name="resetting-eaddr"></a>How do I reset $eaddr on IP22 etc.? (<a href="#general">top</a>)  
   </h4>  
 <p>  
 Here's a method to set the ethernet address that works on at  
 least the Indy, and perhaps also other machines with HPC3's.  
 </p>  
 <p>  
   
 All disclaimers apply yadda yadda.  
 </p>  
 <p>  
   
 At the PROM prompt:  
 </p>  
 <pre class="programlisting">dump -w -x 0xbfbe04e8</pre>  
 <p>  
   
 Sanity check the output here to see if it matches the address  
 given in the 'ec0: bad ethernet address' error message. If not,  
 you may not want to overwrite whatever is there instead.  
 </p>  
   
 <pre class="programlisting">fill -w -v 0xGG 0xbfbe04e8  
 fill -w -v 0xHH 0xbfbe04ec  
 fill -w -v 0xII 0xbfbe04f0  
 fill -w -v 0xJJ 0xbfbe04f4  
 fill -w -v 0xKK 0xbfbe04f8  
 fill -w -v 0xLL 0xbfbe04fc</pre>  
   
 <p>  
   
 Where GG:HH:II:JJ:KK:LL is the intended ethernet address. It's a  
 very good idea to reuse the address the machine was shipped with.  
 Check the back of the machine if you cannot remember it.  
 </p>  
 <p>  
   
 Power down, wait one full minute and then power up. All variables  
 will have been reset as with the resetenv command, except $eaddr.  
 </p>  
   
 <h4 class="title">  
 <a name="prom-tftp-client-failing"></a>PROM tftp client failing with default NetBSD tftpd settings (<a href="#general">top</a>)  
   </h4>  
 <p>  
   
 The PROM tftp client on SGI machines can fail with default NetBSD tftpd  
 settings.  The problem is that your current PROM may not support port  
 numbers with the sign bit set.  The workaround is to limit the port  
 numbers of anonymous connections to 32767.  The following tunables  
 should fix your problem:  
 </p>  
 <pre class="programlisting"># sysctl -w net.inet.ip.anonportmin=20000  
 # sysctl -w net.inet.ip.anonportmax=32767</pre>  
   
 <h4 class="title">  
 <a name="prom-issues"></a>Other PROM issues you might encounter (<a href="#general">top</a>)  
   </h4>  
 <p>  
   
 There are a few gotchas depending on your PROM version and the  
 OS (SASH) version installed:  
 </p>  
   
 <div class="orderedlist"><ol class="orderedlist" type="1">  
 <li class="listitem"> Old versions of SASH have an issue with incorrectly reporting  
      the memory map. If the kernel panics with a UVM related message  
      on boot (even before the copyright message), try booting the  
      kernel directly from the PROM rather than via sash (An I2 also  
      had this problem before upgrading to IRIX 6.x -- it was running  
      5.3 before).</li>  
 <li class="listitem"> Another old PROM issue -- old PROMs don't understand ELF, so  
      you may need an ECOFF kernel.  A workaround for this is to use  
      sash, which seems to understand ELF even in IRIX 5.x, but see  
      problem #1.</li>  
 </ol></div>  
   
   
 <h4 class="title">  
 <a name="sgivol"></a>Updating the bootloader (using sgivol) (<a href="#general">top</a>)  
   </h4>  
 <p>  
 When installing NetBSD using sysinst, it will leave space at the start of the  
 disk for the partition that will be used by the PROM to load the bootloader,  
 etc. This partition is called the Volume Header.  
 This needs to be a minimum of 3135 blocks (see SGI_BOOT_BLOCK_SIZE_VOLHDR in  
 <code class="filename">/usr/include/sys/bootblock.h</code>). An example disklabel is  
 shown below.  Partition <code class="code">i</code> will be used for the Volume Header as  
 is SGI convention (partition 8).   
 </p>  
 <pre class="programlisting">  
 sgimips# disklabel sd0  
 # /dev/rsd0c:  
 type: SCSI  
 disk: mydisk  
 label: fictitious  
 flags:  
 bytes/sector: 512  
 sectors/track: 135  
 tracks/cylinder: 8  
 sectors/cylinder: 1080  
 cylinders: 4078  
 total sectors: 4404240  
 rpm: 7200  
 interleave: 0  
 trackskew: 0  
 cylinderskew: 0  
 headswitch: 0           # microseconds  
 track-to-track seek: 0  # microseconds  
 drivedata: 0  
   
 16 partitions:  
 #        size    offset     fstype [fsize bsize cpg/sgs]  
  a:   3377306      3183     4.2BSD   1024  8192 45640  # (Cyl.      2*-    3130*)  
  b:   1024000   3380489       swap                     # (Cyl.   3130*-    4078+)  
  c:   4404489         0    unknown                     # (Cyl.      0 -    4078+)  
  i:      3183         0    unknown                     # (Cyl.      0 -       2*)  
 </pre>  
 <p>  
 After installing NetBSD, you can use the sgivol utility (located in  
 /usr/mdec) to manipulate this partition. If not set up already, it must be  
 initialised (N.B. sysinst will set this up correctly):  
 </p>  
 <pre class="programlisting">sgivol -i sd0</pre>  
 <p>  
 To upgrade the bootloader (or change it if the disk is moved to a different  
 model of machine), first delete the existing file:  
 </p>  
 <pre class="programlisting">sgivol -d boot sd0</pre>  
 <p>  
 Next, copy the appropriate bootloader as filename 'boot' into the   
 volume header:  
 </p>  
 <pre class="programlisting">sgivol -w boot /usr/mdec/ip2xboot sd0</pre>  
 <p>  
 You can have multiple bootloaders present (with different  
 names). This is very useful when booting different versions of NetBSD  
 (e.g., to upgrade from NetBSD 3 to 5.0 using a new INSTALL kernel) as  
 changes in bootinfo mean that NetBSD 4.0 and earlier kernels will not work  
 with a newer bootloader.  
 </p>  
 <p>  
 The contents of the volume header can be viewed by using the following  
 command:  
 </p>  
 <pre class="programlisting">sgivol sd0</pre>  
 <p>  
 Example output is shown below:  
 </p>  
 <pre class="programlisting">disklabel shows 4404240 sectors  
 checksum: 00000000  
 root part: 0  
 swap part: 1  
 bootfile: /netbsd  
   
 Volume header files:  
 sgilabel offset    2 blocks, length      512 bytes (1 blocks)  
 ide      offset    3 blocks, length   322048 bytes (629 blocks)  
 sash     offset  632 blocks, length   322048 bytes (629 blocks)  
 boot     offset 1261 blocks, length    53296 bytes (105 blocks)  
   
 SGI partitions:  
  0:a blocks  3377306 first     3183 type  4 (BSD4.2)  
  1:b blocks  1024000 first  3380489 type  3 (Raw)  
  8:i blocks     3199 first        0 type  0 (Volume Header)  
 10:k blocks  4404489 first        0 type  6 (Volume)  
 </pre>  
 <p>  
 See the <a class="ulink" href="http://man.NetBSD.org/cgi-bin/man-cgi?boot+8.sgimips+NetBSD-current" target="_top">boot(8)</a>  
 and <a class="ulink" href="http://man.NetBSD.org/cgi-bin/man-cgi?sgivol+8.sgimips+NetBSD-current" target="_top">sgivol(8)</a>  
 man pages for more information.  
 </p>  
   
 """  """
   
 ]]  ]]
 [[!tag tier2port]]  [[!tag tier2port]]

Removed from v.1.1  
changed lines
  Added in v.1.2


CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb