summaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm')
-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 1cbe0b39be5f..33a90a9d9501 100644
--- a/arch/arm/mach-tegra/board-enterprise-power.c
+++ b/arch/arm/mach-tegra/board-enterprise-power.c
@@ -341,6 +341,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);
@@ -354,6 +364,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;
}