mfd: pmic8058: Ack interrupts before handling them
There could be a case where
- ADC interrupt is handled and a next request is queued up
- The interrupt thread gets scheduled out just before acking the interrupt
- ADC hardware completes the queued request and raises the next interrupt
- The interrupt thread now gets a chance to run and acks the adc interrupt.
Note this acks the next interrupt.
The above sequence of events leads to lost interrupts. Ack the interrupt
before calling the handle_nested_irq. If next interrupt is raised while the
current one's handler is still running, it will cause another invocation of
the interrupt handler to run.
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
1 file changed