>       if (!is_hpet_capable())
> @@ -278,6 +279,14 @@ int __init hpet_enable(void)
>       /* Start the counter */
>       hpet_start_counter();
>  
> +     /* Verify whether hpet counter works */
> +     t1 = hpet_read();
> +     udelay(50);

Are you sure udelay is calibrated at this point? I didn't think so.
In fact it needs the external clocks and it's a chicken and egg problem.

It might be safer to use a long loop with io port accesses or similar.

-Andi


> +     if (t1 == hpet_read()) {
> +             printk(KERN_WARNING "HPET counter is defect\n");
> +             goto out_nohpet;
> +     }
> +
>       /* Initialize and register HPET clocksource
>        *
>        * hpet period is in femto seconds per cycle
> 
> 
> 


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to