To initialize the device, previous interrupts need to be cleared
 while loading the driver.

Signed-off-by: Milo(Woogyom) Kim <milo....@ti.com>
---
 drivers/power/lp8727_charger.c |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/power/lp8727_charger.c b/drivers/power/lp8727_charger.c
index 134ed5c..b5567bc 100644
--- a/drivers/power/lp8727_charger.c
+++ b/drivers/power/lp8727_charger.c
@@ -17,6 +17,7 @@
 #include <linux/power_supply.h>
 #include <linux/platform_data/lp8727.h>
 
+#define LP8788_NUM_INTREGS     2
 #define DEFAULT_DEBOUNCE_MSEC  270
 
 /* Registers */
@@ -136,6 +137,13 @@ static int lp8727_init_device(struct lp8727_chg *pchg)
 {
        u8 val;
        int ret;
+       u8 intstat[LP8788_NUM_INTREGS];
+
+       /* clear interrupts */
+       ret = lp8727_read_bytes(pchg, INT1, intstat, LP8788_NUM_INTREGS);
+       if (ret)
+               return ret;
+
 
        val = ID200_EN | ADC_EN | CP_EN;
        ret = lp8727_write_byte(pchg, CTRL1, val);
-- 
1.7.9.5


Best Regards,
Milo


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to