| /linux-6.15/drivers/iommu/iommufd/ |
| H A D | driver.c | 166 struct iommufd_sw_msi_map *msi_map) in iommufd_sw_msi_install() argument 172 iova = msi_map->sw_msi_start + msi_map->pgoff * PAGE_SIZE; in iommufd_sw_msi_install() 173 if (!test_bit(msi_map->id, hwpt_paging->present_sw_msi.bitmap)) { in iommufd_sw_msi_install() 177 msi_map->msi_addr, PAGE_SIZE, in iommufd_sw_msi_install() 182 __set_bit(msi_map->id, hwpt_paging->present_sw_msi.bitmap); in iommufd_sw_msi_install() 201 struct iommufd_sw_msi_map *msi_map; in iommufd_sw_msi() local 231 msi_map = iommufd_sw_msi_get_map(handle->idev->ictx, in iommufd_sw_msi() 234 if (IS_ERR(msi_map)) in iommufd_sw_msi() 235 return PTR_ERR(msi_map); in iommufd_sw_msi() 237 rc = iommufd_sw_msi_install(ictx, hwpt_paging, msi_map); in iommufd_sw_msi() [all …]
|
| H A D | iommufd_private.h | 38 struct iommufd_sw_msi_map *msi_map);
|
| /linux-6.15/drivers/irqchip/ |
| H A D | irq-alpine-msi.c | 36 unsigned long *msi_map; member 65 first = bitmap_find_next_zero_area(priv->msi_map, priv->num_spis, 0, in alpine_msix_allocate_sgi() 72 bitmap_set(priv->msi_map, first, num_req); in alpine_msix_allocate_sgi() 86 bitmap_clear(priv->msi_map, first, num_req); in alpine_msix_free_sgi() 269 priv->msi_map = bitmap_zalloc(priv->num_spis, GFP_KERNEL); in alpine_msix_init() 270 if (!priv->msi_map) { in alpine_msix_init() 285 bitmap_free(priv->msi_map); in alpine_msix_init()
|
| H A D | irq-loongson-pch-msi.c | 28 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() 195 priv->msi_map = bitmap_zalloc(priv->num_irqs, GFP_KERNEL); in pch_msi_init() 196 if (!priv->msi_map) in pch_msi_init() 210 bitmap_free(priv->msi_map); in pch_msi_init()
|
| H A D | irq-sg2042-msi.c | 32 DECLARE_BITMAP(msi_map, SG2042_MAX_MSI_VECTOR); 41 first = bitmap_find_free_region(data->msi_map, data->num_irqs, in sg2042_msi_allocate_hwirq() 49 bitmap_release_region(data->msi_map, hwirq, get_count_order(num_req)); in sg2042_msi_free_hwirq()
|
| /linux-6.15/drivers/net/ethernet/intel/ice/ |
| H A D | ice_irq.h | 31 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 D | ice_irq.c | 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 D | ice_idc.c | 233 struct msi_map map = ice_alloc_irq(pf, true); in ice_alloc_rdma_qvector() 252 struct msi_map map; in ice_free_rdma_qvector()
|
| H A D | ice.h | 485 struct msi_map irq; 608 struct msi_map oicr_irq; /* Other interrupt cause MSIX vector */ 609 struct msi_map ll_ts_irq; /* LL_TS interrupt MSIX vector */
|
| H A D | ice_main.c | 3448 struct msi_map irq; in ice_req_irq_msix_misc()
|
| /linux-6.15/drivers/pci/msi/ |
| H A D | api.c | 149 struct msi_map pci_msix_alloc_irq_at(struct pci_dev *dev, unsigned int index, in pci_msix_alloc_irq_at() 152 struct msi_map map = { .index = -ENOTSUPP }; in pci_msix_alloc_irq_at() 172 void pci_msix_free_irq(struct pci_dev *dev, struct msi_map map) in pci_msix_free_irq()
|
| /linux-6.15/include/linux/ |
| H A D | msi_api.h | 46 struct msi_map { struct
|
| H A D | msi.h | 643 struct msi_map msi_domain_alloc_irq_at(struct device *dev, unsigned int domid, unsigned int index,
|
| H A D | pci.h | 1693 struct msi_map pci_msix_alloc_irq_at(struct pci_dev *dev, unsigned int index, 1695 void pci_msix_free_irq(struct pci_dev *pdev, struct msi_map map); 1736 static inline struct msi_map pci_msix_alloc_irq_at(struct pci_dev *dev, unsigned int index, in pci_msix_alloc_irq_at() 1739 struct msi_map map = { .index = -ENOSYS, }; in pci_msix_alloc_irq_at() 1744 static inline void pci_msix_free_irq(struct pci_dev *pdev, struct msi_map map) in pci_msix_free_irq()
|
| /linux-6.15/drivers/pci/controller/ |
| H A D | pcie-xilinx.c | 106 unsigned long msi_map[BITS_TO_LONGS(XILINX_NUM_MSI_IRQS)]; member 234 hwirq = bitmap_find_free_region(pcie->msi_map, XILINX_NUM_MSI_IRQS, order_base_2(nr_irqs)); in xilinx_msi_domain_alloc() 257 bitmap_release_region(pcie->msi_map, d->hwirq, order_base_2(nr_irqs)); in xilinx_msi_domain_free()
|
| H A D | pcie-iproc.c | 1350 const __be32 *msi_map = NULL; in iproc_pcie_msi_enable() local 1354 msi_map = of_get_property(pcie->dev->of_node, "msi-map", &len); in iproc_pcie_msi_enable() 1355 if (!msi_map) in iproc_pcie_msi_enable() 1358 phandle = be32_to_cpup(msi_map + 1); in iproc_pcie_msi_enable()
|
| /linux-6.15/drivers/vdpa/mlx5/net/ |
| H A D | mlx5_vnet.h | 32 struct msi_map map;
|
| H A D | mlx5_vnet.c | 99 struct msi_map map; 141 struct msi_map map;
|
| /linux-6.15/kernel/irq/ |
| H A D | msi.c | 1429 static struct msi_map __msi_domain_alloc_irq_at(struct device *dev, unsigned int domid, in __msi_domain_alloc_irq_at() 1436 struct msi_map map = { }; in __msi_domain_alloc_irq_at() 1499 struct msi_map msi_domain_alloc_irq_at(struct device *dev, unsigned int domid, unsigned int index, in msi_domain_alloc_irq_at() 1503 struct msi_map map; in msi_domain_alloc_irq_at() 1538 struct msi_map map = { }; in msi_device_domain_alloc_wired()
|
| /linux-6.15/drivers/vfio/pci/ |
| H A D | vfio_pci_intrs.c | 423 struct msi_map map; in vfio_msi_alloc_irq()
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | pci_irq.c | 36 struct msi_map map;
|
| /linux-6.15/drivers/net/ethernet/broadcom/bnxt/ |
| H A D | bnxt.c | 11071 struct msi_map map; in bnxt_change_msix()
|