summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorvenu byravarasu <vbyravarasu@nvidia.com>2011-06-22 14:46:08 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:47:08 -0800
commitfc7dd3747b98a85a2725404c81192e761d236e3a (patch)
treee7762ef66b75fd179d2277ba16d1346c2749fb49 /arch
parentf434dc2ff6d8cf94415fc13c643aa91fb23c4f01 (diff)
arm: tegra: enterprise: adding power off support.
Board related changes, needed to turn off the device, are being addded. bug 833661 Original-Change-Id: Ia5f5f69fc19367995e6ad988a185825bd7b4d969 Reviewed-on: http://git-master/r/36670 Reviewed-by: Niket Sirsi <nsirsi@nvidia.com> Tested-by: Niket Sirsi <nsirsi@nvidia.com> Rebase-Id: Reaa3eb086baabd1d3b37a86555c7d2cfcb2eea68
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-tegra/board-enterprise-power.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-enterprise-power.c b/arch/arm/mach-tegra/board-enterprise-power.c
index b42940e6090e..cb98b01032cb 100644
--- a/arch/arm/mach-tegra/board-enterprise-power.c
+++ b/arch/arm/mach-tegra/board-enterprise-power.c
@@ -340,6 +340,16 @@ static int __init enterprise_gpio_switch_regulator_init(void)
return platform_device_register(&gswitch_regulator_pdata);
}
+static void enterprise_power_off(void)
+{
+ int ret;
+ pr_info("enterprise: Powering off the device\n");
+ ret = tps80031_power_off();
+ if (ret)
+ pr_err("enterprise: failed to power off\n");
+ while(1);
+}
+
int __init enterprise_regulator_init(void)
{
void __iomem *pmc = IO_ADDRESS(TEGRA_PMC_BASE);
@@ -353,6 +363,7 @@ int __init enterprise_regulator_init(void)
i2c_register_board_info(4, enterprise_regulators, 1);
enterprise_gpio_switch_regulator_init();
+ pm_power_off = enterprise_power_off;
return 0;
}