diff options
author | venu byravarasu <vbyravarasu@nvidia.com> | 2011-06-17 12:37:57 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:47:07 -0800 |
commit | 9c0b475bdd5a9045ab88e4cfcbd636b403391a1f (patch) | |
tree | f137453d580ecc43663a6c7ac14815794d6df4a7 /drivers/mfd | |
parent | aa250fb474c45a1eb9a4bb4205801f41fc40c308 (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.c | 12 |
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) |