aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/bus_if.m
diff options
context:
space:
mode:
authorMichal Meloun <mmel@FreeBSD.org>2016-08-19 10:52:39 +0000
committerMichal Meloun <mmel@FreeBSD.org>2016-08-19 10:52:39 +0000
commit895c8b1c39fe4494c4529c4977f85024e7281126 (patch)
tree66c985bbcb51b8cf44d6b4fdcf5d80cb93f8a041 /sys/kern/bus_if.m
parentac14c068f90898c8769042413f6532298d503684 (diff)
downloadsrc-895c8b1c39fe4494c4529c4977f85024e7281126.tar.gz
src-895c8b1c39fe4494c4529c4977f85024e7281126.zip
INTRNG: Rework handling with resources. Partially revert r301453.
- Read interrupt properties at bus enumeration time and store it into global mapping table. - At bus_activate_resource() time, given mapping entry is resolved and connected to real interrupt source. A copy of mapping entry is attached to given resource. - At bus_setup_intr() time, mapping entry stored in resource is used for delivery of requested interrupt configuration. - For MSI/MSIX interrupts, mapping entry is created within pci_alloc_msi()/pci_alloc_msix() call. - For legacy PCI interrupts, mapping entry must be created within pcib_route_interrupt() by pcib driver itself. Reviewed by: nwhitehorn, andrew Differential Revision: https://reviews.freebsd.org/D7493
Notes
Notes: svn path=/head/; revision=304459
Diffstat (limited to 'sys/kern/bus_if.m')
-rw-r--r--sys/kern/bus_if.m29
1 files changed, 0 insertions, 29 deletions
diff --git a/sys/kern/bus_if.m b/sys/kern/bus_if.m
index d5a0c45db75a..2b754387136f 100644
--- a/sys/kern/bus_if.m
+++ b/sys/kern/bus_if.m
@@ -418,35 +418,6 @@ METHOD int release_resource {
};
/**
- * @brief Map an interrupt
- *
- * This method is used to get an interrupt mapping data according to provided
- * hints. The hints could be modified afterwards, but only if mapping data was
- * allocated. This method is intended to be called before BUS_ALLOC_RESOURCE().
- *
- * @param _dev the parent device of @p _child
- * @param _child the device which is requesting an allocation
- * @param _rid a pointer to the resource identifier
- * @param _start a pointer to the hint at the start of the resource
- * range - pass @c 0 for any start address
- * @param _end a pointer to the hint at the end of the resource
- * range - pass @c ~0 for any end address
- * @param _count a pointer to the hint at the size of resource
- * range required - pass @c 1 for any size
- * @param _imd a pointer to the interrupt mapping data which was
- * allocated
- */
-METHOD int map_intr {
- device_t _dev;
- device_t _child;
- int *_rid;
- rman_res_t *_start;
- rman_res_t *_end;
- rman_res_t *_count;
- struct intr_map_data **_imd;
-} DEFAULT bus_generic_map_intr;
-
-/**
* @brief Install an interrupt handler
*
* This method is used to associate an interrupt handler function with