From: Qing Xu <qingx@xxxxxxxxxxx>
1.88pm80x do not have interrupt mask registers and we use
interrupt enable register. So we need to set mask_invert flag.
2.add support for D0 version
Signed-off-by: Xiaofan Tian <tianxf@xxxxxxxxxxx>
Signed-off-by: Qing Xu <qingx@xxxxxxxxxxx>
---
drivers/mfd/88pm800.c | 4 +++-
drivers/mfd/88pm805.c | 1 +
2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/drivers/mfd/88pm800.c b/drivers/mfd/88pm800.c
index e1525ab..3fcc8dd 100644
--- a/drivers/mfd/88pm800.c
+++ b/drivers/mfd/88pm800.c
@@ -119,7 +119,8 @@ enum {
PM800_CHIP_A1 = 0x61,
PM800_CHIP_B0 = 0x62,
PM800_CHIP_C0 = 0x63,
- PM800_CHIP_END = PM800_CHIP_C0,
+ PM800_CHIP_D0 = 0x64,
+ PM800_CHIP_END = PM800_CHIP_D0,
/* Make sure to update this to the last stepping */
PM8XXX_CHIP_END = PM800_CHIP_END
@@ -362,6 +363,7 @@ static struct regmap_irq_chip pm800_irq_chip = {
.status_base = PM800_INT_STATUS1,
.mask_base = PM800_INT_ENA_1,
.ack_base = PM800_INT_STATUS1,
+ .mask_invert = 1,
};
static int pm800_pages_init(struct pm80x_chip *chip)
diff --git a/drivers/mfd/88pm805.c b/drivers/mfd/88pm805.c
index 8c9e25a..39a91bd 100644
--- a/drivers/mfd/88pm805.c
+++ b/drivers/mfd/88pm805.c
@@ -187,6 +187,7 @@ static struct regmap_irq_chip pm805_irq_chip = {
.status_base = PM805_INT_STATUS1,
.mask_base = PM805_INT_MASK1,
.ack_base = PM805_INT_STATUS1,
+ .mask_invert = 1,
};
static int __devinit device_805_init(struct pm80x_chip *chip)