Lines Matching refs:msi_data
47 struct fsl_msi *msi_data;
67 struct fsl_msi *msi_data = irqd->domain->host_data;
71 srs = (hwirq >> msi_data->srs_shift) & MSI_SRS_MASK;
72 cascade_virq = msi_data->cascade_array[srs]->virq;
88 struct fsl_msi *msi_data = h->host_data;
93 irq_set_chip_data(virq, msi_data);
103 static int fsl_msi_init_allocator(struct fsl_msi *msi_data)
107 rc = msi_bitmap_alloc(&msi_data->bitmap, NR_MSI_IRQS_MAX,
108 irq_domain_get_of_node(msi_data->irqhost));
117 msi_bitmap_reserve_hwirq(&msi_data->bitmap, hwirq);
125 struct fsl_msi *msi_data;
132 msi_data = irq_get_chip_data(entry->irq);
135 msi_bitmap_free_hwirqs(&msi_data->bitmap, hwirq, 1);
145 struct fsl_msi *msi_data = fsl_msi_data;
156 address = fsl_pci_immrbar_base(hose) + msi_data->msiir_offset;
168 if (msi_data->feature & MSI_HW_ERRATA_ENDIAN)
174 (hwirq >> msi_data->srs_shift) & MSI_SRS_MASK,
175 (hwirq >> msi_data->ibs_shift) & MSI_IBS_MASK);
187 struct fsl_msi *msi_data;
195 list_for_each_entry(msi_data, &msi_head, list)
196 if (msi_data->feature & MSI_HW_ERRATA_ENDIAN)
225 list_for_each_entry(msi_data, &msi_head, list) {
234 if (phandle && (phandle != msi_data->phandle))
237 hwirq = msi_bitmap_alloc_hwirqs(&msi_data->bitmap, 1);
248 virq = irq_create_mapping(msi_data->irqhost, hwirq);
252 msi_bitmap_free_hwirqs(&msi_data->bitmap, hwirq, 1);
256 /* chip_data is msi_data via host->hostdata in host->map() */
259 fsl_compose_msi_msg(pdev, hwirq, &msg, msi_data);
272 struct fsl_msi *msi_data;
280 msi_data = cascade_data->msi_data;
287 switch (msi_data->feature & FSL_PIC_IP_MASK) {
289 msir_value = fsl_msi_read(msi_data->msi_regs,
293 msir_value = fsl_msi_read(msi_data->msi_regs, msir_index * 0x4);
312 cascade_irq = irq_linear_revmap(msi_data->irqhost,
313 msi_hwirq(msi_data, msir_index,
377 cascade_data->msi_data = msi;