diff options
author | Johnny Qiu <joqiu@nvidia.com> | 2012-09-28 16:51:38 -0700 |
---|---|---|
committer | Mrutyunjay Sawant <msawant@nvidia.com> | 2012-10-29 07:27:42 -0700 |
commit | a960a866b2f2648d2ef2f134af33d1e2eb3717e7 (patch) | |
tree | a6173b178bdeb30960c94e28a0b99c9640ebcdba /drivers/mfd | |
parent | e2888781bb27853e8b7cc5eb9b8ceeaf1057e3d4 (diff) |
mfd: palmas: configure interrupt line output polarity
set interrupt line output polarity according to irq trigger level
in platform data.
Signed-off-by: Johnny Qiu <joqiu@nvidia.com>
Reviewed-on: http://git-master/r/139856
(cherry picked from commit 540d13a543bc04a506a5031be360c6cf958a316e)
Change-Id: Ief9b72eb6fd6a0e4da00c6d7055a3dd2c621b1da
Signed-off-by: naveen kumar arepalli <naveenk@nvidia.com>
Reviewed-on: http://git-master/r/147895
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'drivers/mfd')
-rw-r--r-- | drivers/mfd/palmas.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/mfd/palmas.c b/drivers/mfd/palmas.c index 2e73c5f40caa..133a3c7f38cb 100644 --- a/drivers/mfd/palmas.c +++ b/drivers/mfd/palmas.c @@ -584,6 +584,16 @@ static int __devinit palmas_i2c_probe(struct i2c_client *i2c, } } + /* Change interrupt line output polarity */ + slave = PALMAS_BASE_TO_SLAVE(PALMAS_PU_PD_OD_BASE); + addr = PALMAS_BASE_TO_REG(PALMAS_PU_PD_OD_BASE, PALMAS_POLARITY_CTRL); + regmap_read(palmas->regmap[slave], addr, ®); + if (pdata->irq_type & IRQ_TYPE_LEVEL_HIGH) + reg |= PALMAS_POLARITY_CTRL_INT_POLARITY; + else + reg &= ~PALMAS_POLARITY_CTRL_INT_POLARITY; + regmap_write(palmas->regmap[slave], addr, reg); + /* Change IRQ into clear on read mode for efficiency */ slave = PALMAS_BASE_TO_SLAVE(PALMAS_INTERRUPT_BASE); addr = PALMAS_BASE_TO_REG(PALMAS_INTERRUPT_BASE, PALMAS_INT_CTRL); |