x86: HPET force enable o ICH7 and later

Force detect and/or enable HPET on ICH chipsets.  This patch just handles the
detection part and following patches use this information.  Adds a function to
repeat the force enabling during resume time.

Using HPET this way, instead of PIT increases the time CPUs can reside in
C-state when system is totally idle.  On my test system with Core 2 Duo,
average C-state residency goes up from ~20mS to ~80mS.

[ Build fixed from Andrew Morton ]

Signed-off-by: Venkatesh Pallipadi <[email protected]>
Cc: Andi Kleen <[email protected]>
Cc: john stultz <[email protected]>
Cc: Greg KH <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
Signed-off-by: Arjan van de Ven <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
This commit is contained in:
Venki Pallipadi 2007-10-12 23:04:23 +02:00 • committed by Thomas Gleixner
commit d54bd57d65
2 changed files with 103 additions and 0 deletions

View file

@ -66,6 +66,7 @@ extern unsigned long hpet_address;
extern int is_hpet_enabled(void);
extern int hpet_enable(void);
extern unsigned long hpet_readl(unsigned long a);
extern void ich_force_hpet_resume(void);
#ifdef CONFIG_HPET_EMULATE_RTC