Re: [PATCH] Replace nvidia timer override quirk with pci id list

From: Prakash Punnoor
Date: Fri Feb 08 2008 - 10:13:55 EST


On the day of Friday 08 February 2008 Andi Kleen hast written:
> On Thu, Feb 07, 2008 at 10:21:18PM +0100, Prakash Punnoor wrote:
> > On the day of Thursday 07 February 2008 Andi Kleen hast written:
> > > Replace the old "for all of nvidia" quirk with a quirk containing pci
> > > device ID. I goobled this list together from pci.ids and googling and
> > > it may be incomplete, but so far I haven't had complaints.
> > >
> > > + QBRIDGE(PCI_VENDOR_ID_NVIDIA, 0x02f0, nvidia_timer), /* mcp 51/nf4 ?
> > > */
> >
> > If you want to skip timer override on this board, this is a *NAK* from
> > me. I told you the last time, it only works reliably here on MCP51 with
> > timer
>
> Hmm, if you told me it got lost somewhere, sorry.

I at least found this post: http://lkml.org/lkml/2006/8/13/2 though I remeber
we had some discussions. ;-)

>
> > override working. Even before Asus released a bios which had an option to
> > enable the hpet, I needed the override or I got irratic behaviour. Since
> > I got hpet enabled I gave up on arguing as the wrongly triggered quirk
> > didn't bug me anymore.
>
> Ok we can keep the HPET check if that makes you more happy.
>
> > IIRC my nforce2 needed the override. I didn't see that in the list.
>
> The list only contains IDs where the override should be ignored; so
> if it has a correct one and it's not there everything is fine.

Sorry, I meant the opposite. I needed the acpi_skip_timer_override kernel
parameter for nforce2, thus no override. So this chipset is missing here. At
least I remember that my nforce2 needed the skipping,
otherwise the timer stayed in XT-PIC mode even when APIC was requested.

> I'm appending a revised patch. Does it work for you?

I haven't tested it, but it would "work" as it would bail out in my case
because of the hpet check. The problem I see with this approach - as with the
old one - it simply wants to ignore the override for a whole bunch of
chipsets. (The old one is catastrophic as it even doesn't care for chipset
revision.) And checking for hpet is just heuristics (or what is the
rationale behind it?) not a real check whether the override should be ignored
or not. Are you actually sure that so many nforceX boards have broken bioses?
References? I would prefer a DMI check and only apply the quirk for *known*
broken bioses instead fo "blindly" doing it as in my case my mcp51 system is
unstable with the quirk applied - it *never* needed the quirk.

I found this:
http://www.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/test/2.6.5/20040422223905-nforce2_timer.patch

So it seems the original (proposed?) version did a DMI check for known broken
bioses. Why was this approach abandoned?

According to
http://lkml.org/lkml/2006/10/19/427
it seems only nforce2 and perhaps some nforce3 are relevant.


To sum it up, I think it is a step into the right direction, but still not
correct.
--
(°= =°)
//\ Prakash Punnoor /\\
V_/ \_V

Attachment: signature.asc
Description: This is a digitally signed message part.