public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* x86: Fix HPET for Fujitsu u9200
@ 2008-12-16 11:39 Janne Kulmala
  2008-12-16 19:38 ` Ingo Molnar
  0 siblings, 1 reply; 2+ messages in thread
From: Janne Kulmala @ 2008-12-16 11:39 UTC (permalink / raw)
  To: x86, linux-kernel

HPET timer is listed in the ACPI table, but needs a quirk entry in order to
work. Unfortunately, the quirk code runs after first HPET hpet_enable() which
has already determined that the timer doesn't work (reads 0xFFFFFFFF). This
patch allows hpet_enable() to be called again after running the quirk code.

Signed-off-by: Janne Kulmala <janne.t.kulmala@tut.fi>

--- linux-2.6.28/arch/x86/kernel/quirks.c~	2008-12-16 12:58:48.000000000 +0200
+++ linux-2.6.28/arch/x86/kernel/quirks.c	2008-12-16 12:59:14.000000000 +0200
@@ -168,6 +168,8 @@
  			 ich_force_enable_hpet);
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_1,
  			 ich_force_enable_hpet);
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_4,
+			 ich_force_enable_hpet);
  DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH9_7,
  			 ich_force_enable_hpet);

--- linux-2.6.28/arch/x86/kernel/hpet.c~	2008-12-16 13:08:06.000000000 +0200
+++ linux-2.6.28/arch/x86/kernel/hpet.c	2008-12-16 13:10:29.000000000 +0200
@@ -811,7 +811,7 @@

  out_nohpet:
  	hpet_clear_mapping();
-	boot_hpet_disable = 1;
+	hpet_address = 0;
  	return 0;
  }



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: x86: Fix HPET for Fujitsu u9200
  2008-12-16 11:39 x86: Fix HPET for Fujitsu u9200 Janne Kulmala
@ 2008-12-16 19:38 ` Ingo Molnar
  0 siblings, 0 replies; 2+ messages in thread
From: Ingo Molnar @ 2008-12-16 19:38 UTC (permalink / raw)
  To: Janne Kulmala; +Cc: x86, linux-kernel, Pallipadi, Venkatesh


* Janne Kulmala <janne.t.kulmala@tut.fi> wrote:

> HPET timer is listed in the ACPI table, but needs a quirk entry in order 
> to work. Unfortunately, the quirk code runs after first HPET 
> hpet_enable() which has already determined that the timer doesn't work 
> (reads 0xFFFFFFFF). This patch allows hpet_enable() to be called again 
> after running the quirk code.
>
> Signed-off-by: Janne Kulmala <janne.t.kulmala@tut.fi>

applied to tip/timers/hpet, thanks Janne!

Venki, is this new hpet force-enable quirk entry generally OK:

 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_1,
                         ich_force_enable_hpet);
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_ICH8_4,
+                        ich_force_enable_hpet);

i guess it's OK since we enable hpet on ICH8_1 already. Should we perhaps 
convert these quirks somehow to some ">= threshold_version" condition, 
instead of having to enumerate everything?

	Ingo

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-12-16 19:39 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-12-16 11:39 x86: Fix HPET for Fujitsu u9200 Janne Kulmala
2008-12-16 19:38 ` Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox