>Although from the earlier discussion it still isn't quite clear to me:
>Why must the HPET RTC emulation need to fire the alarm every 16ms? Is that not 
>something that can be fixed?

This is hpet driver's behavior. Please check the following comment which is 
copied from the file hpet.c

/* HPET in LegacyReplacement Mode eats up RTC interrupt line. When, HPET
 * is enabled, we support RTC interrupt functionality in software.
 * RTC has 3 kinds of interrupts:
 * 1) Update Interrupt - generate an interrupt, every sec, when RTC clock
 *    is updated
 * 2) Alarm Interrupt - generate an interrupt at a specific time of day
 * 3) Periodic Interrupt - generate periodic interrupt, with frequencies
 *    2Hz-8192Hz (2Hz-64Hz for non-root user) (all freqs in powers of 2)
 * (1) and (2) above are implemented using polling at a frequency of
 * 64 Hz. The exact frequency is a tradeoff between accuracy and interrupt
 * overhead. (DEFAULT_RTC_INT_FREQ)
 * For (3), we use interrupts at 64Hz or user specified periodic
 * frequency, whichever is higher.
 */
 
The alarm interrupt have a frequency of 64Hz. This is a tradeoff between 
accuracy and interrupt overhead. 
So that, I think 16ms(1/64s) interrupt is expected unless we change the 
driver's design.
However, changing the driver's behavior is a huge modification. This driver 
already exists for a long time
(starting from  commit id :1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 or ealier).
So, I tend not to modify this driver's behavior.

Thanks
Lee, Zhuo-hao

Reply via email to