Lines Matching refs:host

51 	int			(*phy_init_fn)(struct rcar_pcie_host *host);
152 static int rcar_pcie_config_access(struct rcar_pcie_host *host,
156 struct rcar_pcie *pcie = &host->pcie;
235 struct rcar_pcie_host *host = bus->sysdata;
238 ret = rcar_pcie_config_access(host, RCAR_PCI_ACCESS_READ,
258 struct rcar_pcie_host *host = bus->sysdata;
263 ret = rcar_pcie_config_access(host, RCAR_PCI_ACCESS_READ,
282 ret = rcar_pcie_config_access(host, RCAR_PCI_ACCESS_WRITE,
347 static void rcar_pcie_hw_enable(struct rcar_pcie_host *host)
349 struct rcar_pcie *pcie = &host->pcie;
350 struct pci_host_bridge *bridge = pci_host_bridge_from_priv(host);
375 static int rcar_pcie_enable(struct rcar_pcie_host *host)
377 struct pci_host_bridge *bridge = pci_host_bridge_from_priv(host);
379 rcar_pcie_hw_enable(host);
383 bridge->sysdata = host;
502 static int rcar_pcie_phy_init_h1(struct rcar_pcie_host *host)
504 struct rcar_pcie *pcie = &host->pcie;
527 static int rcar_pcie_phy_init_gen2(struct rcar_pcie_host *host)
529 struct rcar_pcie *pcie = &host->pcie;
549 static int rcar_pcie_phy_init_gen3(struct rcar_pcie_host *host)
553 err = phy_init(host->phy);
557 err = phy_power_on(host->phy);
559 phy_exit(host->phy);
566 struct rcar_pcie_host *host = data;
567 struct rcar_pcie *pcie = &host->pcie;
568 struct rcar_msi *msi = &host->msi;
761 static int rcar_pcie_enable_msi(struct rcar_pcie_host *host)
763 struct rcar_pcie *pcie = &host->pcie;
765 struct rcar_msi *msi = &host->msi;
783 rcar_msi_bottom_chip.name, host);
791 rcar_msi_bottom_chip.name, host);
814 static void rcar_pcie_teardown_msi(struct rcar_pcie_host *host)
816 struct rcar_pcie *pcie = &host->pcie;
824 rcar_free_domains(&host->msi);
827 static int rcar_pcie_get_resources(struct rcar_pcie_host *host)
829 struct rcar_pcie *pcie = &host->pcie;
834 host->phy = devm_phy_optional_get(dev, "pcie");
835 if (IS_ERR(host->phy))
836 return PTR_ERR(host->phy);
846 host->bus_clk = devm_clk_get(dev, "pcie_bus");
847 if (IS_ERR(host->bus_clk)) {
849 return PTR_ERR(host->bus_clk);
858 host->msi.irq1 = i;
866 host->msi.irq2 = i;
871 irq_dispose_mapping(host->msi.irq1);
926 static int rcar_pcie_parse_map_dma_ranges(struct rcar_pcie_host *host)
928 struct pci_host_bridge *bridge = pci_host_bridge_from_priv(host);
933 err = rcar_pcie_inbound_ranges(&host->pcie, entry, &index);
968 struct rcar_pcie_host *host;
974 bridge = devm_pci_alloc_host_bridge(dev, sizeof(*host));
978 host = pci_host_bridge_priv(bridge);
979 pcie = &host->pcie;
981 platform_set_drvdata(pdev, host);
997 err = rcar_pcie_get_resources(host);
1003 err = clk_prepare_enable(host->bus_clk);
1009 err = rcar_pcie_parse_map_dma_ranges(host);
1013 host->phy_init_fn = of_device_get_match_data(dev);
1014 err = host->phy_init_fn(host);
1031 err = rcar_pcie_enable_msi(host);
1040 err = rcar_pcie_enable(host);
1048 rcar_pcie_teardown_msi(host);
1051 if (host->phy) {
1052 phy_power_off(host->phy);
1053 phy_exit(host->phy);
1057 clk_disable_unprepare(host->bus_clk);
1060 irq_dispose_mapping(host->msi.irq2);
1061 irq_dispose_mapping(host->msi.irq1);
1072 struct rcar_pcie_host *host = dev_get_drvdata(dev);
1073 struct rcar_pcie *pcie = &host->pcie;
1077 err = rcar_pcie_parse_map_dma_ranges(host);
1082 err = host->phy_init_fn(host);
1100 bitmap_to_arr32(&val, host->msi.used, INT_PCI_MSI_NR);
1104 rcar_pcie_hw_enable(host);
1111 struct rcar_pcie_host *host = dev_get_drvdata(dev);
1112 struct rcar_pcie *pcie = &host->pcie;