diff options
author | mav <mav@FreeBSD.org> | 2010-06-14 07:10:37 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2010-06-14 07:10:37 +0000 |
commit | ea954fa396b041bd7926fa93cc6d5dc99f8e181a (patch) | |
tree | 423ab29863b618eb95213b9452c47472bc992ceb /sys/kern/bus_if.m | |
parent | e63e5eff064b854e57039ef919e33a4c0813018d (diff) | |
download | FreeBSD-src-ea954fa396b041bd7926fa93cc6d5dc99f8e181a.zip FreeBSD-src-ea954fa396b041bd7926fa93cc6d5dc99f8e181a.tar.gz |
Virtualize pci_remap_msi_irq() call from general MSI code. It allows MSI
(FSB interrupts) to be used by non-PCI devices, such as HPET.
Diffstat (limited to 'sys/kern/bus_if.m')
-rw-r--r-- | sys/kern/bus_if.m | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/sys/kern/bus_if.m b/sys/kern/bus_if.m index c0924c8..326156e 100644 --- a/sys/kern/bus_if.m +++ b/sys/kern/bus_if.m @@ -47,6 +47,15 @@ CODE { { return (0); } + + static int + null_remap_intr(device_t bus, device_t dev, u_int irq) + { + + if (dev != NULL) + return (BUS_REMAP_INTR(dev, NULL, irq)); + return (ENXIO); + } }; /** @@ -600,3 +609,16 @@ METHOD void hint_device_unit { METHOD void new_pass { device_t _dev; } DEFAULT bus_generic_new_pass; + +/** + * @brief Notify a bus that specified child's IRQ should be remapped. + * + * @param _dev the bus device + * @param _child the child device + * @param _irq the irq number + */ +METHOD int remap_intr { + device_t _dev; + device_t _child; + u_int _irq; +} DEFAULT null_remap_intr; |