RE: Incorrect mdelay() results on Power Managed Machines x86

Grover, Andrew
2001-03-30T17:19:19Z

I'm not sure what you mean by well-defined. Do you mean, does it have a
fixed address? No, it is relocatable. The ACPI driver can find it because
the base address is specified in the ACPI tables. After the ACPI driver is
loaded the driver could export a pmtimer read function. This is great except
that anything before ACPI load would be out of luck.

After reading a chipset datasheet (in this case for the ICH-2M) both the
8254 timers and the PM timer are driven off a 14.31818 MHz clock input - the
PM timer is that divided by 4 and the 8254 is that divided by 12.

Is there any way we could use the 8254 timer for a reliable udelay? Not as
accurate, but no ACPI dependency.

Regards -- Andy

> From: Alan Cox [mailto:alan@lxorguk.ukuu.org.uk]
> > I know on ACPI systems you are guaranteed a PM timer
> running at ~3.57 Mhz.
> > Could udelay use that, or are there other timers that are
> better (maybe
> > without the ACPI dependency)?
>
> We could use that if ACPI was present. It might be worth
> exploring. Is this
> PM timer well defined for accesses ?