Flameman/sgi

From eLinux.org
< Flameman
Revision as of 06:55, 26 July 2013 by Legacy (Talk | contribs) (interesting url)

Jump to: navigation, search

For more interesting projects done by Flameman, 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

add on board support

board over pci kernel support
_ dunno


about sgi o2

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

kernel status

kernel note
2.6.17 pretty stable, used in production
2.6.29 bugs in the scheduler, not booting on 2xR12K


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

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 
#

last working kernel 2.6.17-r14

kernel 2.6.17-r14, we are stopped at the year 2006, running a 2008 stage3 rootfs, and this is the kernel support 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


* Things to keep in mind when building a 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.


* Applying patch-2.6.29.1.patch (-p1) ...                                                                                                                           [ ok ]
* 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

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.

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


XFS support by SGI

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