android_kernel_xiaomi_sm8350/arch/i386/kernel/timers
OGAWA Hirofumi dbffa47161 [PATCH] PM-Timer: don't use workaround if chipset is not buggy
Current timer_pm.c reads I/O port triple times, in order to avoid the bug
of chipset.  But I/O port is slow.

2.6.16 (pmtmr)
Simple gettimeofday: 3.6532 microseconds

2.6.16+patch (pmtmr)
Simple gettimeofday: 1.4582 microseconds

[if chip is buggy, probably it will be 7us or more in 4.2% of probability.]

This patch adds blacklist of buggy chip, and if chip is not buggy, this
uses fast normal version instead of slow workaround version.

If chip is buggy, warnings "pmtmr is slow".  But sounds like there is gray
zone.  I found the PIIX4 errata, but I couldn't find the ICH4 errata.  But
some motherboard seems to have problem.

So, if we found a ICH4, generate warnings, and use a workaround version.
If user's ICH4 is good, the user can specify the "pmtmr_good" boot
parameter to use fast version.

Acked-by: John Stultz <johnstul@us.ibm.com>
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-27 08:44:37 -08:00
..
common.c [PATCH] CPU hotplug: fix hpet sectioning 2005-06-25 16:24:28 -07:00
Makefile
timer_cyclone.c [PATCH] x86: i8253/i8259A lock cleanup 2005-06-30 08:45:10 -07:00
timer_hpet.c [PATCH] x86: mark cyc2ns_scale readmostly 2006-03-22 07:53:55 -08:00
timer_none.c
timer_pit.c [PATCH] x86: fix cpu_khz with clock=pit 2005-11-13 18:14:13 -08:00
timer_pm.c [PATCH] PM-Timer: don't use workaround if chipset is not buggy 2006-03-27 08:44:37 -08:00
timer_tsc.c [PATCH] x86: mark cyc2ns_scale readmostly 2006-03-22 07:53:55 -08:00
timer.c [PATCH] Platform SMIs and their interferance with tsc based delay calibration 2005-06-23 09:45:08 -07:00