Difference between revisions of "Flameman/sgi"

From eLinux.org
Jump to: navigation, search
(last working kernel 2.6.17)
(kernel status)
 
(43 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 213:
  
 
==== dmesg ====
 
==== dmesg ====
 +
* [[Flameman/sgi/octane-dmesg#kernel-2.6.29]]
  
<pre>
 
version 2.6.29.1-mipsgit-20090324-sgi-octane2-1xR12K
 
compiled with gcc version 4.3.5 (Gentoo 4.3.5 p1.1) )
 
1 SMP PREEMPT Tue Jul 23 05:12:44 CEST 2013
 
 
ARCH: SGI-IP30
 
PROMLIB: ARC firmware Version 64 Revision 0
 
CPU revision is: 00000e35 (R12000)
 
FPU revision is: 00000900
 
Checking for the multiply/shift bug... no.
 
Checking for the daddiu bug... no.
 
Silicon Graphics Octane (IP30) support: (c) 2004-2007 Stanislaw Skowronek.
 
Detected 1280 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...
 
registering PCI controller with io_map_base unset
 
Determined physical RAM map:
 
memory: 0000000000004000 @ 0000000000000000 (reserved)
 
memory: 0000000000d44000 @ 0000000020004000 (reserved)
 
memory: 00000000001b8000 @ 0000000020d48000 (usable)
 
memory: 0000000000100000 @ 0000000020f00000 (ROM data)
 
memory: 000000003f000000 @ 0000000021000000 (usable)
 
memory: 0000000010000000 @ 0000000060000000 (reserved)
 
memory: 0000000010000000 @ 0000000060000000 (usable)
 
Wasting 7530432 bytes for tracking 134472 unused pages
 
Initrd not found or empty - disabling initrd
 
Zone PFN ranges:
 
  DMA      0x00000000 -> 0x000a0000
 
  Normal  0x000a0000 -> 0x000a0000
 
Movable zone start PFN for each node
 
early_node_map[2] active PFN ranges
 
    0: 0x00000000 -> 0x00000004
 
    0: 0x00020004 -> 0x00070000
 
On node 0 totalpages: 327680
 
free_area_init_node: node 0, pgdat a8000000204cb080, node_mem_map a800000021000000
 
  DMA zone: 6272 pages used for memmap
 
  DMA zone: 0 pages reserved
 
  DMA zone: 321408 pages, LIFO batch:31
 
Detected 1 enabled CPU(s).
 
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 321408
 
Kernel command line: ip=on console=ttyS0,9600 rdinit=/sbin/init init=/bin/bash
 
Primary instruction cache 32kB, VIPT, 2-way, linesize 64 bytes.
 
Primary data cache 32kB, 2-way, VIPT, no aliases, linesize 32 bytes
 
Unified secondary cache 2048kB 2-way, linesize 128 bytes.
 
IP30: interrupt controller initialized.
 
PID hash table entries: 4096 (order: 12, 32768 bytes)
 
IP30: initializing timer.
 
400 MHz CPU detected
 
start_kernel(): bug: interrupts were enabled early
 
Console: colour dummy device 80x25
 
Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
 
Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
 
Memory: 1267076k/1296096k available (3708k kernel code, 28276k reserved, 1215k data, 8360k init, 0k highmem)
 
Calibrating delay loop... 618.49 BogoMIPS (lpj=309248)
 
Mount-cache hash table entries: 256
 
Checking for the daddi bug... no.
 
Brought up 1 CPUs
 
net_namespace: 560 bytes
 
NET: Registered protocol family 16
 
bio: create slab <bio-0> at 0
 
SCSI subsystem initialized
 
usbcore: registered new interface driver usbfs
 
usbcore: registered new interface driver hub
 
usbcore: registered new device driver usb
 
pci 0000:00:00.0: reg 10 io port: [0x200000-0x2000ff]
 
pci 0000:00:00.0: reg 14 32bit mmio: [0x200000-0x200fff]
 
pci 0000:00:00.0: reg 30 32bit mmio: [0x210000-0x21ffff]
 
pci 0000:00:01.0: reg 10 io port: [0x400000-0x4000ff]
 
pci 0000:00:01.0: reg 14 32bit mmio: [0x400000-0x400fff]
 
pci 0000:00:01.0: reg 30 32bit mmio: [0x410000-0x41ffff]
 
pci 0000:00:02.0: reg 10 32bit mmio: [0x500000-0x5fffff]
 
pci 0000:00:03.0: reg 10 32bit mmio: [0x600000-0x601fff]
 
IP30: HEART ATTACK! Caught errors: 0x0040!
 
    interrupt #63
 
    interrupt #57
 
Switched to high resolution mode on CPU 0
 
NET: Registered protocol family 2
 
IP route cache hash table entries: 65536 (order: 7, 524288 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
 
NET: Registered protocol family 1
 
squashfs: version 4.0 (2009/01/31) Phillip Lougher
 
EFS: 1.0a - http://aeschi.ch.eu.org/efs/
 
msgmni has been set to 2476
 
alg: No test for stdrng (krng)
 
io scheduler noop registered
 
io scheduler deadline registered (default)
 
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
 
Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
 
loop: module loaded
 
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
 
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 20081215, fixed bufsize 32768, s/g segs 256
 
Driver 'st' needs updating - please use bus_type methods
 
Driver 'sd' needs updating - please use bus_type methods
 
Driver 'sr' needs updating - please use bus_type methods
 
usbmon: debugfs is not available
 
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
 
ehci_hcd: block sizes: qh 160 qtd 96 itd 192 sitd 96
 
uhci_hcd: USB Universal Host Controller Interface driver
 
usbcore: registered new interface driver usbserial
 
usbserial: USB Serial Driver core
 
USB Serial support registered for pl2303
 
usbcore: registered new interface driver pl2303
 
pl2303: Prolific PL2303 USB to serial adaptor driver
 
mice: PS/2 mouse device common for all mice
 
usbcore: registered new interface driver usbhid
 
usbhid: v2.6:USB HID core driver
 
Advanced Linux Sound Architecture Driver Version 1.0.18a.
 
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: [MBX420] => class IP30 system
 
BUG: scheduling while atomic: swapper/1/0x00000002
 
Modules linked in:
 
Call Trace:
 
[<a800000020010c90>] dump_stack+0x8/0x48
 
[<a8000000200119c0>] schedule+0x510/0x9f0
 
[<a800000020012268>] schedule_timeout+0x110/0x170
 
[<a8000000200113ec>] wait_for_common+0x164/0x190
 
[<a80000002005ebd4>] call_usermodehelper_exec+0x94/0xc8
 
[<a8000000201e2470>] kobject_uevent_env+0x4f8/0x530
 
[<a800000020243d4c>] device_add+0x5e4/0x740
 
[<a800000020243fd0>] device_create_vargs+0x100/0x118
 
[<a80000002024400c>] device_create+0x24/0x30
 
[<a800000020224758>] misc_register+0x160/0x268
 
[<a800000020236ecc>] ioc3led_probe+0x6c/0x1e0
 
[<a800000020318934>] ioc3_probe+0x5ac/0xdc0
 
[<a8000000201f9924>] local_pci_probe+0x1c/0x28
 
[<a8000000201f9c4c>] pci_device_probe+0x84/0xb0
 
[<a800000020246ba4>] driver_probe_device+0xdc/0x278
 
[<a800000020246de8>] __driver_attach+0xa8/0xb0
 
[<a8000000202460c0>] bus_for_each_dev+0x60/0xc8
 
[<a800000020245708>] bus_add_driver+0x2a0/0x388
 
[<a80000002024708c>] driver_register+0x84/0x190
 
[<a8000000201fa1b8>] __pci_register_driver+0x60/0xe0
 
[<a800000020014ac0>] __kprobes_text_end+0x48/0x1e8
 
[<a8000000204d346c>] kernel_init+0x298/0x348
 
[<a800000020017770>] kernel_thread_helper+0x10/0x18
 
 
BUG: scheduling while atomic: swapper/1/0x00000002
 
Modules linked in:
 
Call Trace:
 
[<a800000020010c90>] dump_stack+0x8/0x48
 
[<a8000000200119c0>] schedule+0x510/0x9f0
 
[<a800000020012268>] schedule_timeout+0x110/0x170
 
[<a8000000200113ec>] wait_for_common+0x164/0x190
 
[<a80000002005ebd4>] call_usermodehelper_exec+0x94/0xc8
 
[<a8000000201e2470>] kobject_uevent_env+0x4f8/0x530
 
[<a800000020243d4c>] device_add+0x5e4/0x740
 
[<a800000020243fd0>] device_create_vargs+0x100/0x118
 
[<a80000002024400c>] device_create+0x24/0x30
 
[<a800000020224758>] misc_register+0x160/0x268
 
[<a800000020237cac>] ioc3rtc_probe+0x74/0x260
 
[<a800000020318934>] ioc3_probe+0x5ac/0xdc0
 
[<a8000000201f9924>] local_pci_probe+0x1c/0x28
 
[<a8000000201f9c4c>] pci_device_probe+0x84/0xb0
 
[<a800000020246ba4>] driver_probe_device+0xdc/0x278
 
[<a800000020246de8>] __driver_attach+0xa8/0xb0
 
[<a8000000202460c0>] bus_for_each_dev+0x60/0xc8
 
[<a800000020245708>] bus_add_driver+0x2a0/0x388
 
[<a80000002024708c>] driver_register+0x84/0x190
 
[<a8000000201fa1b8>] __pci_register_driver+0x60/0xe0
 
[<a800000020014ac0>] __kprobes_text_end+0x48/0x1e8
 
[<a8000000204d346c>] kernel_init+0x298/0x348
 
[<a800000020017770>] kernel_thread_helper+0x10/0x18
 
 
BUG: scheduling while atomic: swapper/1/0x00000002
 
Modules linked in:
 
Call Trace:
 
[<a800000020010c90>] dump_stack+0x8/0x48
 
[<a8000000200119c0>] schedule+0x510/0x9f0
 
[<a800000020012268>] schedule_timeout+0x110/0x170
 
[<a8000000200113ec>] wait_for_common+0x164/0x190
 
[<a80000002005ebd4>] call_usermodehelper_exec+0x94/0xc8
 
[<a8000000201e2470>] kobject_uevent_env+0x4f8/0x530
 
[<a80000002024361c>] device_del+0x164/0x1c0
 
[<a80000002024368c>] device_unregister+0x14/0x28
 
[<a8000000202436ec>] device_destroy+0x4c/0x60
 
[<a80000002023849c>] uart_remove_one_port+0xbc/0x150
 
[<a800000020240344>] serial8250_register_port+0x12c/0x360
 
[<a800000020241f88>] ioc3uart_probe+0x178/0x1f8
 
[<a800000020318934>] ioc3_probe+0x5ac/0xdc0
 
[<a8000000201f9924>] local_pci_probe+0x1c/0x28
 
[<a8000000201f9c4c>] pci_device_probe+0x84/0xb0
 
[<a800000020246ba4>] driver_probe_device+0xdc/0x278
 
[<a800000020246de8>] __driver_attach+0xa8/0xb0
 
[<a8000000202460c0>] bus_for_each_dev+0x60/0xc8
 
[<a800000020245708>] bus_add_driver+0x2a0/0x388
 
[<a80000002024708c>] driver_register+0x84/0x190
 
[<a8000000201fa1b8>] __pci_register_driver+0x60/0xe0
 
[<a800000020014ac0>] __kprobes_text_end+0x48/0x1e8
 
[<a8000000204d346c>] kernel_init+0x298/0x348
 
[<a800000020017770>] kernel_thread_helper+0x10/0x18
 
 
0000:00:02.0: ttyS0 at IOC3 0xf041120178 (irq = 64) is a 16550A
 
console [ttyS0] enabled
 
BUG: scheduling while atomic: swapper/1/0x00000002
 
Modules linked in:
 
Call Trace:
 
[<a800000020010c90>] dump_stack+0x8/0x48
 
[<a8000000200119c0>] schedule+0x510/0x9f0
 
[<a800000020012268>] schedule_timeout+0x110/0x170
 
[<a8000000200113ec>] wait_for_common+0x164/0x190
 
[<a80000002005ebd4>] call_usermodehelper_exec+0x94/0xc8
 
[<a8000000201e2470>] kobject_uevent_env+0x4f8/0x530
 
[<a800000020243d4c>] device_add+0x5e4/0x740
 
[<a800000020243fd0>] device_create_vargs+0x100/0x118
 
[<a80000002024400c>] device_create+0x24/0x30
 
[<a800000020218304>] tty_register_device+0x114/0x170
 
[<a800000020238e34>] uart_add_one_port+0x1e4/0x4e0
 
[<a8000000202403e8>] serial8250_register_port+0x1d0/0x360
 
[<a800000020241f88>] ioc3uart_probe+0x178/0x1f8
 
[<a800000020318934>] ioc3_probe+0x5ac/0xdc0
 
[<a8000000201f9924>] local_pci_probe+0x1c/0x28
 
[<a8000000201f9c4c>] pci_device_probe+0x84/0xb0
 
[<a800000020246ba4>] driver_probe_device+0xdc/0x278
 
[<a800000020246de8>] __driver_attach+0xa8/0xb0
 
[<a8000000202460c0>] bus_for_each_dev+0x60/0xc8
 
[<a800000020245708>] bus_add_driver+0x2a0/0x388
 
[<a80000002024708c>] driver_register+0x84/0x190
 
[<a8000000201fa1b8>] __pci_register_driver+0x60/0xe0
 
[<a800000020014ac0>] __kprobes_text_end+0x48/0x1e8
 
[<a8000000204d346c>] kernel_init+0x298/0x348
 
[<a800000020017770>] kernel_thread_helper+0x10/0x18
 
 
BUG: scheduling while atomic: swapper/1/0x00000002
 
Modules linked in:
 
Call Trace:
 
[<a800000020010c90>] dump_stack+0x8/0x48
 
[<a8000000200119c0>] schedule+0x510/0x9f0
 
[<a800000020012268>] schedule_timeout+0x110/0x170
 
[<a8000000200113ec>] wait_for_common+0x164/0x190
 
[<a80000002005ebd4>] call_usermodehelper_exec+0x94/0xc8
 
[<a8000000201e2470>] kobject_uevent_env+0x4f8/0x530
 
[<a80000002024361c>] device_del+0x164/0x1c0
 
[<a80000002024368c>] device_unregister+0x14/0x28
 
[<a8000000202436ec>] device_destroy+0x4c/0x60
 
[<a80000002023849c>] uart_remove_one_port+0xbc/0x150
 
[<a800000020240344>] serial8250_register_port+0x12c/0x360
 
[<a800000020241fa8>] ioc3uart_probe+0x198/0x1f8
 
[<a800000020318934>] ioc3_probe+0x5ac/0xdc0
 
[<a8000000201f9924>] local_pci_probe+0x1c/0x28
 
[<a8000000201f9c4c>] pci_device_probe+0x84/0xb0
 
[<a800000020246ba4>] driver_probe_device+0xdc/0x278
 
[<a800000020246de8>] __driver_attach+0xa8/0xb0
 
[<a8000000202460c0>] bus_for_each_dev+0x60/0xc8
 
[<a800000020245708>] bus_add_driver+0x2a0/0x388
 
[<a80000002024708c>] driver_register+0x84/0x190
 
[<a8000000201fa1b8>] __pci_register_driver+0x60/0xe0
 
[<a800000020014ac0>] __kprobes_text_end+0x48/0x1e8
 
[<a8000000204d346c>] kernel_init+0x298/0x348
 
[<a800000020017770>] kernel_thread_helper+0x10/0x18
 
 
0000:00:02.0: ttyS1 at IOC3 0xf041120170 (irq = 64) is a 16550A
 
BUG: scheduling while atomic: swapper/1/0x00000002
 
Modules linked in:
 
Call Trace:
 
[<a800000020010c90>] dump_stack+0x8/0x48
 
[<a8000000200119c0>] schedule+0x510/0x9f0
 
[<a800000020012268>] schedule_timeout+0x110/0x170
 
[<a8000000200113ec>] wait_for_common+0x164/0x190
 
[<a80000002005ebd4>] call_usermodehelper_exec+0x94/0xc8
 
[<a8000000201e2470>] kobject_uevent_env+0x4f8/0x530
 
[<a800000020243d4c>] device_add+0x5e4/0x740
 
[<a800000020243fd0>] device_create_vargs+0x100/0x118
 
[<a80000002024400c>] device_create+0x24/0x30
 
[<a800000020218304>] tty_register_device+0x114/0x170
 
[<a800000020238e34>] uart_add_one_port+0x1e4/0x4e0
 
[<a8000000202403e8>] serial8250_register_port+0x1d0/0x360
 
[<a800000020241fa8>] ioc3uart_probe+0x198/0x1f8
 
[<a800000020318934>] ioc3_probe+0x5ac/0xdc0
 
[<a8000000201f9924>] local_pci_probe+0x1c/0x28
 
[<a8000000201f9c4c>] pci_device_probe+0x84/0xb0
 
[<a800000020246ba4>] driver_probe_device+0xdc/0x278
 
[<a800000020246de8>] __driver_attach+0xa8/0xb0
 
[<a8000000202460c0>] bus_for_each_dev+0x60/0xc8
 
[<a800000020245708>] bus_add_driver+0x2a0/0x388
 
[<a80000002024708c>] driver_register+0x84/0x190
 
[<a8000000201fa1b8>] __pci_register_driver+0x60/0xe0
 
[<a800000020014ac0>] __kprobes_text_end+0x48/0x1e8
 
[<a8000000204d346c>] kernel_init+0x298/0x348
 
[<a800000020017770>] kernel_thread_helper+0x10/0x18
 
 
Ethernet address is 08:00:69:13:a8:d1.
 
eth0 (SGI IOC3): not using net_device_ops yet
 
BUG: scheduling while atomic: swapper/1/0x00000002
 
Modules linked in:
 
Call Trace:
 
[<a800000020010c90>] dump_stack+0x8/0x48
 
[<a8000000200119c0>] schedule+0x510/0x9f0
 
[<a800000020012268>] schedule_timeout+0x110/0x170
 
[<a8000000200113ec>] wait_for_common+0x164/0x190
 
[<a80000002005ebd4>] call_usermodehelper_exec+0x94/0xc8
 
[<a8000000201e2470>] kobject_uevent_env+0x4f8/0x530
 
[<a800000020243d4c>] device_add+0x5e4/0x740
 
[<a8000000203327a8>] register_netdevice+0x400/0x608
 
[<a8000000203329f4>] register_netdev+0x44/0x68
 
[<a80000002000ecb0>] ioc3eth_probe+0x358/0x518
 
[<a800000020318934>] ioc3_probe+0x5ac/0xdc0
 
[<a8000000201f9924>] local_pci_probe+0x1c/0x28
 
[<a8000000201f9c4c>] pci_device_probe+0x84/0xb0
 
[<a800000020246ba4>] driver_probe_device+0xdc/0x278
 
[<a800000020246de8>] __driver_attach+0xa8/0xb0
 
[<a8000000202460c0>] bus_for_each_dev+0x60/0xc8
 
[<a800000020245708>] bus_add_driver+0x2a0/0x388
 
[<a80000002024708c>] driver_register+0x84/0x190
 
[<a8000000201fa1b8>] __pci_register_driver+0x60/0xe0
 
[<a800000020014ac0>] __kprobes_text_end+0x48/0x1e8
 
[<a8000000204d346c>] kernel_init+0x298/0x348
 
[<a800000020017770>] kernel_thread_helper+0x10/0x18
 
 
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
 
atkbd.c: keyboard reset failed on ioc3/serio0kbd
 
atkbd.c: keyboard reset failed on ioc3/serio0aux
 
TCP cubic registered
 
NET: Registered protocol family 17
 
Freeing prom memory: 1024k freed
 
Freeing unused kernel memory: 8360k freed
 
 
bash
 
#
 
</pre>
 
  
 
=== 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 519: 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 791: 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 808: 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://arnaud.giersch.free.fr/parport_ip32.html SGI O2 parport]
 +
* [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