The PCIe reference clock needs a 3.3V supply voltage to work properly.
Signed-off-by: Thierry Reding <[email protected]>
---
This patch is based on next-20120217. Note that PCIe works without this
patch when the Linux kernel is booted with a combination of QuickBoot
and U-Boot because either apparently sets LD0 to 3.3V. This is not the
case when booting from mainline U-Boot, so it must be set explicitly.
arch/arm/mach-tegra/board-harmony-pcie.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-tegra/board-harmony-pcie.c
b/arch/arm/mach-tegra/board-harmony-pcie.c
index 33c4fed..d521cf4 100644
--- a/arch/arm/mach-tegra/board-harmony-pcie.c
+++ b/arch/arm/mach-tegra/board-harmony-pcie.c
@@ -45,6 +45,10 @@ static int __init harmony_pcie_init(void)
if (IS_ERR_OR_NULL(regulator))
goto err_reg;
+ err = regulator_set_voltage(regulator, 3300000, 3300000);
+ if (err < 0)
+ goto err_put;
+
regulator_enable(regulator);
err = tegra_pcie_init(true, true);
@@ -55,6 +59,7 @@ static int __init harmony_pcie_init(void)
err_pcie:
regulator_disable(regulator);
+err_put:
regulator_put(regulator);
err_reg:
gpio_free(TEGRA_GPIO_EN_VDD_1V05_GPIO);
--
1.7.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html