Difference between revisions of "Flameman/sgi"

From eLinux.org
Jump to: navigation, search
(dmesg)
(kernel status)
 
(31 intermediate revisions by the same user not shown)
Line 1: Line 1:
For more interesting projects done by Flameman, be sure to check out his [[Flameman#master_index|project index]]
+
For more interesting projects done by Flameman&Legacy, be sure to check out his [[Flameman#master_index|project index]]
  
 
= machine =
 
= machine =
Line 50: Line 50:
  
 
== o2 ==
 
== o2 ==
 +
=== kernel status ===
 +
 +
{| border="1" cellspacing="0" cellpadding="5" align="center"
 +
! kernel
 +
! note
 +
|-
 +
! 2.6.37-rc8
 +
! working, under testing, note1 needs to be applied
 +
|}
 +
 +
 +
* note1
 +
<pre>
 +
removing
 +
- Tickless System (Dynamic Ticks)
 +
- High Resolution Timer Support
 +
- SCSI generic support
 +
- RAID Transport Class
 +
- Verbose SCSI error reporting (kernel size +=12K)
 +
- SCSI logging facility
 +
 +
forcing
 +
- No Forced Preemption
 +
- SCSI_WAIT_SCAN compiled as builtin (it was an hidden module)
 +
</pre>
  
 
=== add on board support ===
 
=== add on board support ===
Line 63: Line 88:
  
 
[http://www.nekochan.net/wiki/SGI_O2 about sgi o2]
 
[http://www.nekochan.net/wiki/SGI_O2 about sgi o2]
 +
 +
 +
=== Known working PCI cards with IRIX ===
 +
 +
* SGI PCI Serial I/O a.k.a. PCI SIO UFC, part number 030-1657-003, Provides two RS-232/RS-422 serial ports. The board is slotted for universal voltage, but SGI only provides drivers for Onyx 300/350/3000 systems. The SGI marketing code is PCI-SER-10002.
 +
* SGI PCI Digital Audio Board <also known as the RADical Audio board>. The SGI part number for the example shown is 030-1649-001, it appears in an hinv with PCI vendor ID 0x10a9(SGI) and a device ID of 0x0005(RAD Audio):
 +
* SGI PCI Gigabit Ethernet:, 1000 Base SX (fiber optic interface) and 1000 Base T (copper interface) - shown mounted in an O2k XIO Shoehorn <a PCI-to-XIO slot adapter>: Both are keyed as 'universal' PCI cards to fit in either 3.3 or 5 volt slots.
 +
* SGI O2 10/100BaseT Network Card for O2: SGI marketing code SGI_PCI-ENET-TX-1P; part number 9210105
 +
* SGI USB PCI card, SGI part number 9210286: NEC chipset - Slotted for 3.3 and 5V PCI applications. SGI equipped Onyx 350 InfiniteReality and InfinitePerformance systems with this card as an attachment point for USB keyboards and mice. There are some references on TechPubs indicating Orange Micro as the OEM, while "UP205-0525" screened on the PCB returns Adaptec references. It appears in an hinv with a PCI vendor ID of 0x1033 (NEC) PCI device numbers 0x0035(Dual OHCI controllers plus Single EHCI controller) and 0x00e0(USB 2.0 Host Controller).
 +
* DATAFIRE PCI 1ST ISDN card SGI PN: 9210111 Came inside one O2, SGI part number 9981028 SGI
 +
 +
 +
See more here [http://www.nekochan.net/wiki/Known_working_PCI_cards_with_IRIX_(A_visual_database)]
  
 
== impact ==
 
== impact ==
Line 82: Line 120:
  
 
== octane2 ==
 
== octane2 ==
 +
 +
=== Things to keep in mind when building kernel for an SGI Octane ===
 +
 +
* Impact (MGRAS) console and X driver work, please report any bugs.
 +
* VPro (Odyssey) console works, but no X driver exists yet.
 +
* PCI Card Cages should work for many devices, except certain types like
 +
* PCI-to-PCI bridges (USB hubs, USB flash card readers for example).
 +
* Do not use OHCI-based USB cards in Octane.  They're broke on this machine.
 +
* Patches are welcome to fix the issue.
 +
* Equally, UHCI Cards are showing issues in this release, but should still function somewhat.  This issue manifests itself when using pl2303 USB->Serial adapters.
 +
* Other XIO-based devices like MENET and various Impact addons remain
 +
* untested and are not guaranteed to work.  This applies to various digital video conversion boards as well.
  
 
=== kernel status ===
 
=== kernel status ===
 +
 +
it has been tested on this machine
 +
<pre>
 +
>> hinv
 +
                  System: IP30
 +
                Processor: 400 Mhz R12000, 2M secondary cache
 +
                Processor: 400 Mhz R12000, 2M secondary cache, (cpu 1)
 +
              Memory size: 1536 Mbytes
 +
                  Network: ef0 ethernet (100/10 base-T)
 +
                    Audio: RAD Audio Processor
 +
                  PCI Bus: XTALKPCI (13)
 +
              PCI Device: slot 1 vendor 0x1033 part 0x35 rev 67
 +
                Graphics: ESI
 +
                Graphics: ODYSSEY
 +
</pre>
 +
 +
Adding/removing ESI, ODYSSEY
  
 
{| border="1" cellspacing="0" cellpadding="5" align="center"
 
{| border="1" cellspacing="0" cellpadding="5" align="center"
Line 90: Line 157:
 
|-
 
|-
 
! 2.6.17
 
! 2.6.17
! pretty stable, used in production
+
! pretty stable, used in production, 2xR12K and 2Gbyte of ram, ram should be reduced to 1.5Gb in order to use PCI, also IOC-serial-kb must be removed from the kernel
 +
|-
 +
! 2.6.19
 +
! not stable as 2.6.17, issue when executed on system with 2Gbyte of ram, PCI-cadge not working, issues with SMP
 +
|-
 +
! 2.6.20.*
 +
! may be work, not tested
 +
|-
 +
! 2.6.25
 +
! busted, stay away
 +
|-
 +
! 2.6.26
 +
! may be there is a patch, but IOC3 is hardly issued, SMP dead
 
|-
 
|-
 
! 2.6.29
 
! 2.6.29
 
! bugs in the scheduler, not booting on 2xR12K
 
! bugs in the scheduler, not booting on 2xR12K
 
|-
 
|-
 +
! 3.x.x @https://github.com/jaaron/linux-mips-ip30
 +
! system boots but IOC3 was still dead, as was SMP
 
|}
 
|}
 +
 +
 +
 +
<table>
 +
<tr><td rowspan="8" bgcolor="#a0ffa0">2.6.17.4</td><td bgcolor="#a0ffa0">64-bit kernel support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0"></td></tr>
 +
<tr><td bgcolor="#a0ffa0">Memory controller support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">support for 1.5GB</td></tr>
 +
<tr><td bgcolor="#a0ffa0">Interrupt support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">working</td></tr>
 +
<tr><td bgcolor="#a0ffa0">SMP support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">2xR12K</td></tr>
 +
<tr><td bgcolor="#a0ffa0">Eth0</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0"></td></tr>
 +
<tr><td bgcolor="#a0ffa0">PCI expansion</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">working with USD NEC EHCI</td></tr>
 +
<tr><td bgcolor="#a0ffa0">ram rootfs</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">uclibc & glibc working</td></tr>
 +
<tr><td bgcolor="#a0ffa0">rootfs</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">2006 mips3, mips4 are working</td></tr>
 +
 +
<tr><td rowspan="8" bgcolor="#a0ffa0">2.6.29.1</td><td bgcolor="#a0ffa0">64-bit kernel support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0"></td></tr>
 +
<tr><td bgcolor="#a0ffa0">Memory controller support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">support for 1.5GB</td></tr>
 +
<tr><td bgcolor="#ffa0a0">Interrupt support</td><td bgcolor="#ffa0a0">Yes</td><td bgcolor="#ffa0a0">not pretty working, also scheduling while atomic issue</td></tr>
 +
<tr><td bgcolor="#ffa0a0">SMP support</td><td bgcolor="#ffa0a0">Yes</td><td bgcolor="#ffa0a0">2xR12K does not boot, 1xR12K boots</td></tr>
 +
<tr><td bgcolor="#a0ffa0">Eth0</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0"></td></tr>
 +
<tr><td bgcolor="#efef90">PCI expansion</td><td bgcolor="#efef90">Yes</td><td bgcolor="#efef90">not tested</td></tr>
 +
<tr><td bgcolor="#a0ffa0">ram rootfs</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">uclibc & glibc working</td></tr>
 +
<tr><td bgcolor="#a0ffa0">rootfs</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0">2006 mips3, mips4 are working</td></tr>
 +
</table>
  
 
=== last kernel 2.6.29 ===
 
=== last kernel 2.6.29 ===
Line 111: Line 214:
 
==== dmesg ====
 
==== dmesg ====
 
* [[Flameman/sgi/octane-dmesg#kernel-2.6.29]]
 
* [[Flameman/sgi/octane-dmesg#kernel-2.6.29]]
 +
  
 
=== last working kernel 2.6.17-r14 ===
 
=== last working kernel 2.6.17-r14 ===
 +
kernel 2.6.17-r14, we are stopped at the year 2006, running a 2008 stage3 rootfs
  
kernel 2.6.17-r14, we are stopped at the year 2006, running a 2008 stage3 rootfs, and this is the kernel support status
+
==== status ====
 
<table>
 
<table>
 
<tr><td rowspan="4" bgcolor="#a0ffa0">CPU and memory</td><td bgcolor="#a0ffa0">64-bit kernel support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0"></td></tr>
 
<tr><td rowspan="4" bgcolor="#a0ffa0">CPU and memory</td><td bgcolor="#a0ffa0">64-bit kernel support</td><td bgcolor="#a0ffa0">Yes</td><td bgcolor="#a0ffa0"></td></tr>
Line 170: Line 275:
 
</table>
 
</table>
  
 +
Other XIO-based devices like MENET and various Impact addons remain untested and are not guaranteed to work. This applies to various digital video conversion boards as well.
  
  * Things to keep in mind when building a kernel for an SGI Octane:
+
==== PCI Card Cages ====
* - Impact (MGRAS) console and X driver work, please report any bugs.
+
* - VPro (Odyssey) console works, but no X driver exists yet.
+
* - PCI Card Cages should work for many devices, except certain types like
+
*   PCI-to-PCI bridges (USB hubs, USB flash card readers for example).
+
* - Do not use OHCI-based USB cards in Octane.  They're broke on this machine.
+
*   Patches are welcome to fix the issue.
+
* - Equally, UHCI Cards are showing issues in this release, but should still
+
*   function somewhat.  This issue manifests itself when using pl2303 USB->Serial
+
*   adapters.
+
* - Other XIO-based devices like MENET and various Impact addons remain
+
*   untested and are not guaranteed to work.  This applies to various
+
*   digital video conversion boards as well.
+
  
 
+
* broken OHCI-based USB cards
* Applying patch-2.6.29.1.patch (-p1) ...                                                                                                                          [ ok ]
+
* partially broken UHCI-based USB cards.
* Applying mipsgit-2.6.29-20090324.diff.patch (-p1) ...                                                                                                            [ ok ]
+
 
+
>>> Unpacking mips-sources-2.6.29-patches-v3.tar.bz2 to /var/tmp/portage/sys-kernel/mips-sources-2.6.29.1/work
+
* Applying 1001_2.6.28-ip22-vino-64bit-ioctl-fixes.patch ...                                                                                                        [ ok ]
+
* Applying 2001_2.6.11-ip32-mace-is-always-eth0.patch ...                                                                                                          [ ok ]
+
* Applying 2002_2.6.24-ip32-rm7k-l3-support.patch ...                                                                                                              [ ok ]
+
* Applying 4001_2.6.28-ths-mips-tweaks.patch ...                                                                                                                    [ ok ]
+
* Applying 4002_2.6.23-seccomp-no-default.patch ...                                                                                                                [ ok ]
+
* Applying 4003_2.6.11-add-byteorder-to-proc.patch ...                                                                                                              [ ok ]
+
* Applying 4004_2.6.28-enable-old-rtc-drivers.patch ...                                                                                                            [ ok ]
+
* Applying 4005_2.6.28-disable-format-security.patch ...                                                                                                            [ ok ]
+
* Applying 4006_2.6.29-ext4-automatically-allocate-delay-allocated-blocks-on-rename.patch ...                                                                      [ ok ]
+
* Applying 4007_2.6.29-ext4-automatically-allocate-delay-allocated-blocks-on-close.patch ...                                                                        [ ok ]
+
* Applying 4008_2.6.29-ext4-add-EXT4_IOC_ALLOC_DA_BLKS-ioctl.patch ...                                                                                              [ ok ]
+
* Applying 4009_2.6.29-ext4-fix-discard-of-inode-prealloc-space-with-delayed-allocation.patch ...                                                                  [ ok ]
+
* Applying 5011_2.6.29-ioc3-metadriver-r27.patch ...                                                                                                                [ ok ]
+
* Applying 5012_2.6.22-ioc3-revert_commit_691cd0c.patch ...                                                                                                        [ ok ]
+
* Applying 5041_2.6.29-ip30-octane-support-r28.patch ...                                                                                                            [ ok ]
+
* Applying 8001_2.6.29-o32-fix-sys_llseek.patch ...                                                                                                             [ ok ]
+
  
 
==== dmesg ====
 
==== dmesg ====
<pre>
+
* [[Flameman/sgi/octane-dmesg#kernel-2.6.17.4]]
version 2.6.17.14-crazed-snow-weasel-sgi-octane-2xr12k
+
gcc version 4.1.2 (Gentoo 4.1.2 p1.0.1))
+
SMP Mon Jun 2 23:15:07 CEST 2008
+
 
+
ARCH: SGI-IP30
+
PROMLIB: ARC firmware Version 64 Revision 0
+
CPU revision is: 00000e35
+
FPU revision is: 00000900
+
Silicon Graphics Octane (IP30) support: (c) 2004, 2005 Stanislaw Skowronek.
+
Detected 2048 MB of physical memory.
+
Updating PROM memory size.
+
xtalk: Detected XBow (revision 2.0) at 0.
+
xtalk: Detected Heart (revision F) at 8.
+
xtalk: Detected HQ4 / ImpactSR (revision B) at 10.
+
xtalk: Detected Buzz / Odyssey (revision B) at 11.
+
xtalk: Detected Bridge (revision D) at 15.
+
BRIDGE chip at xtalk:15, initializing...
+
Determined physical RAM map:
+
memory: 0000000000004000 @ 0000000000000000 (reserved)
+
memory: 0000000000efc000 @ 0000000020004000 (usable)
+
memory: 0000000000100000 @ 0000000020f00000 (ROM data)
+
memory: 000000003eff0000 @ 0000000021000000 (usable)
+
memory: 0000000040010000 @ 000000005fff0000 (reserved)
+
memory: 0000000040000000 @ 0000000060000000 (usable)
+
SGI Octane system with >2GB physical memory, limiting DMA.
+
On node 0 totalpages: 655360
+
  DMA zone: 655360 pages, LIFO batch:31
+
Built 1 zonelists
+
Kernel command line: root=/dev/sda3 ro
+
Primary instruction cache 32kB, physically tagged, 2-way, linesize 64 bytes.
+
Primary data cache 32kB, 2-way, linesize 32 bytes.
+
Unified secondary cache 2048kB 2-way, linesize 128 bytes.
+
Synthesized TLB refill handler (41 instructions).
+
Synthesized TLB load handler fastpath (55 instructions).
+
Synthesized TLB store handler fastpath (55 instructions).
+
Synthesized TLB modify handler fastpath (54 instructions).
+
IP30: interrupt controller initialized.
+
PID hash table entries: 4096 (order: 12, 32768 bytes)
+
IP30: initializing timer.
+
400 MHz CPU detected
+
Using 200.490 MHz high precision timer.
+
Console: colour dummy device 80x25
+
Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
+
Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
+
Memory: 2048768k/2096048k available (3287k kernel code, 46788k reserved, 806k data, 228k init, 0k highmem)
+
Calibrating delay loop... 598.01 BogoMIPS (lpj=299008)
+
Mount-cache hash table entries: 256
+
Checking for 'wait' instruction...  unavailable.
+
Checking for the multiply/shift bug... no.
+
Checking for the daddi bug... no.
+
Checking for the daddiu bug... no.
+
CPU revision is: 00000e35
+
FPU revision is: 00000900
+
Primary instruction cache 32kB, physically tagged, 2-way, linesize 64 bytes.
+
Primary data cache 32kB, 2-way, linesize 32 bytes.
+
Unified secondary cache 2048kB 2-way, linesize 128 bytes.
+
Synthesized TLB refill handler (41 instructions).
+
Calibrating delay loop... 600.06 BogoMIPS (lpj=300032)
+
Brought up 2 CPUs
+
migration_cost=2000
+
NET: Registered protocol family 16
+
SCSI subsystem initialized
+
usbcore: registered new driver usbfs
+
usbcore: registered new driver hub
+
PCI: Scanning bus 0000:00
+
PCI: Found 0000:00:00.0 [1077/1020] 000100 00
+
PCI: Calling quirk a8000000201b2bc8 for 0000:00:00.0
+
PCI: Found 0000:00:01.0 [1077/1020] 000100 00
+
PCI: Calling quirk a8000000201b2bc8 for 0000:00:01.0
+
PCI: Found 0000:00:02.0 [10a9/0003] 00ff00 00
+
PCI: Calling quirk a8000000201b2bc8 for 0000:00:02.0
+
PCI: Found 0000:00:03.0 [10a9/0005] 000000 00
+
PCI: Calling quirk a8000000201b2bc8 for 0000:00:03.0
+
IP30: HEART ATTACK! Caught errors: 0x1040!
+
    interrupt #63
+
    interrupt #57
+
PCI: Fixups for bus 0000:00
+
PCI: Bus scan for 0000:00 returning with max=00
+
  got res [1f200000:1f2fffff] bus [200000:2fffff] flags 200 for BAR 0 of 0000:00:02.0
+
PCI: moved device 0000:00:02.0 resource 0 (200) to 200000
+
  got res [1f300000:1f30ffff] bus [300000:30ffff] flags 7200 for BAR 6 of 0000:00:00.0
+
  got res [1f310000:1f31ffff] bus [310000:31ffff] flags 7200 for BAR 6 of 0000:00:01.0
+
  got res [1f320000:1f320fff] bus [320000:320fff] flags 200 for BAR 1 of 0000:00:00.0
+
PCI: moved device 0000:00:00.0 resource 1 (200) to 320000
+
  got res [1f321000:1f321fff] bus [321000:321fff] flags 200 for BAR 1 of 0000:00:01.0
+
PCI: moved device 0000:00:01.0 resource 1 (200) to 321000
+
  got res [1fa00000:1fa000ff] bus [a00000:a000ff] flags 101 for BAR 0 of 0000:00:00.0
+
PCI: moved device 0000:00:00.0 resource 0 (101) to a00000
+
  got res [1fa00400:1fa004ff] bus [a00400:a004ff] flags 101 for BAR 0 of 0000:00:01.0
+
PCI: moved device 0000:00:01.0 resource 0 (101) to a00400
+
PCI: fixup irq: (0000:00:00.0) got 8
+
PCI: fixup irq: (0000:00:01.0) got 9
+
PCI: fixup irq: (0000:00:02.0) got 10
+
PCI: fixup irq: (0000:00:03.0) got 11
+
NET: Registered protocol family 2
+
IP route cache hash table entries: 131072 (order: 8, 1048576 bytes)
+
TCP established hash table entries: 262144 (order: 10, 4194304 bytes)
+
TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
+
TCP: Hash tables configured (established 262144 bind 65536)
+
TCP reno registered
+
EFS: 1.0a - http://aeschi.ch.eu.org/efs/
+
fuse init (API version 7.6)
+
BeFS version: 0.9.3
+
io scheduler noop registered
+
io scheduler anticipatory registered (default)
+
io scheduler deadline registered
+
io scheduler cfq registered
+
PCI: Calling quirk a8000000201b3de0 for 0000:00:00.0
+
PCI: Calling quirk a8000000202547d8 for 0000:00:00.0
+
PCI: Calling quirk a8000000201b3de0 for 0000:00:01.0
+
PCI: Calling quirk a8000000202547d8 for 0000:00:01.0
+
PCI: Calling quirk a8000000201b3de0 for 0000:00:02.0
+
PCI: Calling quirk a8000000202547d8 for 0000:00:02.0
+
PCI: Calling quirk a8000000202acbe8 for 0000:00:02.0
+
PCI: Calling quirk a8000000201b3de0 for 0000:00:03.0
+
PCI: Calling quirk a8000000202547d8 for 0000:00:03.0
+
PCI: Calling quirk a8000000202acbe8 for 0000:00:03.0
+
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
+
fakephp: Fake PCI Hot Plug Controller Driver
+
Console: switching to colour frame buffer device 160x64
+
fb0: ImpactSR 1RSS frame buffer device
+
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
+
loop: loaded (max 8 devices)
+
qla1280: QLA1040 found on PCI bus 0, dev 0
+
BRIDGE: IO #0, size 0x100 for little-endian 0000:00:00.0 --> direct I/O at bus 0x01000000 vma 0x000000f101000000
+
BRIDGE: Memory #1, size 0x1000 for little-endian 0000:00:00.0 --> direct 32-bit at bus 0x01000000 vma 0x000000f041000000
+
BRIDGE: Memory #6, size 0x10000 for little-endian 0000:00:00.0 --> direct 32-bit at bus 0x01010000 vma 0x000000f041010000
+
PCI: Enabling device 0000:00:00.0 (0006 -> 0007)
+
scsi(0:0): Resetting SCSI BUS
+
scsi0 : QLogic QLA1040 PCI to SCSI Host Adapter
+
      Firmware version:  7.65.06, Driver version 3.26
+
  Vendor: FUJITSU  Model: MAH3091MC        Rev: 0115
+
  Type:  Direct-Access                      ANSI SCSI revision: 04
+
scsi(0:0:1:0): Sync: period 10, offset 12
+
  Vendor: FUJITSU  Model: MAH3091MC        Rev: 0115
+
  Type:  Direct-Access                      ANSI SCSI revision: 04
+
scsi(0:0:2:0): Sync: period 10, offset 12
+
qla1280: QLA1040 found on PCI bus 0, dev 1
+
BRIDGE: IO #0, size 0x100 for little-endian 0000:00:01.0 --> direct I/O at bus 0x01000100 vma 0x000000f101000100
+
BRIDGE: Memory #1, size 0x1000 for little-endian 0000:00:01.0 --> direct 32-bit at bus 0x01020000 vma 0x000000f041020000
+
BRIDGE: Memory #6, size 0x10000 for little-endian 0000:00:01.0 --> direct 32-bit at bus 0x01030000 vma 0x000000f041030000
+
PCI: Enabling device 0000:00:01.0 (0006 -> 0007)
+
scsi(1:0): Resetting SCSI BUS
+
scsi1 : QLogic QLA1040 PCI to SCSI Host Adapter
+
      Firmware version:  7.65.06, Driver version 3.26
+
st: Version 20050830, fixed bufsize 32768, s/g segs 256
+
SCSI device sda: 17850264 512-byte hdwr sectors (9139 MB)
+
sda: Write Protect is off
+
sda: Mode Sense: ab 00 10 08
+
SCSI device sda: drive cache: write back w/ FUA
+
SCSI device sda: 17850264 512-byte hdwr sectors (9139 MB)
+
sda: Write Protect is off
+
sda: Mode Sense: ab 00 10 08
+
SCSI device sda: drive cache: write back w/ FUA
+
sda: sda1 sda2 sda3 sda9 sda11
+
sd 0:0:1:0: Attached scsi disk sda
+
SCSI device sdb: 17850264 512-byte hdwr sectors (9139 MB)
+
sdb: Write Protect is off
+
sdb: Mode Sense: ab 00 10 08
+
SCSI device sdb: drive cache: write back w/ FUA
+
SCSI device sdb: 17850264 512-byte hdwr sectors (9139 MB)
+
sdb: Write Protect is off
+
sdb: Mode Sense: ab 00 10 08
+
SCSI device sdb: drive cache: write back w/ FUA
+
sdb: sdb1
+
sd 0:0:2:0: Attached scsi disk sdb
+
usbmon: debugfs is not available
+
ohci_hcd: 2005 April 22 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
+
USB Universal Host Controller Interface driver v3.0
+
Initializing USB Mass Storage driver...
+
usbcore: registered new driver usb-storage
+
USB Mass Storage support registered.
+
usbcore: registered new driver usbhid
+
drivers/usb/input/hid-core.c: v2.6:USB HID core driver
+
mice: PS/2 mouse device common for all mice
+
Advanced Linux Sound Architecture Driver Version 1.0.11rc4 (Wed Mar 22 10:27:24 2006 UTC).
+
BRIDGE: Memory #0, size 0x2000 for little-endian 0000:00:03.0 --> direct 32-bit at bus 0x01040000 vma 0x000000f041040000
+
ALSA device list:
+
  #0: SGI RAD Audio at 0xf041040000
+
BRIDGE: Memory #0, size 0x100000 for little-endian 0000:00:02.0 --> direct 32-bit at bus 0x01100000 vma 0x000000f041100000
+
IOC3 part: [030-0891-003], serial: [KZG030] => class IP30 system
+
0000:00:02.0: ttyS0 at IOC3 0xf041120178 (irq = 64) is a 16550A
+
0000:00:02.0: ttyS1 at IOC3 0xf041120170 (irq = 64) is a 16550A
+
Ethernet address is 08:00:69:13:66:d4.
+
eth0: link up, 100Mbps, full-duplex, lpa 0x05E1
+
eth0: Using PHY 1, vendor 0x15f42, model 2, rev 3.
+
eth0: IOC3 SSRAM has 128 kbyte.
+
IOC3 Master Driver loaded for 0000:00:02.0
+
IPv4 over IPv4 tunneling driver
+
TCP bic registered
+
NET: Registered protocol family 1
+
NET: Registered protocol family 17
+
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
+
All bugs added by David S. Miller <davem@redhat.com>
+
atkbd.c: keyboard reset failed on ioc3/serio0kbd
+
kjournald starting.  Commit interval 5 seconds
+
EXT3-fs: mounted filesystem with ordered data mode.
+
VFS: Mounted root (ext3 filesystem) readonly.
+
Freeing prom memory: 1024kb freed
+
Freeing firmware memory: 1048576k freed
+
Freeing unused kernel memory: 228k freed
+
atkbd.c: keyboard reset failed on ioc3/serio0aux
+
EXT3 FS on sda3, internal journal
+
Adding 506036k swap on /dev/sda2.  Priority:-1 extents:1 across:506036k
+
kjournald starting.  Commit interval 5 seconds
+
EXT3-fs warning: checktime reached, running e2fsck is recommended
+
EXT3 FS on sdb1, internal journal
+
EXT3-fs: mounted filesystem with ordered data mode.</pre>
+
  
 
==== add on board support ====
 
==== add on board support ====
Line 442: Line 309:
  
 
* [http://www.youtube.com/watch?v=EXWYSAnEu_8  booting openbsd]
 
* [http://www.youtube.com/watch?v=EXWYSAnEu_8  booting openbsd]
 
= XFS support by SGI =
 
 
* [http://oss.sgi.com/projects/xfs/ project]
 
  
 
= dual boot, idea =
 
= dual boot, idea =
Line 457: Line 320:
 
= interesting url =
 
= interesting url =
  
* [http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/experimental/mips mirrorservice]
+
* [http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/experimental/mips mirrorservice, mirror of ramrootfs, booting gentoo cd, etc ...]
 
* [http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi/hdwr/bks/SGI_EndUser/books/O2_OG/sgi_html/apa.html#id16904 SGICable Pinout Assignments]
 
* [http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi/hdwr/bks/SGI_EndUser/books/O2_OG/sgi_html/apa.html#id16904 SGICable Pinout Assignments]
 
* [http://arnaud.giersch.free.fr/parport_ip32.html SGI O2 parport]
 
* [http://arnaud.giersch.free.fr/parport_ip32.html SGI O2 parport]
 
* [http://www.linux-mips.org/wiki/IP32 mips org IP32]
 
* [http://www.linux-mips.org/wiki/IP32 mips org IP32]
 +
* [http://oss.sgi.com/projects/xfs/ XFS support by SGI]
 +
  
 
[[Category:Mips]]
 
[[Category:Mips]]
 
[[Category:Sgi]]
 
[[Category:Sgi]]

Latest revision as of 18:40, 11 August 2013

For more interesting projects done by Flameman&Legacy, be sure to check out his project index

machine

indy

8 PinMini DIN (SGI) DB25 Plug Name
4 7 GND
5 2 TD
3 3 RD
1 8 CD
7 4 DTR

add on board support

board over gio32 kernel support
scsi add on dunno
phobos g130 dunno


note: if you inclide the gfx framebuffer support in the kernel, then you CAN NOT boot with missing gfx hw board! The kernel is expecting to find it, if it is missing it will panic!

Suggestion: do not include the framebuffer, use uart console only

o2

kernel status

kernel note
2.6.37-rc8 working, under testing, note1 needs to be applied


  • note1
removing 
- Tickless System (Dynamic Ticks) 
- High Resolution Timer Support 
- SCSI generic support 
- RAID Transport Class 
- Verbose SCSI error reporting (kernel size +=12K) 
- SCSI logging facility 

forcing 
- No Forced Preemption 
- SCSI_WAIT_SCAN compiled as builtin (it was an hidden module) 

add on board support

board over pci kernel support
_ dunno


about sgi o2


Known working PCI cards with IRIX

  • SGI PCI Serial I/O a.k.a. PCI SIO UFC, part number 030-1657-003, Provides two RS-232/RS-422 serial ports. The board is slotted for universal voltage, but SGI only provides drivers for Onyx 300/350/3000 systems. The SGI marketing code is PCI-SER-10002.
  • SGI PCI Digital Audio Board <also known as the RADical Audio board>. The SGI part number for the example shown is 030-1649-001, it appears in an hinv with PCI vendor ID 0x10a9(SGI) and a device ID of 0x0005(RAD Audio):
  • SGI PCI Gigabit Ethernet:, 1000 Base SX (fiber optic interface) and 1000 Base T (copper interface) - shown mounted in an O2k XIO Shoehorn <a PCI-to-XIO slot adapter>: Both are keyed as 'universal' PCI cards to fit in either 3.3 or 5 volt slots.
  • SGI O2 10/100BaseT Network Card for O2: SGI marketing code SGI_PCI-ENET-TX-1P; part number 9210105
  • SGI USB PCI card, SGI part number 9210286: NEC chipset - Slotted for 3.3 and 5V PCI applications. SGI equipped Onyx 350 InfiniteReality and InfinitePerformance systems with this card as an attachment point for USB keyboards and mice. There are some references on TechPubs indicating Orange Micro as the OEM, while "UP205-0525" screened on the PCB returns Adaptec references. It appears in an hinv with a PCI vendor ID of 0x1033 (NEC) PCI device numbers 0x0035(Dual OHCI controllers plus Single EHCI controller) and 0x00e0(USB 2.0 Host Controller).
  • DATAFIRE PCI 1ST ISDN card SGI PN: 9210111 Came inside one O2, SGI part number 9981028 SGI


See more here [1]

impact

add on board support

board over gio64 / eisa kernel support
_ dunno


fuel

linux is not running yet, but OpenBSD is going to run

octane2

Things to keep in mind when building kernel for an SGI Octane

  • Impact (MGRAS) console and X driver work, please report any bugs.
  • VPro (Odyssey) console works, but no X driver exists yet.
  • PCI Card Cages should work for many devices, except certain types like
  • PCI-to-PCI bridges (USB hubs, USB flash card readers for example).
  • Do not use OHCI-based USB cards in Octane. They're broke on this machine.
  • Patches are welcome to fix the issue.
  • Equally, UHCI Cards are showing issues in this release, but should still function somewhat. This issue manifests itself when using pl2303 USB->Serial adapters.
  • Other XIO-based devices like MENET and various Impact addons remain
  • untested and are not guaranteed to work. This applies to various digital video conversion boards as well.

kernel status

it has been tested on this machine

>> hinv
                   System: IP30
                Processor: 400 Mhz R12000, 2M secondary cache
                Processor: 400 Mhz R12000, 2M secondary cache, (cpu 1)
              Memory size: 1536 Mbytes
                  Network: ef0 ethernet (100/10 base-T)
                    Audio: RAD Audio Processor
                  PCI Bus: XTALKPCI (13)
               PCI Device: slot 1 vendor 0x1033 part 0x35 rev 67
                 Graphics: ESI
                 Graphics: ODYSSEY

Adding/removing ESI, ODYSSEY

kernel note
2.6.17 pretty stable, used in production, 2xR12K and 2Gbyte of ram, ram should be reduced to 1.5Gb in order to use PCI, also IOC-serial-kb must be removed from the kernel
2.6.19 not stable as 2.6.17, issue when executed on system with 2Gbyte of ram, PCI-cadge not working, issues with SMP
2.6.20.* may be work, not tested
2.6.25 busted, stay away
2.6.26 may be there is a patch, but IOC3 is hardly issued, SMP dead
2.6.29 bugs in the scheduler, not booting on 2xR12K
3.x.x @https://github.com/jaaron/linux-mips-ip30 system boots but IOC3 was still dead, as was SMP


2.6.17.464-bit kernel supportYes
Memory controller supportYessupport for 1.5GB
Interrupt supportYesworking
SMP supportYes2xR12K
Eth0Yes
PCI expansionYesworking with USD NEC EHCI
ram rootfsYesuclibc & glibc working
rootfsYes2006 mips3, mips4 are working
2.6.29.164-bit kernel supportYes
Memory controller supportYessupport for 1.5GB
Interrupt supportYesnot pretty working, also scheduling while atomic issue
SMP supportYes2xR12K does not boot, 1xR12K boots
Eth0Yes
PCI expansionYesnot tested
ram rootfsYesuclibc & glibc working
rootfsYes2006 mips3, mips4 are working

last kernel 2.6.29

Option? 5 Command Monitor. Type "exit" to return to the menu. >> bootp(): Setting $netaddr to 192.168.1.3 (from server ) Obtaining from server 13597184+304112 entry: 0xa800000020009cd0 - dead -

It does not work on 2xR12K@400Mhz, it boots on 1xR12K system

dmesg


last working kernel 2.6.17-r14

kernel 2.6.17-r14, we are stopped at the year 2006, running a 2008 stage3 rootfs

status

CPU and memory64-bit kernel supportYes
Memory controller supportYessupport for >1GB added in 2.6.12-R22
Interrupt supportYes
SMP supportYes
XIO supportBasic mapping WPwork in progress - XIO API
Device discovery WPit basically works, but waits for XIO API
Flow control WPsoon to come in the new XIO API
PCI supportBasic mappingYes
Device discoveryYes
64-bit DMAYes
32-bit DMAYes
System bridgeYes
Additional bridgesYes
IOC3 supportEthernetYesalso for IP27
SuperIO meta-deviceYesalso for IP27
Serial portsYesalso for IP27
RS232/RS422 mode switchNo =(low priority task, but no real problems
Parallel portNo =(unavailability of non-standard cable for testing
Real Time ClockYes
Software power downYes
Voltage monitorNo =(low priority task, not enough information
LEDsYes
PS/2 portsYes
SCSI supportInternal devicesYes
External devicesYes
RAD1 supportData DMA supportYes
Status DMA supportYes
Analog outputYes
Analog inputYes
AES outputYes
AES inputYes
ADAT outputNo =(no test equipment
ADAT inputNo =(no test equipment
ALSA PCM supportYesplease report bugs!
ALSA mixer supportYes
ImpactSR supportLinux console supportYes
MPlayer output supportYes
X Window supportYesshadowfb driver
24-bit depth setupYes
Video mode changeNo =(not enough information
Image DMAYes
Hardware cursorYes
2D accelerationYes
3D accelerationNo =(not enough information
Flow controlNo =(not enough information, lack of XIO flow control
Multiple cardsNo =(lack of test hardware
VPro supportLinux console supportYes
X Window supportNo =(complexity of accelerated X drivers
24-bit depth setupYes
2D accelerationYes
3D accelerationYes
Image DMANo =(it's not really easy

Other XIO-based devices like MENET and various Impact addons remain untested and are not guaranteed to work. This applies to various digital video conversion boards as well.

PCI Card Cages

  • broken OHCI-based USB cards
  • partially broken UHCI-based USB cards.

dmesg

add on board support

board over xio24 / pci cartridge kernel support
v6 over xio24 2.6.17: no X11 support, pretty text console
impactSR over xio24 2.6.17: pretty X11 support, pretty text console

What is the state of hardware support on this machine?

  • V6, V8 gfx: X11 support doesn't exist, and likely won't for a very long while. Stan (the IP30 Port Author) recently got console mode running on this card, but from what I understand, this is a rather complex piece of video hardware. Remote X works, however.
  • Impact gfx: X11 is working
  • Onboard sound works well enough from what I hear. I tested several MP3s from console via mpg123, and they worked well. A new patch coming out next week (Jul 23-24) will enable support for the optical inputs/outputs for AES (ADAT capabilities will not be supported).
  • Onboard Scsi works like a charm. It wasn't entirely usable about 3 weeks ago due to reliance on the old qlogicisp driver, but with some very recent fixes to qla1280, it has replaced qlogicisp. I now run a RAID5 array using 3 50G seagate drives on my Octane, and so far, everything works great (and hdparm reports ~17.4MB/s throughput).
  • Onboard Ethernet works fine too. The IOC3 driver was recently re-written to make IOC3 more of a Bus device with peripherals hanging off of it, which makes IOC3 less of a nightmare device from a coder's standpoint (but not by much).

boot examples

dual boot, idea

It should be possible if you set up IRIX as per normal and leave space on the drive for Linux. Install Linux as per the guide except when you get to set up the PROM. you'll want to leave that as is. Then you'd set up arcload to boot up Linux on demand.

  • To boot IRIX, just switch the machine on.
  • To boot Linux, drop to the monitor prompt and run boot -f arcload.


interesting url