diff options
author | gallatin <gallatin@FreeBSD.org> | 2001-06-10 19:18:51 +0000 |
---|---|---|
committer | gallatin <gallatin@FreeBSD.org> | 2001-06-10 19:18:51 +0000 |
commit | 7509c7599177c11bc0c8d13411caa1e0db96f8dc (patch) | |
tree | 0a3771ee04d83d18e0da280cfe5aa48c0c000b81 /sys | |
parent | b70710603ed302cc148f41752d65aada9acbb8ab (diff) | |
download | FreeBSD-src-7509c7599177c11bc0c8d13411caa1e0db96f8dc.zip FreeBSD-src-7509c7599177c11bc0c8d13411caa1e0db96f8dc.tar.gz |
Supply the intpin to the platform.pci_intr_map() function. It turns
out nearly every platform but the one I tested on requires the intpin
to swizzle out the correct intline.
tested by: Martijn Pronk <mpkisbkl@xs4all.nl> (lca_pci)
Diffstat (limited to 'sys')
-rw-r--r-- | sys/alpha/pci/apecs_pci.c | 2 | ||||
-rw-r--r-- | sys/alpha/pci/cia_pci.c | 2 | ||||
-rw-r--r-- | sys/alpha/pci/lca_pci.c | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/sys/alpha/pci/apecs_pci.c b/sys/alpha/pci/apecs_pci.c index b3c428f..fffb759 100644 --- a/sys/alpha/pci/apecs_pci.c +++ b/sys/alpha/pci/apecs_pci.c @@ -176,6 +176,8 @@ apecs_pcib_read_config(device_t dev, u_int b, u_int s, u_int f, cfg.slot = s; cfg.func = f; cfg.intline = 255; + cfg.intpin = + apecs_pcib_read_config(dev, b, s, f, PCIR_INTPIN, 1); platform.pci_intr_map((void *)&cfg); if (cfg.intline != 255) return cfg.intline; diff --git a/sys/alpha/pci/cia_pci.c b/sys/alpha/pci/cia_pci.c index 499ce88..9fafbf4 100644 --- a/sys/alpha/pci/cia_pci.c +++ b/sys/alpha/pci/cia_pci.c @@ -384,6 +384,8 @@ cia_pcib_read_config(device_t dev, int b, int s, int f, cfg.slot = s; cfg.func = f; cfg.intline = 255; + cfg.intpin = + cia_pcib_read_config(dev, b, s, f, PCIR_INTPIN, 1); platform.pci_intr_map((void *)&cfg); if (cfg.intline != 255) return cfg.intline; diff --git a/sys/alpha/pci/lca_pci.c b/sys/alpha/pci/lca_pci.c index a0c383f..02f186e 100644 --- a/sys/alpha/pci/lca_pci.c +++ b/sys/alpha/pci/lca_pci.c @@ -169,6 +169,8 @@ lca_pcib_read_config(device_t dev, u_int b, u_int s, u_int f, cfg.slot = s; cfg.func = f; cfg.intline = 255; + cfg.intpin = + lca_pcib_read_config(dev, b, s, f, PCIR_INTPIN, 1); platform.pci_intr_map((void *)&cfg); if (cfg.intline != 255) return cfg.intline; |