diff options
author | Prashant Gaikwad <pgaikwad@nvidia.com> | 2011-03-10 16:27:49 +0530 |
---|---|---|
committer | Varun Colbert <vcolbert@nvidia.com> | 2011-03-14 17:43:01 -0800 |
commit | 5aeaa79acebc74914c4de01c8b0f046094a0db32 (patch) | |
tree | 35ae95baecf3289c91db9e327a9437f35a17c936 | |
parent | 0ea635e64cc77747e9aeedeb294c81a521f31e4a (diff) |
[ARM] tegra: set pm_power_off to whistler routine
for whistler, implement pm_power_off with max8907c's power off routine.
Bug 799957
Bug 800602 (Cold boot)
Change-Id: I003547d55a4203f2d04ba0086199b61d05936563
Reviewed-on: http://git-master/r/22388
Reviewed-by: Varun Colbert <vcolbert@nvidia.com>
Tested-by: Varun Colbert <vcolbert@nvidia.com>
-rw-r--r-- | arch/arm/mach-tegra/board-whistler.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-whistler.c b/arch/arm/mach-tegra/board-whistler.c index ff5f3180c83c..e6b76e01f622 100644 --- a/arch/arm/mach-tegra/board-whistler.c +++ b/arch/arm/mach-tegra/board-whistler.c @@ -34,6 +34,7 @@ #include <linux/gpio_scrollwheel.h> #include <linux/input.h> #include <linux/platform_data/tegra_usb.h> +#include <linux/mfd/max8907c.h> #include <linux/usb/android_composite.h> #include <linux/memblock.h> @@ -510,6 +511,22 @@ static int __init whistler_gps_init(void) return 0; } +static void whistler_power_off(void) +{ + int ret; + + ret = max8907c_power_off(); + if (ret) + pr_err("whistler: failed to power off\n"); + + while (1); +} + +static void __init whistler_power_off_init(void) +{ + pm_power_off = whistler_power_off; +} + static const struct i2c_board_info whistler_codec_info[] = { { I2C_BOARD_INFO("wm8753", 0x1a), @@ -547,6 +564,7 @@ static void __init tegra_whistler_init(void) whistler_usb_init(); whistler_scroll_init(); whistler_codec_init(); + whistler_power_off_init(); } int __init tegra_whistler_protected_aperture_init(void) |