This patch fixes the mcp23s08 interrupt logic so that when multiple pins are changed at the same time, the proper number of pin changes are reported. Without this patch, if more than one pin is changed at a time on the mcp23s08, the kernel will only report back the pin that actually caused the interrupt. The second pin that changed at the same time will not report a change. This causes issues when both pins are being watched via their file descriptors in a poll(), since only one of the pins being watched will report a change. Note that I had to break up some of the logic in the IRQ handler so that I could follow the code - this may not be compliant with the kernel coding standards. This patch is against 4.9.9, although it should still apply without any issues to newer code. -Robert Middleton -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html