MCP23S17 Interrupt Issue
Constant 0 on INTB pin means that the interrupt is active (in both configurations, active-low push-pull and open-drain).

It is not clear where do you have 10k resistor, on INTB pin or on GPB0 - GPB2 pins. If you don't have external pull-ups on GPB pins, you should enable internal pull-ups through GPPU register.

You should also clear the interrupt by reading INTCAP or GPIO register.


  The interrupt remains active until the INTCAP or GPIO register is read.


3.6.4 INTERRUPT OPERATION