msi_data 47 arch/powerpc/platforms/4xx/msi.c struct ppc4xx_msi *msi_data) msi_data 51 arch/powerpc/platforms/4xx/msi.c err = msi_bitmap_alloc(&msi_data->bitmap, msi_irqs, msi_data 56 arch/powerpc/platforms/4xx/msi.c err = msi_bitmap_reserve_dt_hwirqs(&msi_data->bitmap); msi_data 58 arch/powerpc/platforms/4xx/msi.c msi_bitmap_free(&msi_data->bitmap); msi_data 71 arch/powerpc/platforms/4xx/msi.c struct ppc4xx_msi *msi_data = &ppc4xx_msi; msi_data 78 arch/powerpc/platforms/4xx/msi.c msi_data->msi_virqs = kmalloc_array(msi_irqs, sizeof(int), GFP_KERNEL); msi_data 79 arch/powerpc/platforms/4xx/msi.c if (!msi_data->msi_virqs) msi_data 83 arch/powerpc/platforms/4xx/msi.c int_no = msi_bitmap_alloc_hwirqs(&msi_data->bitmap, 1); msi_data 90 arch/powerpc/platforms/4xx/msi.c virq = irq_of_parse_and_map(msi_data->msi_dev, int_no); msi_data 93 arch/powerpc/platforms/4xx/msi.c msi_bitmap_free_hwirqs(&msi_data->bitmap, int_no, 1); msi_data 99 arch/powerpc/platforms/4xx/msi.c msg.address_hi = msi_data->msi_addr_hi; msi_data 100 arch/powerpc/platforms/4xx/msi.c msg.address_lo = msi_data->msi_addr_lo; msi_data 112 arch/powerpc/platforms/4xx/msi.c struct ppc4xx_msi *msi_data = &ppc4xx_msi; msi_data 123 arch/powerpc/platforms/4xx/msi.c msi_bitmap_free_hwirqs(&msi_data->bitmap, hwirq, 1); msi_data 130 arch/powerpc/platforms/4xx/msi.c const u32 *msi_data; msi_data 141 arch/powerpc/platforms/4xx/msi.c msi_data = of_get_property(dev->dev.of_node, "msi-data", NULL); msi_data 142 arch/powerpc/platforms/4xx/msi.c if (!msi_data) msi_data 180 arch/powerpc/platforms/4xx/msi.c out_be32(msi->msi_regs + PEIH_MSIED, *msi_data); msi_data 47 arch/powerpc/sysdev/fsl_msi.c struct fsl_msi *msi_data; msi_data 67 arch/powerpc/sysdev/fsl_msi.c struct fsl_msi *msi_data = irqd->domain->host_data; msi_data 71 arch/powerpc/sysdev/fsl_msi.c srs = (hwirq >> msi_data->srs_shift) & MSI_SRS_MASK; msi_data 72 arch/powerpc/sysdev/fsl_msi.c cascade_virq = msi_data->cascade_array[srs]->virq; msi_data 88 arch/powerpc/sysdev/fsl_msi.c struct fsl_msi *msi_data = h->host_data; msi_data 93 arch/powerpc/sysdev/fsl_msi.c irq_set_chip_data(virq, msi_data); msi_data 103 arch/powerpc/sysdev/fsl_msi.c static int fsl_msi_init_allocator(struct fsl_msi *msi_data) msi_data 107 arch/powerpc/sysdev/fsl_msi.c rc = msi_bitmap_alloc(&msi_data->bitmap, NR_MSI_IRQS_MAX, msi_data 108 arch/powerpc/sysdev/fsl_msi.c irq_domain_get_of_node(msi_data->irqhost)); msi_data 117 arch/powerpc/sysdev/fsl_msi.c msi_bitmap_reserve_hwirq(&msi_data->bitmap, hwirq); msi_data 125 arch/powerpc/sysdev/fsl_msi.c struct fsl_msi *msi_data; msi_data 132 arch/powerpc/sysdev/fsl_msi.c msi_data = irq_get_chip_data(entry->irq); msi_data 135 arch/powerpc/sysdev/fsl_msi.c msi_bitmap_free_hwirqs(&msi_data->bitmap, hwirq, 1); msi_data 145 arch/powerpc/sysdev/fsl_msi.c struct fsl_msi *msi_data = fsl_msi_data; msi_data 156 arch/powerpc/sysdev/fsl_msi.c address = fsl_pci_immrbar_base(hose) + msi_data->msiir_offset; msi_data 168 arch/powerpc/sysdev/fsl_msi.c if (msi_data->feature & MSI_HW_ERRATA_ENDIAN) msi_data 174 arch/powerpc/sysdev/fsl_msi.c (hwirq >> msi_data->srs_shift) & MSI_SRS_MASK, msi_data 175 arch/powerpc/sysdev/fsl_msi.c (hwirq >> msi_data->ibs_shift) & MSI_IBS_MASK); msi_data 187 arch/powerpc/sysdev/fsl_msi.c struct fsl_msi *msi_data; msi_data 195 arch/powerpc/sysdev/fsl_msi.c list_for_each_entry(msi_data, &msi_head, list) msi_data 196 arch/powerpc/sysdev/fsl_msi.c if (msi_data->feature & MSI_HW_ERRATA_ENDIAN) msi_data 223 arch/powerpc/sysdev/fsl_msi.c list_for_each_entry(msi_data, &msi_head, list) { msi_data 232 arch/powerpc/sysdev/fsl_msi.c if (phandle && (phandle != msi_data->phandle)) msi_data 235 arch/powerpc/sysdev/fsl_msi.c hwirq = msi_bitmap_alloc_hwirqs(&msi_data->bitmap, 1); msi_data 246 arch/powerpc/sysdev/fsl_msi.c virq = irq_create_mapping(msi_data->irqhost, hwirq); msi_data 250 arch/powerpc/sysdev/fsl_msi.c msi_bitmap_free_hwirqs(&msi_data->bitmap, hwirq, 1); msi_data 257 arch/powerpc/sysdev/fsl_msi.c fsl_compose_msi_msg(pdev, hwirq, &msg, msi_data); msi_data 270 arch/powerpc/sysdev/fsl_msi.c struct fsl_msi *msi_data; msi_data 278 arch/powerpc/sysdev/fsl_msi.c msi_data = cascade_data->msi_data; msi_data 285 arch/powerpc/sysdev/fsl_msi.c switch (msi_data->feature & FSL_PIC_IP_MASK) { msi_data 287 arch/powerpc/sysdev/fsl_msi.c msir_value = fsl_msi_read(msi_data->msi_regs, msi_data 291 arch/powerpc/sysdev/fsl_msi.c msir_value = fsl_msi_read(msi_data->msi_regs, msir_index * 0x4); msi_data 310 arch/powerpc/sysdev/fsl_msi.c cascade_irq = irq_linear_revmap(msi_data->irqhost, msi_data 311 arch/powerpc/sysdev/fsl_msi.c msi_hwirq(msi_data, msir_index, msi_data 375 arch/powerpc/sysdev/fsl_msi.c cascade_data->msi_data = msi; msi_data 956 arch/sparc/kernel/pci_sun4v.c u64 msi_data; msi_data 998 arch/sparc/kernel/pci_sun4v.c *msi = ep->msi_data; msi_data 1001 arch/sparc/kernel/pci_sun4v.c ep->msi_data /* msi_num */, msi_data 139 drivers/gpu/drm/gma500/power.c pci_read_config_dword(pdev, PSB_PCIx_MSI_DATA_LOC, &dev_priv->msi_data); msi_data 169 drivers/gpu/drm/gma500/power.c pci_write_config_dword(pdev, PSB_PCIx_MSI_DATA_LOC, dev_priv->msi_data); msi_data 549 drivers/gpu/drm/gma500/psb_drv.h uint32_t msi_data; msi_data 1023 drivers/infiniband/hw/qib/qib.h u16 msi_data; msi_data 208 drivers/infiniband/hw/qib/qib_pcie.c &dd->msi_data); msi_data 340 drivers/infiniband/hw/qib/qib_pcie.c dd->msi_data); msi_data 36 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data; msi_data 87 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data = irq_data_get_irq_chip_data(data); msi_data 89 drivers/irqchip/irq-ls-scfg-msi.c msg->address_hi = upper_32_bits(msi_data->msiir_addr); msi_data 90 drivers/irqchip/irq-ls-scfg-msi.c msg->address_lo = lower_32_bits(msi_data->msiir_addr); msi_data 106 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data = irq_data_get_irq_chip_data(irq_data); msi_data 117 drivers/irqchip/irq-ls-scfg-msi.c if (cpu >= msi_data->msir_num) msi_data 120 drivers/irqchip/irq-ls-scfg-msi.c if (msi_data->msir[cpu].gic_irq <= 0) { msi_data 142 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data = domain->host_data; msi_data 147 drivers/irqchip/irq-ls-scfg-msi.c spin_lock(&msi_data->lock); msi_data 148 drivers/irqchip/irq-ls-scfg-msi.c pos = find_first_zero_bit(msi_data->used, msi_data->irqs_num); msi_data 149 drivers/irqchip/irq-ls-scfg-msi.c if (pos < msi_data->irqs_num) msi_data 150 drivers/irqchip/irq-ls-scfg-msi.c __set_bit(pos, msi_data->used); msi_data 153 drivers/irqchip/irq-ls-scfg-msi.c spin_unlock(&msi_data->lock); msi_data 158 drivers/irqchip/irq-ls-scfg-msi.c err = iommu_dma_prepare_msi(info->desc, msi_data->msiir_addr); msi_data 163 drivers/irqchip/irq-ls-scfg-msi.c &ls_scfg_msi_parent_chip, msi_data, msi_data 173 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data = irq_data_get_irq_chip_data(d); msi_data 177 drivers/irqchip/irq-ls-scfg-msi.c if (pos < 0 || pos >= msi_data->irqs_num) { msi_data 182 drivers/irqchip/irq-ls-scfg-msi.c spin_lock(&msi_data->lock); msi_data 183 drivers/irqchip/irq-ls-scfg-msi.c __clear_bit(pos, msi_data->used); msi_data 184 drivers/irqchip/irq-ls-scfg-msi.c spin_unlock(&msi_data->lock); msi_data 195 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data = msir->msi_data; msi_data 207 drivers/irqchip/irq-ls-scfg-msi.c hwirq = ((msir->bit_end - pos) << msi_data->cfg->ibs_shift) | msi_data 209 drivers/irqchip/irq-ls-scfg-msi.c virq = irq_find_mapping(msi_data->parent, hwirq); msi_data 217 drivers/irqchip/irq-ls-scfg-msi.c static int ls_scfg_msi_domains_init(struct ls_scfg_msi *msi_data) msi_data 220 drivers/irqchip/irq-ls-scfg-msi.c msi_data->parent = irq_domain_add_linear(NULL, msi_data 221 drivers/irqchip/irq-ls-scfg-msi.c msi_data->irqs_num, msi_data 223 drivers/irqchip/irq-ls-scfg-msi.c msi_data); msi_data 224 drivers/irqchip/irq-ls-scfg-msi.c if (!msi_data->parent) { msi_data 225 drivers/irqchip/irq-ls-scfg-msi.c dev_err(&msi_data->pdev->dev, "failed to create IRQ domain\n"); msi_data 229 drivers/irqchip/irq-ls-scfg-msi.c msi_data->msi_domain = pci_msi_create_irq_domain( msi_data 230 drivers/irqchip/irq-ls-scfg-msi.c of_node_to_fwnode(msi_data->pdev->dev.of_node), msi_data 232 drivers/irqchip/irq-ls-scfg-msi.c msi_data->parent); msi_data 233 drivers/irqchip/irq-ls-scfg-msi.c if (!msi_data->msi_domain) { msi_data 234 drivers/irqchip/irq-ls-scfg-msi.c dev_err(&msi_data->pdev->dev, "failed to create MSI domain\n"); msi_data 235 drivers/irqchip/irq-ls-scfg-msi.c irq_domain_remove(msi_data->parent); msi_data 242 drivers/irqchip/irq-ls-scfg-msi.c static int ls_scfg_msi_setup_hwirq(struct ls_scfg_msi *msi_data, int index) msi_data 247 drivers/irqchip/irq-ls-scfg-msi.c virq = platform_get_irq(msi_data->pdev, index); msi_data 251 drivers/irqchip/irq-ls-scfg-msi.c msir = &msi_data->msir[index]; msi_data 253 drivers/irqchip/irq-ls-scfg-msi.c msir->msi_data = msi_data; msi_data 255 drivers/irqchip/irq-ls-scfg-msi.c msir->reg = msi_data->regs + msi_data->cfg->msir_base + 4 * index; msi_data 257 drivers/irqchip/irq-ls-scfg-msi.c if (msi_data->cfg->msir_irqs == MSI_LS1043V1_1_IRQS_PER_MSIR) { msi_data 264 drivers/irqchip/irq-ls-scfg-msi.c msir->bit_end = msi_data->cfg->msir_irqs - 1; msi_data 280 drivers/irqchip/irq-ls-scfg-msi.c for (i = 0; i < msi_data->cfg->msir_irqs; i++) { msi_data 281 drivers/irqchip/irq-ls-scfg-msi.c hwirq = i << msi_data->cfg->ibs_shift | msir->index; msi_data 282 drivers/irqchip/irq-ls-scfg-msi.c bitmap_clear(msi_data->used, hwirq, 1); msi_data 291 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data = msir->msi_data; msi_data 297 drivers/irqchip/irq-ls-scfg-msi.c for (i = 0; i < msi_data->cfg->msir_irqs; i++) { msi_data 298 drivers/irqchip/irq-ls-scfg-msi.c hwirq = i << msi_data->cfg->ibs_shift | msir->index; msi_data 299 drivers/irqchip/irq-ls-scfg-msi.c bitmap_set(msi_data->used, hwirq, 1); msi_data 340 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data; msi_data 348 drivers/irqchip/irq-ls-scfg-msi.c msi_data = devm_kzalloc(&pdev->dev, sizeof(*msi_data), GFP_KERNEL); msi_data 349 drivers/irqchip/irq-ls-scfg-msi.c if (!msi_data) msi_data 352 drivers/irqchip/irq-ls-scfg-msi.c msi_data->cfg = (struct ls_scfg_msi_cfg *) match->data; msi_data 355 drivers/irqchip/irq-ls-scfg-msi.c msi_data->regs = devm_ioremap_resource(&pdev->dev, res); msi_data 356 drivers/irqchip/irq-ls-scfg-msi.c if (IS_ERR(msi_data->regs)) { msi_data 358 drivers/irqchip/irq-ls-scfg-msi.c return PTR_ERR(msi_data->regs); msi_data 360 drivers/irqchip/irq-ls-scfg-msi.c msi_data->msiir_addr = res->start; msi_data 362 drivers/irqchip/irq-ls-scfg-msi.c msi_data->pdev = pdev; msi_data 363 drivers/irqchip/irq-ls-scfg-msi.c spin_lock_init(&msi_data->lock); msi_data 365 drivers/irqchip/irq-ls-scfg-msi.c msi_data->irqs_num = MSI_IRQS_PER_MSIR * msi_data 366 drivers/irqchip/irq-ls-scfg-msi.c (1 << msi_data->cfg->ibs_shift); msi_data 367 drivers/irqchip/irq-ls-scfg-msi.c msi_data->used = devm_kcalloc(&pdev->dev, msi_data 368 drivers/irqchip/irq-ls-scfg-msi.c BITS_TO_LONGS(msi_data->irqs_num), msi_data 369 drivers/irqchip/irq-ls-scfg-msi.c sizeof(*msi_data->used), msi_data 371 drivers/irqchip/irq-ls-scfg-msi.c if (!msi_data->used) msi_data 377 drivers/irqchip/irq-ls-scfg-msi.c bitmap_set(msi_data->used, 0, msi_data->irqs_num); msi_data 379 drivers/irqchip/irq-ls-scfg-msi.c msi_data->msir_num = of_irq_count(pdev->dev.of_node); msi_data 385 drivers/irqchip/irq-ls-scfg-msi.c if (msi_data->msir_num >= cpu_num) msi_data 386 drivers/irqchip/irq-ls-scfg-msi.c msi_data->msir_num = cpu_num; msi_data 391 drivers/irqchip/irq-ls-scfg-msi.c msi_data->msir = devm_kcalloc(&pdev->dev, msi_data->msir_num, msi_data 392 drivers/irqchip/irq-ls-scfg-msi.c sizeof(*msi_data->msir), msi_data 394 drivers/irqchip/irq-ls-scfg-msi.c if (!msi_data->msir) msi_data 397 drivers/irqchip/irq-ls-scfg-msi.c for (i = 0; i < msi_data->msir_num; i++) msi_data 398 drivers/irqchip/irq-ls-scfg-msi.c ls_scfg_msi_setup_hwirq(msi_data, i); msi_data 400 drivers/irqchip/irq-ls-scfg-msi.c ret = ls_scfg_msi_domains_init(msi_data); msi_data 404 drivers/irqchip/irq-ls-scfg-msi.c platform_set_drvdata(pdev, msi_data); msi_data 411 drivers/irqchip/irq-ls-scfg-msi.c struct ls_scfg_msi *msi_data = platform_get_drvdata(pdev); msi_data 414 drivers/irqchip/irq-ls-scfg-msi.c for (i = 0; i < msi_data->msir_num; i++) msi_data 415 drivers/irqchip/irq-ls-scfg-msi.c ls_scfg_msi_teardown_hwirq(&msi_data->msir[i]); msi_data 417 drivers/irqchip/irq-ls-scfg-msi.c irq_domain_remove(msi_data->msi_domain); msi_data 418 drivers/irqchip/irq-ls-scfg-msi.c irq_domain_remove(msi_data->parent); msi_data 72 drivers/irqchip/irq-mvebu-icu.c struct mvebu_icu_msi_data *msi_data, msi_data 75 drivers/irqchip/irq-mvebu-icu.c const struct mvebu_icu_subset_data *subset = msi_data->subset_data; msi_data 77 drivers/irqchip/irq-mvebu-icu.c if (atomic_cmpxchg(&msi_data->initialized, false, true)) msi_data 95 drivers/irqchip/irq-mvebu-icu.c struct mvebu_icu_msi_data *msi_data = platform_msi_get_host_data(d->domain); msi_data 102 drivers/irqchip/irq-mvebu-icu.c mvebu_icu_init(icu, msi_data, msg); msi_data 154 drivers/irqchip/irq-mvebu-icu.c struct mvebu_icu_msi_data *msi_data = platform_msi_get_host_data(d); msi_data 183 drivers/irqchip/irq-mvebu-icu.c if (msi_data->subset_data->icu_group == ICU_GRP_SEI) msi_data 202 drivers/irqchip/irq-mvebu-icu.c struct mvebu_icu_msi_data *msi_data = platform_msi_get_host_data(domain); msi_data 203 drivers/irqchip/irq-mvebu-icu.c struct mvebu_icu *icu = msi_data->icu; msi_data 221 drivers/irqchip/irq-mvebu-icu.c icu_irqd->icu_group = msi_data->subset_data->icu_group; msi_data 300 drivers/irqchip/irq-mvebu-icu.c struct mvebu_icu_msi_data *msi_data; msi_data 305 drivers/irqchip/irq-mvebu-icu.c msi_data = devm_kzalloc(dev, sizeof(*msi_data), GFP_KERNEL); msi_data 306 drivers/irqchip/irq-mvebu-icu.c if (!msi_data) msi_data 310 drivers/irqchip/irq-mvebu-icu.c msi_data->icu = dev_get_drvdata(dev); msi_data 311 drivers/irqchip/irq-mvebu-icu.c msi_data->subset_data = &mvebu_icu_nsr_subset_data; msi_data 313 drivers/irqchip/irq-mvebu-icu.c msi_data->icu = dev_get_drvdata(dev->parent); msi_data 314 drivers/irqchip/irq-mvebu-icu.c msi_data->subset_data = of_device_get_match_data(dev); msi_data 329 drivers/irqchip/irq-mvebu-icu.c msi_data); msi_data 60 drivers/net/wireless/ath/ath10k/pci.h u32 msi_data; msi_data 130 drivers/pci/controller/dwc/pcie-designware-host.c msi_target = (u64)pp->msi_data; msi_data 299 drivers/pci/controller/dwc/pcie-designware-host.c pp->msi_data = dma_map_page(dev, pp->msi_page, 0, PAGE_SIZE, msi_data 301 drivers/pci/controller/dwc/pcie-designware-host.c if (dma_mapping_error(dev, pp->msi_data)) { msi_data 307 drivers/pci/controller/dwc/pcie-designware-host.c msi_target = (u64)pp->msi_data; msi_data 188 drivers/pci/controller/dwc/pcie-designware.h dma_addr_t msi_data; msi_data 872 drivers/pci/controller/pci-aardvark.c u16 msi_data; msi_data 883 drivers/pci/controller/pci-aardvark.c msi_data = advk_readl(pcie, PCIE_MSI_PAYLOAD_REG) & 0xFF; msi_data 884 drivers/pci/controller/pci-aardvark.c generic_handle_irq(msi_data); msi_data 344 drivers/pci/controller/pcie-mobiveil.c u32 msi_data, msi_addr_lo, msi_addr_hi; msi_data 395 drivers/pci/controller/pcie-mobiveil.c msi_data = readl_relaxed(pcie->apb_csr_base + MSI_DATA_OFFSET); msi_data 408 drivers/pci/controller/pcie-mobiveil.c msi_data, msi_addr_hi, msi_addr_lo); msi_data 410 drivers/pci/controller/pcie-mobiveil.c virq = irq_find_mapping(msi->dev_domain, msi_data); msi_data 1383 virt/kvm/arm/vgic/vgic-its.c u32 msi_data = its_cmd_get_id(its_cmd); msi_data 1386 virt/kvm/arm/vgic/vgic-its.c return vgic_its_trigger_msi(kvm, its, msi_devid, msi_data);