summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/common.c
diff options
context:
space:
mode:
authorVarun Wadekar <vwadekar@nvidia.com>2014-03-06 15:28:49 +0530
committerVarun Wadekar <vwadekar@nvidia.com>2014-03-07 06:08:57 -0800
commit05689e89f86458ae6993ab0303206f1f65db5ac4 (patch)
tree04a72bf56022414a5a2c4484da2581144aac644e /arch/arm/mach-tegra/common.c
parent2f467ae0d55d95969ce470e5efc4b8280dca6094 (diff)
arm: tegra: initialize cpu reset handler using early_initcall()
tegra_cpu_reset_handler_init() was called during SMP prepare explicitly. In order to use PSCI calls during cpu reset handler init, it needs to be initialized using early_initcall(). The ARM init code makes sure that all early_initcalls are invoked before SMP is enabled. Cleanup the ARM64 version as well. Bug 1475528 Change-Id: I24d424b1c2ade4d5737764d6c5378b57ed3f8c7b Signed-off-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-on: http://git-master/r/378351 Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/common.c')
-rw-r--r--arch/arm/mach-tegra/common.c30
1 files changed, 0 insertions, 30 deletions
diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c
index ddb325b1fb8f..2978eb4ad785 100644
--- a/arch/arm/mach-tegra/common.c
+++ b/arch/arm/mach-tegra/common.c
@@ -876,12 +876,6 @@ static void __init tegra_init_ahb_gizmo_settings(void)
#ifdef CONFIG_ARCH_TEGRA_2x_SOC
void __init tegra20_init_early(void)
{
-#ifndef CONFIG_SMP
- /* For SMP system, initializing the reset handler here is too
- late. For non-SMP systems, the function that calls the reset
- handler initializer is not called, so do it here for non-SMP. */
- tegra_cpu_reset_handler_init();
-#endif
tegra_apb_io_init();
tegra_perf_init();
tegra_init_fuse();
@@ -900,12 +894,6 @@ void __init tegra30_init_early(void)
u32 tag_latency, data_latency;
display_tegra_dt_info();
-#ifndef CONFIG_SMP
- /* For SMP system, initializing the reset handler here is too
- late. For non-SMP systems, the function that calls the reset
- handler initializer is not called, so do it here for non-SMP. */
- tegra_cpu_reset_handler_init();
-#endif
tegra_apb_io_init();
tegra_perf_init();
tegra_init_fuse();
@@ -944,12 +932,6 @@ void __init tegra30_init_early(void)
void __init tegra11x_init_early(void)
{
display_tegra_dt_info();
-#ifndef CONFIG_SMP
- /* For SMP system, initializing the reset handler here is too
- late. For non-SMP systems, the function that calls the reset
- handler initializer is not called, so do it here for non-SMP. */
- tegra_cpu_reset_handler_init();
-#endif
tegra_apb_io_init();
tegra_perf_init();
tegra_init_fuse();
@@ -973,12 +955,6 @@ void __init tegra11x_init_early(void)
void __init tegra12x_init_early(void)
{
display_tegra_dt_info();
-#ifndef CONFIG_SMP
- /* For SMP system, initializing the reset handler here is too
- late. For non-SMP systems, the function that calls the reset
- handler initializer is not called, so do it here for non-SMP. */
- tegra_cpu_reset_handler_init();
-#endif
tegra_apb_io_init();
tegra_perf_init();
tegra_init_fuse();
@@ -1005,12 +981,6 @@ void __init tegra12x_init_early(void)
void __init tegra14x_init_early(void)
{
display_tegra_dt_info();
-#ifndef CONFIG_SMP
- /* For SMP system, initializing the reset handler here is too
- late. For non-SMP systems, the function that calls the reset
- handler initializer is not called, so do it here for non-SMP. */
- tegra_cpu_reset_handler_init();
-#endif
tegra_apb_io_init();
tegra_perf_init();
tegra_init_fuse();