[PATCH 5/5] RT kernel: HPET relates boot option changes in x86-64

From: Venkatesh Pallipadi
Date: Thu Feb 22 2007 - 20:47:51 EST




Cleanup HPET related boot options in x86-64 and deprecate 'nohpet'.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>

Index: linux-2.6.21-rc-mm/arch/x86_64/kernel/hpet.c
===================================================================
--- linux-2.6.21-rc-mm.orig/arch/x86_64/kernel/hpet.c
+++ linux-2.6.21-rc-mm/arch/x86_64/kernel/hpet.c
@@ -19,6 +19,7 @@
#include <asm/idle.h>

int nohpet __initdata;
+static int nohpetforce __initdata;

unsigned long hpet_address;
unsigned long hpet_period; /* fsecs / HPET clock */
@@ -217,6 +218,19 @@ static int __init nohpet_setup(char *s)

__setup("nohpet", nohpet_setup);

+static int __init hpet_setup(char *str)
+{
+ if (str) {
+ if (!strncmp("disable", str, 7))
+ nohpet = 1;
+ if (!strncmp("noforce", str, 7))
+ nohpetforce = 1;
+ }
+ return 1;
+}
+
+__setup("hpet=", hpet_setup);
+
/* Clocksource */
#define HPET_MASK 0xFFFFFFFF
#define HPET_SHIFT 22
@@ -722,7 +736,7 @@ static int __init init_hpet_generic_time
if (nohpet)
return -ENODEV;

- if (!hpet_address) {
+ if (!hpet_address && !nohpetforce) {
hpet_address = force_hpet_address;
} else {
hpet_timer_stop();
Index: linux-2.6.21-rc-mm/Documentation/kernel-parameters.txt
===================================================================
--- linux-2.6.21-rc-mm.orig/Documentation/kernel-parameters.txt
+++ linux-2.6.21-rc-mm/Documentation/kernel-parameters.txt
@@ -371,8 +371,12 @@ and is between 256 and 4096 characters.
over the 8254 in addition to over the IO-APIC. The
kernel tries to set a sensible default.

- hpet= [IA-32,HPET] option to disable HPET and use PIT.
- Format: disable
+ hpet= [IA-32/X86_64,HPET] option to disable HPET and use PIT.
+ Format: disable|noforce
+ disable - disables HPET timer detection and usage
+ noforce - disables HPET timer detection and usage when
+ it is not explicitly enabled in BIOS. i.e,
+ HPET is not enabled based on quirks.

cm206= [HW,CD]
Format: { auto | [<io>,][<irq>] }
Index: linux-2.6.21-rc-mm/Documentation/feature-removal-schedule.txt
===================================================================
--- linux-2.6.21-rc-mm.orig/Documentation/feature-removal-schedule.txt
+++ linux-2.6.21-rc-mm/Documentation/feature-removal-schedule.txt
@@ -316,3 +316,12 @@ Why: Unmaintained for years, superceded
Who: Jeff Garzik <jeff@xxxxxxxxxx>

---------------------------
+
+What: X86-64 "nohpet" boot option
+When: May 2007
+Why: nohpet is not documented boot option in x86-64. There is a documented
+ boot option in i386 for similar purpose (hpet=), which is now in
+ x86-64 as well.
+Who: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>
+
+---------------------------
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/