Re: i386 HPET code

Vojtech Pavlik
2005-02-04T20:10:37Z

On Fri, Feb 04, 2005 at 09:02:38PM +0100, Vojtech Pavlik wrote:
> On Thu, Feb 03, 2005 at 10:30:26PM +0100, Andi Kleen wrote:
> > On Thu, Feb 03, 2005 at 06:28:27AM -0800, Pallipadi, Venkatesh wrote:
> > >
> > > Hi John, Andrew,
> > >
> > >
> > > Can you check whether only the following change makes the problem go
> > > away. If yes, then it looks like a hardware issue.
> > >
> > > > hpet_writel(hpet_tick, HPET_T0_CMP);
> > > >+ hpet_writel(hpet_tick, HPET_T0_CMP); /* AK: why twice? */
> >
> >
> > Ask Vojtech (cced), he wrote the x86-64 HPET code.
>
> It took me a while to remember, but:
>
> The first write after writing TN_SETVAL to the config register sets the
> counter value, the second write sets the threshold.
>
> When you only do the first write you never set the threshold and
> interrupts won't be generated properly.

That means it's not a bug, but a (documented) feature.

--
Vojtech Pavlik
SuSE Labs, SuSE CR