From: crane cai <crane.cai@amd.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: vojtech@suse.cz, linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
XiaoGang Zheng <gang.zheng@amd.com>
Subject: Re: [PATCH] HPET: Workaround for a BIOS workaround on AMD SB700 platform
Date: Thu, 14 Aug 2008 17:10:24 +0800 [thread overview]
Message-ID: <1218705024.5646.17.camel@crane-laptop> (raw)
In-Reply-To: <20080814084129.GA1650@elte.hu>
On Thu, 2008-08-14 at 10:41 +0200, Ingo Molnar wrote:
> * crane cai <crane.cai@amd.com> wrote:
>
> > >From 9bd2f534f986768f1944e626e37af1c323e47dbb Mon Sep 17 00:00:00 2001
> > From: Crane Cai <crane.cai@amd.com>
> > Date: Thu, 14 Aug 2008 10:31:01 +0800
> > Subject: [PATCH] HPET: Workaround for a BIOS workaround on AMD SB700 platform
> >
> > On the AMD SB700 southbridge, between the revisions 0x30 to 0x3a, when
> > its spread-spectrum frequency modulation feature is enabled, the base
> > frequency used by the HPET will not be running on average slower than
> > nominal 14.318 MHz.
> >
> > Since there is no provision in the OS for HPET to work with properly
> > with slower frequency, the BIOS on this platform uses SMM to emulate
> > accesses to the HPET config register to supply a corrected base
> > frequency to compensate for it.
> >
> > However, due to the implementation of the SMM BIOS code, there is a
> > time window after the first access to the HPET, which triggers
> > initialization of the SMM code, in which the HPET isn't available.
> > Thus it's necessary to wait until the HPET emulation is ready, and
> > this is what the patch does on the affected machines.
>
> nice fix! I've applied it to tip/x86/urgent as the quirk is limited to
> this platform so it should be safe for v2.6.27 as well.
>
> Exactly what kind of failure mode have you seen without the quirk? Do we
> read out the wrong values and thus hpet_clocksource_register() is
> calibrated incorrectly and you can get non-functional high-res timers?
> Have you seen hangs/crashes due to that, or incorrect timings?
System might loop in TSC calibration in booting. System tick can not correctly set.
> > Signed-off-by: XiaoGang Zheng <gang.zheng@amd.com>
> > Signed-off-by: Crane Cai <crane.cai@amd.com>
>
> A quick question: the signoff order indicates that the patch has been
> authored by XiaoGang Zheng. Or is the reverse order intended? (you wrote
> the patch and XiaoGang Zheng processed it further)
XiaoGang insures that HPET check method in hardware view.
I refine the method and generate the patch.
Vojtech and Zahir refine the description.
This issue is cleared by Joachim and many other persons in SUSE.
Thanks all.
>
> Ingo
>
-Crane
next prev parent reply other threads:[~2008-08-14 9:10 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-14 3:13 [PATCH] HPET: Workaround for a BIOS workaround on AMD SB700 platform crane cai
2008-08-14 8:41 ` Ingo Molnar
2008-08-14 9:10 ` crane cai [this message]
2008-08-14 9:04 ` Ingo Molnar
2008-08-14 10:11 ` Thomas Gleixner
2008-08-15 2:09 ` crane cai
2008-08-15 12:27 ` Ingo Molnar
2008-08-14 14:11 ` Lennart Sorensen
2008-08-14 14:14 ` Vojtech Pavlik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1218705024.5646.17.camel@crane-laptop \
--to=crane.cai@amd.com \
--cc=gang.zheng@amd.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
--cc=vojtech@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.