Lines Matching refs:pcie
101 struct mvebu_pcie *pcie;
322 dev_err(&port->pcie->pdev->dev,
382 dev_WARN(&port->pcie->pdev->dev,
396 desired.base = port->pcie->io.start + desired.remap;
608 static struct mvebu_pcie_port *mvebu_pcie_find_port(struct mvebu_pcie *pcie,
614 for (i = 0; i < pcie->nports; i++) {
615 struct mvebu_pcie_port *port = &pcie->ports[i];
632 struct mvebu_pcie *pcie = bus->sysdata;
636 port = mvebu_pcie_find_port(pcie, bus, devfn);
659 struct mvebu_pcie *pcie = bus->sysdata;
663 port = mvebu_pcie_find_port(pcie, bus, devfn);
786 struct mvebu_pcie *pcie;
789 pcie = dev_get_drvdata(dev);
790 for (i = 0; i < pcie->nports; i++) {
791 struct mvebu_pcie_port *port = pcie->ports + i;
800 struct mvebu_pcie *pcie;
803 pcie = dev_get_drvdata(dev);
804 for (i = 0; i < pcie->nports; i++) {
805 struct mvebu_pcie_port *port = pcie->ports + i;
821 static int mvebu_pcie_parse_port(struct mvebu_pcie *pcie,
824 struct device *dev = &pcie->pdev->dev;
828 port->pcie = pcie;
830 if (of_property_read_u32(child, "marvell,pcie-port", &port->port)) {
831 dev_warn(dev, "ignoring %pOF, missing pcie-port property\n",
836 if (of_property_read_u32(child, "marvell,pcie-lane", &port->lane))
839 port->name = devm_kasprintf(dev, GFP_KERNEL, "pcie%d.%d", port->port,
858 if (resource_size(&pcie->io) != 0) {
973 static int mvebu_pcie_parse_request_resources(struct mvebu_pcie *pcie)
975 struct device *dev = &pcie->pdev->dev;
976 struct pci_host_bridge *bridge = pci_host_bridge_from_priv(pcie);
980 mvebu_mbus_get_pcie_mem_aperture(&pcie->mem);
981 if (resource_size(&pcie->mem) == 0) {
986 pcie->mem.name = "PCI MEM";
987 pci_add_resource(&bridge->windows, &pcie->mem);
988 ret = devm_request_resource(dev, &iomem_resource, &pcie->mem);
993 mvebu_mbus_get_pcie_io_aperture(&pcie->io);
995 if (resource_size(&pcie->io) != 0) {
996 pcie->realio.flags = pcie->io.flags;
997 pcie->realio.start = PCIBIOS_MIN_IO;
998 pcie->realio.end = min_t(resource_size_t,
1000 resource_size(&pcie->io) - 1);
1001 pcie->realio.name = "PCI I/O";
1003 pci_add_resource(&bridge->windows, &pcie->realio);
1004 ret = devm_request_resource(dev, &ioport_resource, &pcie->realio);
1021 struct mvebu_pcie *pcie;
1031 pcie = pci_host_bridge_priv(bridge);
1032 if (resource_size(&pcie->io) != 0) {
1035 for (i = 0; i < resource_size(&pcie->realio); i += SZ_64K)
1036 pci_ioremap_io(i, pcie->io.start + i);
1063 struct mvebu_pcie *pcie;
1073 pcie = pci_host_bridge_priv(bridge);
1074 pcie->pdev = pdev;
1075 platform_set_drvdata(pdev, pcie);
1077 ret = mvebu_pcie_parse_request_resources(pcie);
1083 pcie->ports = devm_kcalloc(dev, num, sizeof(*pcie->ports), GFP_KERNEL);
1084 if (!pcie->ports)
1089 struct mvebu_pcie_port *port = &pcie->ports[i];
1091 ret = mvebu_pcie_parse_port(pcie, port, child);
1102 pcie->nports = i;
1104 for (i = 0; i < pcie->nports; i++) {
1105 struct mvebu_pcie_port *port = &pcie->ports[i];
1128 pcie->nports = i;
1130 bridge->sysdata = pcie;
1138 { .compatible = "marvell,armada-xp-pcie", },
1139 { .compatible = "marvell,armada-370-pcie", },
1140 { .compatible = "marvell,dove-pcie", },
1141 { .compatible = "marvell,kirkwood-pcie", },
1151 .name = "mvebu-pcie",