arm: tegra: register save and restore ops
Prashant Gaikwad [Fri, 20 Sep 2013 10:17:31 +0000 (15:17 +0530)]
Register syscore ops for modules whose context has to
saved/restore during entry/exit to LP0 state from CPU
Idle.

Bug 1254633

Change-Id: Idf4a67535754db3ccc2fc528469fb17ec198cee0
Signed-off-by: Prashant Gaikwad <pgaikwad@nvidia.com>
Reviewed-on: http://git-master/r/299447
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>

arch/arm/mach-tegra/ahb.c
arch/arm/mach-tegra/irq.c
arch/arm/mach-tegra/pinmux-t11-tables.c
arch/arm/mach-tegra/pinmux-t12-tables.c
arch/arm/mach-tegra/pm-irq.c
arch/arm/mach-tegra/pm.c
arch/arm/mach-tegra/tegra11_clocks.c
arch/arm/mach-tegra/tegra12_clocks.c
arch/arm/mach-tegra/timer.c
drivers/gpio/gpio-tegra.c
kernel/cpu_pm.c

index dd44729..55d0bca 100644 (file)
@@ -199,6 +199,8 @@ void tegra_ahbgizmo_resume(void)
 static struct syscore_ops tegra_ahbgizmo_syscore_ops = {
        .suspend = tegra_ahbgizmo_suspend,
        .resume = tegra_ahbgizmo_resume,
+       .save = tegra_ahbgizmo_suspend,
+       .restore = tegra_ahbgizmo_resume,
 };
 
 static int __init tegra_init_ahb_gizmo(void)
index e74952a..2bb7ea6 100644 (file)
@@ -264,6 +264,8 @@ static void tegra_legacy_irq_resume(void)
 static struct syscore_ops tegra_legacy_irq_syscore_ops = {
        .suspend = tegra_legacy_irq_suspend,
        .resume = tegra_legacy_irq_resume,
+       .save = tegra_legacy_irq_suspend,
+       .restore = tegra_legacy_irq_resume,
 };
 
 static int tegra_legacy_irq_syscore_init(void)
index b0b4118..2e7ae48 100644 (file)
@@ -448,6 +448,8 @@ static void tegra11x_pinmux_resume(void)
 static struct syscore_ops tegra_pinmux_syscore_ops = {
        .suspend = tegra11x_pinmux_suspend,
        .resume = tegra11x_pinmux_resume,
+       .save = tegra11x_pinmux_suspend,
+       .restore = tegra11x_pinmux_resume,
 };
 #endif
 
index a7eff6c..644573c 100644 (file)
@@ -635,6 +635,8 @@ static void tegra12x_pinmux_resume(void)
 static struct syscore_ops tegra_pinmux_syscore_ops = {
        .suspend = tegra12x_pinmux_suspend,
        .resume = tegra12x_pinmux_resume,
+       .save = tegra12x_pinmux_suspend,
+       .restore = tegra12x_pinmux_resume,
 };
 #endif
 
index 1e13446..15b7531 100644 (file)
@@ -487,6 +487,8 @@ skip_usb_any_wake:
 static struct syscore_ops tegra_pm_irq_syscore_ops = {
        .suspend = tegra_pm_irq_syscore_suspend,
        .resume = tegra_pm_irq_syscore_resume,
+       .save = tegra_pm_irq_syscore_suspend,
+       .restore = tegra_pm_irq_syscore_resume,
 };
 
 static int tegra_pm_irq_syscore_init(void)
index 6d9d774..f55b9b3 100644 (file)
@@ -1567,6 +1567,8 @@ static void tegra_pm_enter_shutdown(void)
 static struct syscore_ops tegra_pm_enter_syscore_ops = {
        .suspend = tegra_pm_enter_suspend,
        .resume = tegra_pm_enter_resume,
+       .save = tegra_pm_enter_suspend,
+       .restore = tegra_pm_enter_resume,
        .shutdown = tegra_pm_enter_shutdown,
 };
 
@@ -1947,6 +1949,8 @@ static void tegra_debug_uart_resume(void)
 static struct syscore_ops tegra_debug_uart_syscore_ops = {
        .suspend = tegra_debug_uart_suspend,
        .resume = tegra_debug_uart_resume,
+       .save = tegra_debug_uart_suspend,
+       .restore = tegra_debug_uart_resume,
 };
 
 struct clk *debug_uart_clk = NULL;
index a849d50..1a85b98 100644 (file)
@@ -7956,6 +7956,8 @@ static void tegra11_clk_resume(void)
 static struct syscore_ops tegra_clk_syscore_ops = {
        .suspend = tegra11_clk_suspend,
        .resume = tegra11_clk_resume,
+       .save = tegra11_clk_suspend,
+       .restore = tegra11_clk_resume,
 };
 #endif
 
index 2ff4347..98dc99d 100644 (file)
@@ -8951,6 +8951,8 @@ static void tegra12_clk_resume(void)
 static struct syscore_ops tegra_clk_syscore_ops = {
        .suspend = tegra12_clk_suspend,
        .resume = tegra12_clk_resume,
+       .save = tegra12_clk_suspend,
+       .restore = tegra12_clk_resume,
 };
 #endif
 
index 93e93f5..e41a875 100644 (file)
@@ -279,6 +279,8 @@ static void tegra_timer_resume(void)
 static struct syscore_ops tegra_timer_syscore_ops = {
        .suspend = tegra_timer_suspend,
        .resume = tegra_timer_resume,
+       .save = tegra_timer_suspend,
+       .restore = tegra_timer_resume,
 };
 
 #if !defined(CONFIG_HAVE_ARM_TWD) && !defined(CONFIG_ARM_ARCH_TIMER)
index 5a2b781..124321c 100644 (file)
@@ -472,6 +472,8 @@ fail:
 static struct syscore_ops tegra_gpio_syscore_ops = {
        .suspend = tegra_gpio_suspend,
        .resume = tegra_gpio_resume,
+       .save = tegra_gpio_suspend,
+       .restore = tegra_gpio_resume,
 };
 
 static struct irq_chip tegra_gpio_irq_chip = {
index 9656a3c..e16cbfd 100644 (file)
@@ -222,6 +222,8 @@ static void cpu_pm_resume(void)
 static struct syscore_ops cpu_pm_syscore_ops = {
        .suspend = cpu_pm_suspend,
        .resume = cpu_pm_resume,
+       .save = cpu_pm_suspend,
+       .restore = cpu_pm_resume,
 };
 
 static int cpu_pm_init(void)