PCI: tegra: Check return value of tegra_pcie_init_controller()
authorVidya Sagar <vidyas@nvidia.com>
Thu, 3 Dec 2020 13:34:50 +0000 (19:04 +0530)
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Mon, 7 Dec 2020 16:43:52 +0000 (16:43 +0000)
The return value of tegra_pcie_init_controller() must be checked before
PCIe link up check and registering debugfs entries subsequently as it
doesn't make sense to do these when the controller initialization itself
has failed.

Link: https://lore.kernel.org/r/20201203133451.17716-5-vidyas@nvidia.com
Tested-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Vidya Sagar <vidyas@nvidia.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Thierry Reding <treding@nvidia.com>
drivers/pci/controller/dwc/pcie-tegra194.c

index 471c6d7..f4109d7 100644 (file)
@@ -1563,7 +1563,11 @@ static int tegra_pcie_config_rp(struct tegra_pcie_dw *pcie)
                goto fail_pm_get_sync;
        }
 
-       tegra_pcie_init_controller(pcie);
+       ret = tegra_pcie_init_controller(pcie);
+       if (ret < 0) {
+               dev_err(dev, "Failed to initialize controller: %d\n", ret);
+               goto fail_pm_get_sync;
+       }
 
        pcie->link_state = tegra_pcie_dw_link_up(&pcie->pci);
        if (!pcie->link_state) {