The included patch adds some very basic EISA support to the Indigo-2
(patch is against oss.sgi.com CVS from yesterday). It only supports
PIO mode at the moment, and enabling CONFIG_ISA crashes the
machine. Handle with care !
Anyway, I've been able to use an unmodified 3c509 driver (with a 3c579
card) on my 150MHz Indigo-2 for hours without problems :
lazy:/home/maz# dmesg|tail -4
eth1: 3c5x9 at 0x3000, BNC port, address 00 20 af eb 79 a3, IRQ 10.
eth1: Setting Rx mode to 1 addresses.
lazy:/home/maz# cat /proc/interrupts
10: 17556 IP22 EISA eth1
18: 0 MIPS local0 cascade
19: 0 MIPS local1 cascade
22: 0 MIPS Bus Error
23: 2534068 MIPS timer
25: 10615 IP22 local 0 SGI WD93
26: 7 IP22 local 0 SGI WD93
27: 32701 IP22 local 0 SGI Seeq8003
31: 0 IP22 local 0 mappable0 cascade
33: 0 IP22 local 1 Front Panel
43: 17556 IP22 local 2 IP22 EISA
44: 2 IP22 local 2 keyboard
45: 1402 IP22 local 2 Zilog8530
Summary of changes :
- Add 16 to all IRQ numbers, so we can insert EISA irq from 0 to 15
and keep existing drivers happy,
- Set io_port_base to 0x80000, which is where the EISA bus lives on
- Swap 32bits accesses to the IO space (16bits IO are handled just
fine... One more IP22 mystery),
- Add arch/mips/sgi-ip22/ip22-eisa.c, which implements the eisa
hw_interrupt_type, and programs the EIU in a mysterious way...
- Add CONFIG_IP22_EISA configuration option.
- Solve CONFIG_ISA crashes
- Add DMA
I'd be very happy if someone with EIU knowledge could enlight me with
details about the magic bits in ip22_eisa_init()... I'd also be glad to
receive any comment on this patch.
Description: Indigo-2 Eisa patch
Places change, faces change. Life is so very strange.