working version of IRQ kernel driver