]> git.baikalelectronics.ru Git - kernel.git/commit
ACPI/hpet: prevent boot hang when hpet=force used on ICH-4M
authorLen Brown <len.brown@intel.com>
Thu, 23 Apr 2009 22:59:43 +0000 (18:59 -0400)
committerLen Brown <len.brown@intel.com>
Fri, 24 Apr 2009 01:51:51 +0000 (21:51 -0400)
commit0161d3b1bd7e63235a00cb9ed5d253fee20dc6ef
tree77a1b7eb4406ac1e96aaddb8ded9ea517b5a869a
parent1e0aeebdb5124157dd204ae4c92d732bfd7443c5
ACPI/hpet: prevent boot hang when hpet=force used on ICH-4M

Linux tells ICH4 users that they can (manually) invoke
"hpet=force" to enable the undocumented ICH-4M HPET.
The HPET becomes available for both clocksource and clockevents.

But as of 26100fcc69004db110e839c9bb209c9dea4fef9e
(acpi: fix of pmtimer overflow that make Cx states time incorrect)
the HPET may be used via clocksource for idle accounting, and
hpet=force on an ICH4 box hangs boot.

It turns out that touching the MMIO HPET withing
the ARB_DIS part of C3 will hang the hardware.

The fix is to simply move the timer access outside
the ARB_DIS region.  This is a no-op on modern hardware
because ARB_DIS is no longer used.

http://bugzilla.kernel.org/show_bug.cgi?id=13087

Acked-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/processor_idle.c