x86: HPET: read from HPET_Tn_CMP() not HPET_T0_CMP
authorMatt Fleming <mjf@gentoo.org>
Sun, 2 Nov 2008 16:04:20 +0000 (16:04 +0000)
committerThomas Gleixner <tglx@apollo.(none)>
Mon, 10 Nov 2008 16:38:07 +0000 (17:38 +0100)
In hpet_next_event() we check that the value we just wrote to
HPET_Tn_CMP(timer) has reached the chip. Currently, we're checking that
the value we wrote to HPET_Tn_CMP(timer) is in HPET_T0_CMP, which, if
timer is anything other than timer 0, is likely to fail.

Signed-off-by: Matt Fleming <mjf@gentoo.org>
Cc: mingo@elte.hu
Cc: venkatesh.pallipadi@intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/kernel/hpet.c

index f10f9461a43daf25f3cb05a391f51966fe86860e..cfe6aa56f71b390af770d1c204b4c4e6749fdff4 100644 (file)
@@ -322,7 +322,7 @@ static int hpet_next_event(unsigned long delta,
         * what we wrote hit the chip before we compare it to the
         * counter.
         */
-       WARN_ON_ONCE((u32)hpet_readl(HPET_T0_CMP) != cnt);
+       WARN_ON_ONCE((u32)hpet_readl(HPET_Tn_CMP(timer)) != cnt);
 
        return (s32)((u32)hpet_readl(HPET_COUNTER) - cnt) >= 0 ? -ETIME : 0;
 }