at least wrt. suspend/resume it should be fine, because in
arch/x86_64/kernel/time.c it does this upon resume:
static int timer_resume(struct sys_device *dev)
{
if (hpet_address)
hpet_reenable();
else
i8254_timer_resume();
[ barring the issue that mixing two pieces of hardware like this in a
single resume function is wrong - all timer hardware should be
separated like we did it for i386. I've got 64-bit clockevents code in
-rt which does this separation. ]
there's no fundamental reason. x86_64 COW-ed hpet_timer.c and
time_hpet.c years ago and drifted off into different areas.
They should be unified: more power to arch/x86/ ;-)
Ingo
-