* [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern
@ 2014-04-24 8:18 Feng Tang
2014-04-24 8:18 ` [PATCH 2/2] x86: Add quirk to disable HPET for baytrail platform Feng Tang
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Feng Tang @ 2014-04-24 8:18 UTC (permalink / raw)
To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, linux-kernel
Cc: Clemens Ladisch, John Stultz, Feng Tang
HPET on some platform has accuracy problem. Making
"boot_hpet_disable" extern so that we can runtime disable
the HPET timer by using quirk to check the platform.
Signed-off-by: Feng Tang <feng.tang@intel.com>
---
arch/x86/include/asm/hpet.h | 1 +
arch/x86/kernel/hpet.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/x86/include/asm/hpet.h b/arch/x86/include/asm/hpet.h
index b18df57..36f7125 100644
--- a/arch/x86/include/asm/hpet.h
+++ b/arch/x86/include/asm/hpet.h
@@ -63,6 +63,7 @@
/* hpet memory map physical address */
extern unsigned long hpet_address;
extern unsigned long force_hpet_address;
+extern int boot_hpet_disable;
extern u8 hpet_blockid;
extern int hpet_force_user;
extern u8 hpet_msi_disable;
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
index 8d80ae0..4177bfb 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -88,7 +88,7 @@ static inline void hpet_clear_mapping(void)
/*
* HPET command line enable / disable
*/
-static int boot_hpet_disable;
+int boot_hpet_disable;
int hpet_force_user;
static int hpet_verbose;
--
1.7.9.5
^ permalink raw reply related [flat|nested] 6+ messages in thread* [PATCH 2/2] x86: Add quirk to disable HPET for baytrail platform 2014-04-24 8:18 [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang @ 2014-04-24 8:18 ` Feng Tang 2014-05-08 10:45 ` [tip:x86/urgent] x86/intel: Add quirk to disable HPET for the Baytrail platform tip-bot for Feng Tang 2014-05-08 6:28 ` [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang 2014-05-08 10:45 ` [tip:x86/urgent] x86/hpet: " tip-bot for Feng Tang 2 siblings, 1 reply; 6+ messages in thread From: Feng Tang @ 2014-04-24 8:18 UTC (permalink / raw) To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, linux-kernel Cc: Clemens Ladisch, John Stultz, Feng Tang HPET on current Baytrail platform has accuracy problem to be used as reliable clocksource/clockevent, so add a early quirk to disable it. Signed-off-by: Feng Tang <feng.tang@intel.com> --- arch/x86/kernel/early-quirks.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c index 6e2537c..67c33fd 100644 --- a/arch/x86/kernel/early-quirks.c +++ b/arch/x86/kernel/early-quirks.c @@ -17,6 +17,7 @@ #include <asm/dma.h> #include <asm/io_apic.h> #include <asm/apic.h> +#include <asm/hpet.h> #include <asm/iommu.h> #include <asm/gart.h> #include <asm/irq_remapping.h> @@ -530,6 +531,15 @@ static void __init intel_graphics_stolen(int num, int slot, int func) } } +static void __init force_disable_hpet(int num, int slot, int func) +{ +#ifdef CONFIG_HPET_TIMER + boot_hpet_disable = 1; + pr_info("Will Disable HPET for this platform\n"); +#endif +} + + #define QFLAG_APPLY_ONCE 0x1 #define QFLAG_APPLIED 0x2 #define QFLAG_DONE (QFLAG_APPLY_ONCE|QFLAG_APPLIED) @@ -567,6 +577,12 @@ static struct chipset early_qrk[] __initdata = { PCI_BASE_CLASS_BRIDGE, 0, intel_remapping_check }, { PCI_VENDOR_ID_INTEL, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA, PCI_ANY_ID, QFLAG_APPLY_ONCE, intel_graphics_stolen }, + /* + * HPET on current version of Baytrail platform has accuracy + * problem, disable it for now + */ + { PCI_VENDOR_ID_INTEL, 0x0f00, + PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, force_disable_hpet}, {} }; -- 1.7.9.5 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [tip:x86/urgent] x86/intel: Add quirk to disable HPET for the Baytrail platform 2014-04-24 8:18 ` [PATCH 2/2] x86: Add quirk to disable HPET for baytrail platform Feng Tang @ 2014-05-08 10:45 ` tip-bot for Feng Tang 0 siblings, 0 replies; 6+ messages in thread From: tip-bot for Feng Tang @ 2014-05-08 10:45 UTC (permalink / raw) To: linux-tip-commits Cc: linux-kernel, hpa, mingo, torvalds, john.stultz, tglx, feng.tang, clemens Commit-ID: 62187910b0fc7a75cfec9c30fda58ce2f39d689b Gitweb: http://git.kernel.org/tip/62187910b0fc7a75cfec9c30fda58ce2f39d689b Author: Feng Tang <feng.tang@intel.com> AuthorDate: Thu, 24 Apr 2014 16:18:18 +0800 Committer: Ingo Molnar <mingo@kernel.org> CommitDate: Thu, 8 May 2014 08:15:34 +0200 x86/intel: Add quirk to disable HPET for the Baytrail platform HPET on current Baytrail platform has accuracy problem to be used as reliable clocksource/clockevent, so add a early quirk to disable it. Signed-off-by: Feng Tang <feng.tang@intel.com> Cc: Clemens Ladisch <clemens@ladisch.de> Cc: John Stultz <john.stultz@linaro.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Link: http://lkml.kernel.org/r/1398327498-13163-2-git-send-email-feng.tang@intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org> --- arch/x86/kernel/early-quirks.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c index 6e2537c..6cda0ba 100644 --- a/arch/x86/kernel/early-quirks.c +++ b/arch/x86/kernel/early-quirks.c @@ -17,6 +17,7 @@ #include <asm/dma.h> #include <asm/io_apic.h> #include <asm/apic.h> +#include <asm/hpet.h> #include <asm/iommu.h> #include <asm/gart.h> #include <asm/irq_remapping.h> @@ -530,6 +531,15 @@ static void __init intel_graphics_stolen(int num, int slot, int func) } } +static void __init force_disable_hpet(int num, int slot, int func) +{ +#ifdef CONFIG_HPET_TIMER + boot_hpet_disable = 1; + pr_info("x86/hpet: Will disable the HPET for this platform because it's not reliable\n"); +#endif +} + + #define QFLAG_APPLY_ONCE 0x1 #define QFLAG_APPLIED 0x2 #define QFLAG_DONE (QFLAG_APPLY_ONCE|QFLAG_APPLIED) @@ -567,6 +577,12 @@ static struct chipset early_qrk[] __initdata = { PCI_BASE_CLASS_BRIDGE, 0, intel_remapping_check }, { PCI_VENDOR_ID_INTEL, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA, PCI_ANY_ID, QFLAG_APPLY_ONCE, intel_graphics_stolen }, + /* + * HPET on current version of Baytrail platform has accuracy + * problems, disable it for now: + */ + { PCI_VENDOR_ID_INTEL, 0x0f00, + PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, force_disable_hpet}, {} }; ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern 2014-04-24 8:18 [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang 2014-04-24 8:18 ` [PATCH 2/2] x86: Add quirk to disable HPET for baytrail platform Feng Tang @ 2014-05-08 6:28 ` Feng Tang 2014-05-08 6:32 ` Ingo Molnar 2014-05-08 10:45 ` [tip:x86/urgent] x86/hpet: " tip-bot for Feng Tang 2 siblings, 1 reply; 6+ messages in thread From: Feng Tang @ 2014-05-08 6:28 UTC (permalink / raw) To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, linux-kernel Cc: Clemens Ladisch, John Stultz Ping for comments for these 2 patches. Thanks! - Feng On Thu, Apr 24, 2014 at 04:18:17PM +0800, Feng Tang wrote: > HPET on some platform has accuracy problem. Making > "boot_hpet_disable" extern so that we can runtime disable > the HPET timer by using quirk to check the platform. > > Signed-off-by: Feng Tang <feng.tang@intel.com> > --- > arch/x86/include/asm/hpet.h | 1 + > arch/x86/kernel/hpet.c | 2 +- > 2 files changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/x86/include/asm/hpet.h b/arch/x86/include/asm/hpet.h > index b18df57..36f7125 100644 > --- a/arch/x86/include/asm/hpet.h > +++ b/arch/x86/include/asm/hpet.h > @@ -63,6 +63,7 @@ > /* hpet memory map physical address */ > extern unsigned long hpet_address; > extern unsigned long force_hpet_address; > +extern int boot_hpet_disable; > extern u8 hpet_blockid; > extern int hpet_force_user; > extern u8 hpet_msi_disable; > diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c > index 8d80ae0..4177bfb 100644 > --- a/arch/x86/kernel/hpet.c > +++ b/arch/x86/kernel/hpet.c > @@ -88,7 +88,7 @@ static inline void hpet_clear_mapping(void) > /* > * HPET command line enable / disable > */ > -static int boot_hpet_disable; > +int boot_hpet_disable; > int hpet_force_user; > static int hpet_verbose; > > -- > 1.7.9.5 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern 2014-05-08 6:28 ` [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang @ 2014-05-08 6:32 ` Ingo Molnar 0 siblings, 0 replies; 6+ messages in thread From: Ingo Molnar @ 2014-05-08 6:32 UTC (permalink / raw) To: Feng Tang Cc: Thomas Gleixner, H. Peter Anvin, linux-kernel, Clemens Ladisch, John Stultz * Feng Tang <feng.tang@intel.com> wrote: > Ping for comments for these 2 patches. Thanks! I applied them yesterday and will push them out later today most likely, depending on testing results. Thanks, Ingo ^ permalink raw reply [flat|nested] 6+ messages in thread
* [tip:x86/urgent] x86/hpet: Make boot_hpet_disable extern 2014-04-24 8:18 [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang 2014-04-24 8:18 ` [PATCH 2/2] x86: Add quirk to disable HPET for baytrail platform Feng Tang 2014-05-08 6:28 ` [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang @ 2014-05-08 10:45 ` tip-bot for Feng Tang 2 siblings, 0 replies; 6+ messages in thread From: tip-bot for Feng Tang @ 2014-05-08 10:45 UTC (permalink / raw) To: linux-tip-commits Cc: linux-kernel, hpa, mingo, torvalds, john.stultz, tglx, feng.tang, clemens Commit-ID: f10f383d8414bfe3357e24432ed8a26eeb58ffb8 Gitweb: http://git.kernel.org/tip/f10f383d8414bfe3357e24432ed8a26eeb58ffb8 Author: Feng Tang <feng.tang@intel.com> AuthorDate: Thu, 24 Apr 2014 16:18:17 +0800 Committer: Ingo Molnar <mingo@kernel.org> CommitDate: Thu, 8 May 2014 08:15:34 +0200 x86/hpet: Make boot_hpet_disable extern HPET on some platform has accuracy problem. Making "boot_hpet_disable" extern so that we can runtime disable the HPET timer by using quirk to check the platform. Signed-off-by: Feng Tang <feng.tang@intel.com> Cc: Clemens Ladisch <clemens@ladisch.de> Cc: John Stultz <john.stultz@linaro.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Link: http://lkml.kernel.org/r/1398327498-13163-1-git-send-email-feng.tang@intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org> --- arch/x86/include/asm/hpet.h | 1 + arch/x86/kernel/hpet.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/x86/include/asm/hpet.h b/arch/x86/include/asm/hpet.h index b18df57..36f7125 100644 --- a/arch/x86/include/asm/hpet.h +++ b/arch/x86/include/asm/hpet.h @@ -63,6 +63,7 @@ /* hpet memory map physical address */ extern unsigned long hpet_address; extern unsigned long force_hpet_address; +extern int boot_hpet_disable; extern u8 hpet_blockid; extern int hpet_force_user; extern u8 hpet_msi_disable; diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c index 8d80ae0..4177bfb 100644 --- a/arch/x86/kernel/hpet.c +++ b/arch/x86/kernel/hpet.c @@ -88,7 +88,7 @@ static inline void hpet_clear_mapping(void) /* * HPET command line enable / disable */ -static int boot_hpet_disable; +int boot_hpet_disable; int hpet_force_user; static int hpet_verbose; ^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2014-05-08 10:46 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-04-24 8:18 [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang 2014-04-24 8:18 ` [PATCH 2/2] x86: Add quirk to disable HPET for baytrail platform Feng Tang 2014-05-08 10:45 ` [tip:x86/urgent] x86/intel: Add quirk to disable HPET for the Baytrail platform tip-bot for Feng Tang 2014-05-08 6:28 ` [PATCH 1/2] x86, hpet: Make boot_hpet_disable extern Feng Tang 2014-05-08 6:32 ` Ingo Molnar 2014-05-08 10:45 ` [tip:x86/urgent] x86/hpet: " tip-bot for Feng Tang
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.