Alphastation 200 (and others) PCI-PCI bridge fix

Bernd Walter ticso at cicely12.cicely.de
Mon Jun 28 05:49:27 PDT 2004


On Sun, Jun 27, 2004 at 09:36:14PM +0200, Michael Kukat wrote:
> Hello,
> 
> okay, for my problems with quadport NICs, i stick in the following situation
> currently:
> 
> - fixed intpin/irq mapping stuff in dec_2100_a50.c, seems to work okay with
>   my ANA-6944, but this card just maps all 4 NICs to INTA of the first chip,
>   so this doesn't prove the functionality of this fix.
> 
> - ANA-62044 really wants 4 INT lines, but due to the architecture of the PCI
>   bus in the AlphaStation 200, it just gets 2 of them. IRQs are mapped to the
>   ISA IRQs, which are not shareable. But 2 of the NIC chips on the card need to
>   share interrupts when plugged into the AS200 (INTD is INTA on the connetor,
>   and INTC is the same as onboard LAN).

The IRQs on the AS200 should be shareable as on every PCI architecture.

> Another problem in my diagnosis of the problems i have with the ANA-62044:
> kernel doesn't panic when this card is in the AS200. So the problem with
> crashing with access faults just exists on the PC164. Maybe i should try a
> 32bit slot.

The pci slots on a PC164 are all on the same bus, so I doubt that it'll
make a big difference.

> I attached my fix for this interrupt problem, maybe someone can use it. And if
> someone with more clue about PCI has a look in this, maybe it's useable for the
> repository. Patch applies to 4.9 sources.

We already have generic code to do interrupt routing over bridges.
See Rev 1.14 in dec_axppci_33.c for a example on how to use it.
It's quite simple to do - getting someone with hardware to test is the
biggest challenge.
I can create you a patch if you need.

> Known problems: this fix just handles bridges on pci0. It doesn't handle
> bridges on bridged buses :)

The generic code used by axppci33 does :)

-- 
B.Walter                   BWCT                http://www.bwct.de
bernd at bwct.de                                  info at bwct.de



More information about the freebsd-alpha mailing list