Fix potential interrupt storm

Enable and disable callback via at source rather than
trying to keep a local disabled flag for the interrupt.
If we don't do this we can get into a interrupt storm on
startup.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>