diff options
author | Stefan Agner <stefan@agner.ch> | 2014-02-10 19:44:13 -0500 |
---|---|---|
committer | Stephen Warren <swarren@nvidia.com> | 2014-02-12 14:10:58 -0500 |
commit | 5f809932419375af8203561a39c70ed1a994c877 (patch) | |
tree | 5985a05e8fbe3dfd83b49af8f5cc3ccabdc8758b | |
parent | 38dbfb59d1175ef458d006556061adeaa8751b72 (diff) |
ARM: tegra: don't timeout if CPU is powergated
When booting secondary CPU(s) which are not yet powergated, a wrong
check lead to a timeout after 100 jiffies. With this patch, we only
delay powergating if CPUs are still not powered yet.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
-rw-r--r-- | arch/arm/mach-tegra/platsmp.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/platsmp.c b/arch/arm/mach-tegra/platsmp.c index eb72ae709124..929d1046e2b4 100644 --- a/arch/arm/mach-tegra/platsmp.c +++ b/arch/arm/mach-tegra/platsmp.c | |||
@@ -114,7 +114,7 @@ static int tegra30_boot_secondary(unsigned int cpu, struct task_struct *idle) | |||
114 | 114 | ||
115 | /* Wait for the power to come up. */ | 115 | /* Wait for the power to come up. */ |
116 | timeout = jiffies + msecs_to_jiffies(100); | 116 | timeout = jiffies + msecs_to_jiffies(100); |
117 | while (tegra_pmc_cpu_is_powered(cpu)) { | 117 | while (!tegra_pmc_cpu_is_powered(cpu)) { |
118 | if (time_after(jiffies, timeout)) | 118 | if (time_after(jiffies, timeout)) |
119 | return -ETIMEDOUT; | 119 | return -ETIMEDOUT; |
120 | udelay(10); | 120 | udelay(10); |