Lines Matching defs:pcie

14 #include "pcie-iproc.h"
73 * @pcie: pointer to iProc PCIe data
94 struct iproc_pcie *pcie;
132 struct iproc_pcie *pcie = msi->pcie;
134 return readl_relaxed(pcie->base + msi->reg_offsets[eq][reg]);
141 struct iproc_pcie *pcie = msi->pcie;
143 writel_relaxed(val, pcie->base + msi->reg_offsets[eq][reg]);
488 struct iproc_pcie *pcie = msi->pcie;
500 dev_err(pcie->dev,
505 dev_err(pcie->dev, "failed to alloc CPU mask\n");
519 int iproc_msi_init(struct iproc_pcie *pcie, struct device_node *node)
531 if (pcie->msi)
534 msi = devm_kzalloc(pcie->dev, sizeof(*msi), GFP_KERNEL);
538 msi->pcie = pcie;
539 pcie->msi = msi;
540 msi->msi_addr = pcie->base_addr;
549 dev_err(pcie->dev, "found no MSI GIC interrupt\n");
554 dev_warn(pcie->dev, "too many MSI GIC interrupts defined %d\n",
560 dev_err(pcie->dev,
567 dev_warn(pcie->dev, "Reducing number of interrupts to %d\n",
571 switch (pcie->type) {
584 dev_err(pcie->dev, "incompatible iProc PCIe interface\n");
588 msi->has_inten_reg = of_property_read_bool(node, "brcm,pcie-msi-inten");
591 msi->bitmap = devm_bitmap_zalloc(pcie->dev, msi->nr_msi_vecs,
596 msi->grps = devm_kcalloc(pcie->dev, msi->nr_irqs, sizeof(*msi->grps),
605 dev_err(pcie->dev, "unable to parse/map interrupt\n");
615 msi->eq_cpu = dma_alloc_coherent(pcie->dev,
625 dev_err(pcie->dev, "failed to create MSI domains\n");
645 dma_free_coherent(pcie->dev, msi->nr_eq_region * EQ_MEM_REGION_SIZE,
653 pcie->msi = NULL;
658 void iproc_msi_exit(struct iproc_pcie *pcie)
660 struct iproc_msi *msi = pcie->msi;
673 dma_free_coherent(pcie->dev, msi->nr_eq_region * EQ_MEM_REGION_SIZE,