freebsd-dev/sys/dev/pci
Andrew Gallatin d6a516cf80 finally fix intr routing on alphas such as the as500 after months of
breakage:

- call PCIB_ROUTE_INTERRUPT() regardless of how valid the intline looks.
  Some alphas leave garbage in the intline and leave the intr mapping
  to OS platform support routines that map slots/buses to intlines
- Down in the alpha pci code, first try platform.pci_intr_route() and
  if it doesn't exist or returns garbage, just read the intline out of
  config space.

tested on AS500 (garbage in intline) and UP1000 (PC-like, intline is valid)

Note that a nice little hack like the APIC_IO section of pci_cfgregread()
is not workable.  This is because the calling interface for
alpha_pci_route_interrupt() requires us to figure out the bus/slot/etc
from a device_t.  At pci_read_device() time, we don't have a device_t
for the bus/slot/func in question.
2001-05-27 22:22:03 +00:00
..
eisa_pci.c Next round of PCI subsystem updates: 2000-12-13 01:25:11 +00:00
fixup_pci.c Don't try to fix up the Orion here; the interface we use is wrong for the 2000-12-12 13:11:42 +00:00
ignore_pci.c Next phase in the PCI subsystem cleanup. 2000-12-08 22:11:23 +00:00
isa_pci.c - Don't return early from the PCI:EISA bridge attachment, or we will lose 2000-12-12 03:33:02 +00:00
pci_if.m Slightly reimplement some recently added helper functions as methods, so 2001-02-27 23:13:20 +00:00
pci_pci.c Next round of PCI subsystem updates: 2000-12-13 01:25:11 +00:00
pci_user.c Send the remains (such as I have located) of "block major numbers" to 2001-03-26 12:41:29 +00:00
pci.c finally fix intr routing on alphas such as the as500 after months of 2001-05-27 22:22:03 +00:00
pcib_if.m - Fix the device database parsing code so that it actually works. 2000-12-09 09:15:38 +00:00
pcireg.h Add PCIR_CAP_PTR as a define for the location of the capability 2000-12-20 14:36:52 +00:00
pcivar.h Slightly reimplement some recently added helper functions as methods, so 2001-02-27 23:13:20 +00:00