tegra: stingray: initialize suspend platform data
authorGary King <gking@nvidia.com>
Fri, 25 Jun 2010 23:53:37 +0000 (16:53 -0700)
committerColin Cross <ccross@android.com>
Wed, 6 Oct 2010 23:33:23 +0000 (16:33 -0700)
configure the suspend platform data for stingray with conservative
values for the PMU timers, and specify LP1 (DRAM in self-refresh,
core voltage on) as the default suspend mode.

to configure LP2 (DRAM active, core voltage on) as the suspend mode,
set .dram_suspend = false in stingray_suspend.

Change-Id: Icf991f916a06a22b0878be0cc9790e7173d986db

arch/arm/mach-tegra/board-stingray.c

index c3846c1012be3e74e849dea0e386780d7392fe27..8d0ec723d9a361c7dfce25ab7df2568fcd0a0526 100644 (file)
@@ -50,6 +50,7 @@
 #include "clock.h"
 #include "gpio-names.h"
 #include "devices.h"
+#include "power.h"
 
 /* NVidia bootloader tags */
 #define ATAG_NVIDIA            0x41000801
@@ -696,11 +697,28 @@ static int __init stingray_revision_parse(char *options)
 }
 __setup("hw_rev=", stingray_revision_parse);
 
+static struct tegra_suspend_platform_data stingray_suspend = {
+       .cpu_timer = 5000,
+       .cpu_off_timer = 5000,
+       .core_timer = 0x7e7e,
+       .core_off_timer = 0xf,
+       .separate_req = true,
+        .corereq_high = true,
+       .sysclkreq_high = true,
+       .dram_suspend = true,
+       .core_off = false,
+       .wake_enb = 0,
+       .wake_low = 0,
+       .wake_high = 0,
+       .wake_any = 0,
+};
+
 static void __init tegra_stingray_init(void)
 {
        struct clk *clk;
 
        tegra_common_init();
+       tegra_init_suspend(&stingray_suspend);
 
        /* Stingray has a USB switch that disconnects the usb port from the AP20
           unless a factory cable is used, the factory jumper is set, or the