diff options
author | jhb <jhb@FreeBSD.org> | 2003-06-09 18:08:46 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2003-06-09 18:08:46 +0000 |
commit | ccd243b6dab1fb27d3bd852e7faa849b0101a219 (patch) | |
tree | 655e863723f49feabd7d6981c205c45ebfe8638c /sys/dev/pci | |
parent | 54803093749811fd48986e5189e4c2c289b9565f (diff) | |
download | FreeBSD-src-ccd243b6dab1fb27d3bd852e7faa849b0101a219.zip FreeBSD-src-ccd243b6dab1fb27d3bd852e7faa849b0101a219.tar.gz |
When we re-route a PCI interrupt, write the new IRQ value into the intline
register.
Reviewed by: imp
Diffstat (limited to 'sys/dev/pci')
-rw-r--r-- | sys/dev/pci/pci.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c index cf316cc..f50ab27 100644 --- a/sys/dev/pci/pci.c +++ b/sys/dev/pci/pci.c @@ -806,9 +806,10 @@ pci_add_resources(device_t pcib, device_t dev) * have. */ irq = PCIB_ROUTE_INTERRUPT(pcib, dev, cfg->intpin); - if (PCI_INTERRUPT_VALID(irq)) + if (PCI_INTERRUPT_VALID(irq)) { + pci_write_config(dev, PCIR_INTLINE, irq, 1); cfg->intline = irq; - else + } else #endif irq = cfg->intline; resource_list_add(rl, SYS_RES_IRQ, 0, irq, irq, 1); |