-
Reading the input status register resets the interrupt status register. If an interrupt from the GPIO-Expander to the SoC is issued and an additional GPIO read occurs at the same time, the GPIO read might reset the interrupt status register (by reading the input status register). The IRQ routine of the GPIO-Expander is then unable to determine on which input an interrupt occurred. To prevent this from happening, the interrupt status register is read before each read of the input status register and the result is saved for later processing. In the IRQ routine, the current interrupt status register value is then combined with the stored value.
31c0eae0
Loading