diff options
author | Jaewon Kim <jaewon02.kim@samsung.com> | 2015-06-05 13:32:27 +0900 |
---|---|---|
committer | Chanwoo Choi <cw00.choi@samsung.com> | 2015-08-10 11:48:54 +0900 |
commit | 135d9f7d135a11ff4a5279325b06c5e8c82952b5 (patch) | |
tree | 871b66048ec160f6f63e5680d2c0f72cff71ffff /drivers/extcon/extcon-max77843.c | |
parent | f7644cbfcdf03528f0f450f3940c4985b2291f49 (diff) |
extcon: max77843: Clear IRQ bits state before request IRQ
IRQ signal before driver probe is needless because driver sends
current state after platform booting done.
So, this patch clears MUIC IRQ bits before request IRQ.
Signed-off-by: Jaewon Kim <jaewon02.kim@samsung.com>
Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Diffstat (limited to 'drivers/extcon/extcon-max77843.c')
-rw-r--r-- | drivers/extcon/extcon-max77843.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/extcon/extcon-max77843.c b/drivers/extcon/extcon-max77843.c index fac2f1417a79..cc5e7bca38c8 100644 --- a/drivers/extcon/extcon-max77843.c +++ b/drivers/extcon/extcon-max77843.c @@ -781,6 +781,15 @@ static int max77843_muic_probe(struct platform_device *pdev) /* Support virtual irq domain for max77843 MUIC device */ INIT_WORK(&info->irq_work, max77843_muic_irq_work); + /* Clear IRQ bits before request IRQs */ + ret = regmap_bulk_read(max77843->regmap_muic, + MAX77843_MUIC_REG_INT1, info->status, + MAX77843_MUIC_IRQ_NUM); + if (ret) { + dev_err(&pdev->dev, "Failed to Clear IRQ bits\n"); + goto err_muic_irq; + } + for (i = 0; i < ARRAY_SIZE(max77843_muic_irqs); i++) { struct max77843_muic_irq *muic_irq = &max77843_muic_irqs[i]; unsigned int virq = 0; |