summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Warren <swarren@nvidia.com>2015-10-05 17:00:43 -0600
committerTom Warren <twarren@nvidia.com>2015-11-12 09:21:05 -0700
commita02e2635480e66a2921d62792fbc4a1e83dc4425 (patch)
treed6fea1c0af92a6eff06962c086e50d8ec7512d00
parent514e19138af26682dfaec0f92d24406b2e846f98 (diff)
downloadu-boot-imx-a02e2635480e66a2921d62792fbc4a1e83dc4425.zip
u-boot-imx-a02e2635480e66a2921d62792fbc4a1e83dc4425.tar.gz
u-boot-imx-a02e2635480e66a2921d62792fbc4a1e83dc4425.tar.bz2
pci: tegra: call tegra_pcie_board_init() earlier
The board PCI setup code may control regulators that are required simply to bring up the PCI controller itself (or PLLs, IOs, ... it uses). Move the call to this function earlier so that all board-provided resources are ready early enough for everything to work. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
-rw-r--r--drivers/pci/pci_tegra.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pci/pci_tegra.c b/drivers/pci/pci_tegra.c
index 177d48d..bf078b3 100644
--- a/drivers/pci/pci_tegra.c
+++ b/drivers/pci/pci_tegra.c
@@ -618,8 +618,6 @@ static int tegra_pcie_power_on(struct tegra_pcie *pcie)
return err;
}
- tegra_pcie_board_init();
-
err = tegra_powergate_sequence_power_up(TEGRA_POWERGATE_PCIE,
PERIPH_ID_PCIE);
if (err < 0) {
@@ -1164,6 +1162,8 @@ void pci_init_board(void)
const void *fdt = gd->fdt_blob;
int count, nodes[1];
+ tegra_pcie_board_init();
+
count = fdtdec_find_aliases_for_id(fdt, "pcie-controller",
COMPAT_NVIDIA_TEGRA124_PCIE,
nodes, ARRAY_SIZE(nodes));