summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Cherry <tcherry@nvidia.com>2012-03-13 15:23:20 -0700
committerRohan Somvanshi <rsomvanshi@nvidia.com>2012-03-15 09:54:03 -0700
commitd60ba0d981bceb24764b58a6dd72cefb97c06a03 (patch)
tree7cd02e04e1150403b0fc4c5239d3aa7b91c704e5
parentd6ec80078313053033346987c50897f1e8e14d97 (diff)
ARM: tegra: use common console flush on reboot
Bug 952455 Change-Id: I5272bdf2fc726994f3a22fd42671bb807bc30a21 Signed-off-by: Tom Cherry <tcherry@nvidia.com> Reviewed-on: http://git-master/r/89875 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
-rw-r--r--arch/arm/configs/tegra3_android_defconfig1
-rw-r--r--arch/arm/configs/tegra3_defconfig1
-rw-r--r--arch/arm/mach-tegra/common.c31
3 files changed, 2 insertions, 31 deletions
diff --git a/arch/arm/configs/tegra3_android_defconfig b/arch/arm/configs/tegra3_android_defconfig
index 498caf821b3c..4c533e6000aa 100644
--- a/arch/arm/configs/tegra3_android_defconfig
+++ b/arch/arm/configs/tegra3_android_defconfig
@@ -49,6 +49,7 @@ CONFIG_PREEMPT=y
CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set
CONFIG_HIGHMEM=y
+CONFIG_ARM_FLUSH_CONSOLE_ON_RESTART=y
CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
CONFIG_CPU_FREQ=y
diff --git a/arch/arm/configs/tegra3_defconfig b/arch/arm/configs/tegra3_defconfig
index bbb0f01175d3..c649f5e740de 100644
--- a/arch/arm/configs/tegra3_defconfig
+++ b/arch/arm/configs/tegra3_defconfig
@@ -50,6 +50,7 @@ CONFIG_PREEMPT=y
CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set
CONFIG_HIGHMEM=y
+CONFIG_ARM_FLUSH_CONSOLE_ON_RESTART=y
CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
CONFIG_CPU_FREQ=y
diff --git a/arch/arm/mach-tegra/common.c b/arch/arm/mach-tegra/common.c
index 7d4703f1129d..6b345f43c3f1 100644
--- a/arch/arm/mach-tegra/common.c
+++ b/arch/arm/mach-tegra/common.c
@@ -419,39 +419,8 @@ static void __init tegra_init_ahb_gizmo_settings(void)
gizmo_writel(val, AHB_MEM_PREFETCH_CFG4);
}
-static bool console_flushed;
-
-static void tegra_pm_flush_console(void)
-{
- if (console_flushed)
- return;
- console_flushed = true;
-
- pr_emerg("Restarting %s\n", linux_banner);
- if (console_trylock()) {
- console_unlock();
- return;
- }
-
- mdelay(50);
-
- local_irq_disable();
- if (!console_trylock())
- pr_emerg("%s: Console was locked! Busting\n", __func__);
- else
- pr_emerg("%s: Console was locked!\n", __func__);
- console_unlock();
-}
-
-static void tegra_pm_restart(char mode, const char *cmd)
-{
- tegra_pm_flush_console();
- arm_machine_restart(mode, cmd);
-}
-
void __init tegra_init_early(void)
{
- arm_pm_restart = tegra_pm_restart;
#ifndef CONFIG_SMP
/* For SMP system, initializing the reset handler here is too
late. For non-SMP systems, the function that calls the reset