[ARM] generic_timer: Minor fixes and cleanups

We can get an spurious interrupt on buggy hardware or buggy simulator
hence ignore spurious interrupts

Further, on SMP host we can also get virtual/physical interrupt meant
for normal VCPU which was previous running hence ignore interrupt
in this case too.

This patch also does lot of code cleanups.

Signed-off-by: Anup Patel <anup@brainfault.org>