]> err.no Git - linux-2.6/blobdiff - drivers/char/hpet.c
[PATCH] hpet: fix drift and url
[linux-2.6] / drivers / char / hpet.c
index 5ec732e6ca9221ee3b3ea5fb9aa71c0424e51725..a695f25e4497b647cb20c776f1f2f0a0e6b4d545 100644 (file)
@@ -44,7 +44,7 @@
 /*
  * The High Precision Event Timer driver.
  * This driver is closely modelled after the rtc.c driver.
- * http://www.intel.com/labs/platcomp/hpet/hpetspec.htm
+ * http://www.intel.com/hardwaredesign/hpetspec.htm
  */
 #define        HPET_USER_FREQ  (64)
 #define        HPET_DRIFT      (500)
@@ -712,7 +712,7 @@ static void hpet_register_interpolator(struct hpets *hpetp)
        ti->shift = 10;
        ti->addr = &hpetp->hp_hpet->hpet_mc;
        ti->frequency = hpet_time_div(hpets->hp_period);
-       ti->drift = ti->frequency * HPET_DRIFT / 1000000;
+       ti->drift = HPET_DRIFT;
        ti->mask = -1;
 
        hpetp->hp_interpolator = ti;
@@ -834,7 +834,7 @@ int hpet_alloc(struct hpet_data *hdp)
        printk("\n");
 
        ns = hpetp->hp_period;  /* femptoseconds, 10^-15 */
-       do_div(ns, 1000000);    /* convert to nanoseconds, 10^-9 */
+       ns /= 1000000;          /* convert to nanoseconds, 10^-9 */
        printk(KERN_INFO "hpet%d: %ldns tick, %d %d-bit timers\n",
                hpetp->hp_which, ns, hpetp->hp_ntimer,
                cap & HPET_COUNTER_SIZE_MASK ? 64 : 32);