diff options
author | Mallikarjun Kasoju <mkasoju@nvidia.com> | 2012-09-21 13:08:56 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2013-09-14 12:36:15 -0700 |
commit | b23c53b324f26e3ad1ef6189403cfcdaf9afff8d (patch) | |
tree | a668b88755559cdaaf213588332b945064d6de84 /drivers/mfd/palmas.c | |
parent | dfd8b9abc66bbc888f019525fea2038a3d35671b (diff) |
mfd: palmas: add power off functionality
Add power off functionality to turn off palmas PMU
Bug 1051970
Reviewed-on: http://git-master/r/134297
(cherry picked from commit 25dfe79ea1203a4a8b4b6a232237d83a9070537f)
Change-Id: I28a956320894ff036bf479faa9a31a3f2ae7cadf
Signed-off-by: Mallikarjun Kasoju <mkasoju@nvidia.com>
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/143146
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Rebase-Id: R651e8c059039cd89116435ae085a9b49fda21d5f
Diffstat (limited to 'drivers/mfd/palmas.c')
-rw-r--r-- | drivers/mfd/palmas.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/mfd/palmas.c b/drivers/mfd/palmas.c index 16237b8f25e1..cc2baee06947 100644 --- a/drivers/mfd/palmas.c +++ b/drivers/mfd/palmas.c @@ -519,6 +519,15 @@ static void palmas_dt_to_pdata(struct i2c_client *i2c, palmas_set_pdata_irq_flag(i2c, pdata); } +static struct palmas *palmas_dev; +static void palmas_power_off(void) +{ + if (!palmas_dev) + return; + + palmas_control_update(palmas_dev, PALMAS_DEV_CTRL, 1, 0); +} + static int palmas_i2c_probe(struct i2c_client *i2c, const struct i2c_device_id *id) { @@ -726,6 +735,10 @@ static int palmas_i2c_probe(struct i2c_client *i2c, if (ret < 0) goto err_devices; + if (pdata->use_power_off && !pm_power_off) + pm_power_off = palmas_power_off; + + palmas_dev = palmas; return ret; err_devices: |