mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
iio: light: gp2ap002: re-enable irq if runtime suspend fails
gp2ap002_runtime_suspend() disables the irq before writing OPMOD. If
the write fails, the callback returns an error with the irq still
disabled while the PM core marks the device active again.
re-enable the irq before returning the error so the irq state matches
the active state the PM core restores.
Fixes: 97d642e230 ("iio: light: Add a driver for Sharp GP2AP002x00F")
Signed-off-by: Nikhil Gautam <nikhilgtr@gmail.com>
Signed-off-by: Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
This commit is contained in:
parent
579c049b4c
commit
5d89e7cbac
|
|
@ -649,6 +649,7 @@ static int gp2ap002_runtime_suspend(struct device *dev)
|
|||
/* Disable chip and IRQ, everything off */
|
||||
ret = regmap_write(gp2ap002->map, GP2AP002_OPMOD, 0x00);
|
||||
if (ret) {
|
||||
enable_irq(gp2ap002->irq);
|
||||
dev_err(gp2ap002->dev, "error setting up operation mode\n");
|
||||
return ret;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user