Lines Matching +full:dw +full:- +full:pcie
1 // SPDX-License-Identifier: GPL-2.0
3 * PCIe RC driver for Synopsys DesignWare Core
5 * Copyright (C) 2015-2016 Synopsys, Inc. (www.synopsys.com)
22 #include "pcie-designware.h"
71 dev_err(pci->dev, "UNKNOWN IRQ type\n"); in dw_plat_pcie_ep_raise_irq()
98 struct dw_pcie *pci = dw_plat_pcie->pci; in dw_plat_add_pcie_port()
99 struct pcie_port *pp = &pci->pp; in dw_plat_add_pcie_port()
100 struct device *dev = &pdev->dev; in dw_plat_add_pcie_port()
103 pp->irq = platform_get_irq(pdev, 1); in dw_plat_add_pcie_port()
104 if (pp->irq < 0) in dw_plat_add_pcie_port()
105 return pp->irq; in dw_plat_add_pcie_port()
107 pp->num_vectors = MAX_MSI_IRQS; in dw_plat_add_pcie_port()
108 pp->ops = &dw_plat_pcie_host_ops; in dw_plat_add_pcie_port()
121 struct device *dev = &pdev->dev; in dw_plat_pcie_probe()
131 return -EINVAL; in dw_plat_pcie_probe()
133 data = (struct dw_plat_pcie_of_data *)match->data; in dw_plat_pcie_probe()
134 mode = (enum dw_pcie_device_mode)data->mode; in dw_plat_pcie_probe()
138 return -ENOMEM; in dw_plat_pcie_probe()
142 return -ENOMEM; in dw_plat_pcie_probe()
144 pci->dev = dev; in dw_plat_pcie_probe()
145 pci->ops = &dw_pcie_ops; in dw_plat_pcie_probe()
147 dw_plat_pcie->pci = pci; in dw_plat_pcie_probe()
148 dw_plat_pcie->mode = mode; in dw_plat_pcie_probe()
152 switch (dw_plat_pcie->mode) { in dw_plat_pcie_probe()
155 return -ENODEV; in dw_plat_pcie_probe()
163 return -ENODEV; in dw_plat_pcie_probe()
165 pci->ep.ops = &pcie_ep_ops; in dw_plat_pcie_probe()
166 return dw_pcie_ep_init(&pci->ep); in dw_plat_pcie_probe()
168 dev_err(dev, "INVALID device type %d\n", dw_plat_pcie->mode); in dw_plat_pcie_probe()
184 .compatible = "snps,dw-pcie",
188 .compatible = "snps,dw-pcie-ep",
196 .name = "dw-pcie",