summaryrefslogtreecommitdiff
path: root/drivers/mfd
diff options
context:
space:
mode:
authorvenu byravarasu <vbyravarasu@nvidia.com>2011-06-17 12:37:57 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:47:07 -0800
commit9c0b475bdd5a9045ab88e4cfcbd636b403391a1f (patch)
treef137453d580ecc43663a6c7ac14815794d6df4a7 /drivers/mfd
parentaa250fb474c45a1eb9a4bb4205801f41fc40c308 (diff)
mfd: tps80031: Adding Power off functionality
Implementing power off functionality to turn off the device. bug 833661 Original-Change-Id: I2a08f96de7a9814967c774530659f4db47946acc Reviewed-on: http://git-master/r/35054 Reviewed-by: Narendra Damahe <ndamahe@nvidia.com> Tested-by: Venu Byravarasu <vbyravarasu@nvidia.com> Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com> Rebase-Id: R9266dff9162e4d6e372c7807275c0f22b349464d
Diffstat (limited to 'drivers/mfd')
-rw-r--r--drivers/mfd/tps80031.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/mfd/tps80031.c b/drivers/mfd/tps80031.c
index 10a7f057b1d6..9167e1b5faec 100644
--- a/drivers/mfd/tps80031.c
+++ b/drivers/mfd/tps80031.c
@@ -52,6 +52,10 @@
#define REGEN2_BASE_ADD 0xB1
#define SYSEN_BASE_ADD 0xB4
+/* device control registers */
+#define TPS80031_PHOENIX_DEV_ON 0x25
+#define DEVOFF 1
+
#define CLK32KAO_BASE_ADD 0xBA
#define CLK32KG_BASE_ADD 0xBD
#define CLK32KAUDIO_BASE_ADD 0xC0
@@ -313,15 +317,11 @@ static struct tps80031 *tps80031_dev;
int tps80031_power_off(void)
{
struct tps80031_client *tps = &tps80031_dev->tps_clients[SLAVE_ID1];
- struct device *dev;
if (!tps->client)
return -EINVAL;
-
- dev = &tps->client->dev;
-
- /* FIXME!! Put the logic here to switch off pmu*/
- return 0;
+ dev_info(&tps->client->dev, "switching off PMU\n");
+ return __tps80031_write(tps->client, TPS80031_PHOENIX_DEV_ON, DEVOFF);
}
static int tps80031_gpio_get(struct gpio_chip *gc, unsigned offset)