Home
last modified time | relevance | path

Searched refs:msi_map (Results 1 – 16 of 16) sorted by relevance

/linux/drivers/iommu/iommufd/
H A Ddriver.c219 struct iommufd_sw_msi_map *msi_map) in iommufd_sw_msi_install() argument
225 iova = msi_map->sw_msi_start + msi_map->pgoff * PAGE_SIZE; in iommufd_sw_msi_install()
226 if (!test_bit(msi_map->id, hwpt_paging->present_sw_msi.bitmap)) { in iommufd_sw_msi_install()
230 msi_map->msi_addr, PAGE_SIZE, in iommufd_sw_msi_install()
235 __set_bit(msi_map->id, hwpt_paging->present_sw_msi.bitmap); in iommufd_sw_msi_install()
254 struct iommufd_sw_msi_map *msi_map; in iommufd_sw_msi() local
284 msi_map = iommufd_sw_msi_get_map(handle->idev->ictx, in iommufd_sw_msi()
287 if (IS_ERR(msi_map)) in iommufd_sw_msi()
288 return PTR_ERR(msi_map); in iommufd_sw_msi()
[all...]
H A Diommufd_private.h39 struct iommufd_sw_msi_map *msi_map);
/linux/drivers/irqchip/
H A Dirq-loongson-pch-msi.c28 unsigned long *msi_map; member
39 first = bitmap_find_free_region(priv->msi_map, priv->num_irqs, in pch_msi_allocate_hwirq()
57 bitmap_release_region(priv->msi_map, first, get_count_order(num_req)); in pch_msi_free_hwirq()
190 priv->msi_map = bitmap_zalloc(priv->num_irqs, GFP_KERNEL); in pch_msi_init()
191 if (!priv->msi_map) in pch_msi_init()
205 bitmap_free(priv->msi_map); in pch_msi_init()
H A Dirq-sg2042-msi.c33 * @msi_map: mapping for allocated MSI vectors.
34 * @msi_map_lock: Lock for msi_map
45 unsigned long *msi_map; member
56 first = bitmap_find_free_region(data->msi_map, data->num_irqs, in sg204x_msi_allocate_hwirq()
64 bitmap_release_region(data->msi_map, hwirq, get_count_order(num_req)); in sg204x_msi_free_hwirq()
296 data->msi_map = devm_bitmap_zalloc(&pdev->dev, data->num_irqs, GFP_KERNEL); in sg2042_msi_probe()
297 if (!data->msi_map) { in sg2042_msi_probe()
/linux/drivers/net/ethernet/intel/ice/
H A Dice_irq.h31 struct msi_map ice_alloc_irq(struct ice_pf *pf, bool dyn_only);
32 void ice_free_irq(struct ice_pf *pf, struct msi_map map);
H A Dice_irq.c166 * return struct msi_map with interrupt details and track
182 struct msi_map ice_alloc_irq(struct ice_pf *pf, bool dyn_allowed) in ice_alloc_irq()
184 struct msi_map map = { .index = -ENOENT }; in ice_alloc_irq()
218 void ice_free_irq(struct ice_pf *pf, struct msi_map map) in ice_free_irq()
H A Dice_idc.c235 struct msi_map map; in ice_alloc_rdma_qvector()
261 struct msi_map map; in ice_free_rdma_qvector()
H A Dice.h483 struct msi_map irq;
605 struct msi_map oicr_irq; /* Other interrupt cause MSIX vector */
606 struct msi_map ll_ts_irq; /* LL_TS interrupt MSIX vector */
H A Dice_main.c3471 struct msi_map irq; in ice_req_irq_msix_misc()
/linux/drivers/pci/msi/
H A Dapi.c140 * Return: A struct msi_map
142 * On success msi_map::index contains the allocated index (>= 0) and
143 * msi_map::virq contains the allocated Linux interrupt number (> 0).
145 * On fail msi_map::index contains the error code and msi_map::virq
148 struct msi_map pci_msix_alloc_irq_at(struct pci_dev *dev, unsigned int index, in pci_msix_alloc_irq_at()
151 struct msi_map map = { .index = -ENOTSUPP }; in pci_msix_alloc_irq_at()
167 * @map: A struct msi_map describing the interrupt to free
171 void pci_msix_free_irq(struct pci_dev *dev, struct msi_map map) in pci_msix_free_irq()
/linux/include/linux/
H A Dmsi_api.h39 * msi_map - Mapping between MSI index and Linux interrupt number
46 struct msi_map { struct
47 indexmsi_map global() argument
48 virqmsi_map global() argument
/linux/drivers/pci/controller/
H A Dpcie-xilinx.c98 * @msi_map: Bitmap of allocated MSIs
107 unsigned long msi_map[BITS_TO_LONGS(XILINX_NUM_MSI_IRQS)]; member
230 hwirq = bitmap_find_free_region(pcie->msi_map, XILINX_NUM_MSI_IRQS, order_base_2(nr_irqs)); in xilinx_msi_domain_alloc()
253 bitmap_release_region(pcie->msi_map, d->hwirq, order_base_2(nr_irqs)); in xilinx_msi_domain_free()
/linux/kernel/irq/
H A Dmsi.c1477 static struct msi_map __msi_domain_alloc_irq_at(struct device *dev, unsigned int domid, in __msi_domain_alloc_irq_at()
1484 struct msi_map map = { }; in __msi_domain_alloc_irq_at()
1539 * Return: struct msi_map
1541 * On success msi_map::index contains the allocated index number and
1542 * msi_map::virq the corresponding Linux interrupt number
1544 * On failure msi_map::index contains the error code and msi_map::virq
1547 struct msi_map msi_domain_alloc_irq_at(struct device *dev, unsigned int domid, unsigned int index, in msi_domain_alloc_irq_at()
1582 struct msi_map map = { }; in msi_device_domain_alloc_wired()
/linux/drivers/net/ethernet/mellanox/mlx5/core/
H A Dpci_irq.c36 struct msi_map map;
/linux/drivers/net/ethernet/microsoft/mana/
H A Dgdma_main.c1746 struct msi_map irq_map; in mana_gd_setup_remaining_irqs()
/linux/drivers/net/ethernet/broadcom/bnxt/
H A Dbnxt.c11203 struct msi_map map; in bnxt_change_msix()