HPET interrupt missed

HPET interrupt missed


I have developed a simple HPET driver that supports both level- and edge-triggered interrupt modes.

I have tested periodicinterrupton three computers:

E8300 + P35 + ICH9

E4500 + 82801(?) + ICH7

Laptop Pentium M

Level-triggered interrupt works fine on all computers. Edge-triggered interrupt work fine on E8300 only. Other computers miss interrupts frequently. Pentium M often misses 1 and rarely 2 interrupts; E4500 often misses 20-30 interrupts in a series, and sometimes up to 50!

Simple ideas, like other process disabling interrupts, were already checked and rejected.

Do I miss something?Are there known chipset issues?

Here is skeleton of my driver:

__declspec(naked) void HpetHandler( void )


Save Registers;

Collect Statistics;

if (Level_Trigger) *InterruptStatusRegister= INTERRUPT_TIMER1;

*EOI= 0;

Restore Registers;



2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

We checked with our HPET expert contacts, but none of them support precisely the issue you're asking about -- they will either post here or supply us with more information for you if they are able to find any, though.

If you're doing this work for a company, you might try talking to your Intel rep or an FAE about it. Here's the info again on how to contact one:

If your company has its own Intel representative, you may wish to inquire whether they are able to assist with this inquiry. Your company's Purchasing Department will normally have your Intel representative's contact information. If you have no contact, please see http://www.intel.com/buy/networking/design.htm under "Design Components".

If your location is not listed, please see an Intel Authorized Distributor and ask for a Field Application Engineer (FAE). Our Intel Authorized Distributor list is also linked from the URL above.


Lexi S.

IntelSoftware NetworkSupport


Contact us

Leave a Comment

Please sign in to add a comment. Not a member? Join today