aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/i386/kernel/paravirt.c1
-rw-r--r--arch/i386/kernel/smpboot.c5
-rw-r--r--arch/i386/kernel/vmi.c8
-rw-r--r--include/asm-i386/delay.h8
-rw-r--r--include/asm-i386/paravirt.h1
5 files changed, 1 insertions, 22 deletions
diff --git a/arch/i386/kernel/paravirt.c b/arch/i386/kernel/paravirt.c
index 12e3bc49b83b..871448db1425 100644
--- a/arch/i386/kernel/paravirt.c
+++ b/arch/i386/kernel/paravirt.c
@@ -538,7 +538,6 @@ struct paravirt_ops paravirt_ops = {
538 538
539 .set_iopl_mask = native_set_iopl_mask, 539 .set_iopl_mask = native_set_iopl_mask,
540 .io_delay = native_io_delay, 540 .io_delay = native_io_delay,
541 .const_udelay = __const_udelay,
542 541
543#ifdef CONFIG_X86_LOCAL_APIC 542#ifdef CONFIG_X86_LOCAL_APIC
544 .apic_write = native_apic_write, 543 .apic_write = native_apic_write,
diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c
index 48bfcaa13ecc..9b0dd2744c82 100644
--- a/arch/i386/kernel/smpboot.c
+++ b/arch/i386/kernel/smpboot.c
@@ -33,11 +33,6 @@
33 * Dave Jones : Report invalid combinations of Athlon CPUs. 33 * Dave Jones : Report invalid combinations of Athlon CPUs.
34* Rusty Russell : Hacked into shape for new "hotplug" boot process. */ 34* Rusty Russell : Hacked into shape for new "hotplug" boot process. */
35 35
36
37/* SMP boot always wants to use real time delay to allow sufficient time for
38 * the APs to come online */
39#define USE_REAL_TIME_DELAY
40
41#include <linux/module.h> 36#include <linux/module.h>
42#include <linux/init.h> 37#include <linux/init.h>
43#include <linux/kernel.h> 38#include <linux/kernel.h>
diff --git a/arch/i386/kernel/vmi.c b/arch/i386/kernel/vmi.c
index bd1037bd124b..a8aa57e77029 100644
--- a/arch/i386/kernel/vmi.c
+++ b/arch/i386/kernel/vmi.c
@@ -48,7 +48,6 @@ typedef u64 __attribute__((regparm(2))) (VROMLONGFUNC)(int);
48 48
49static struct vrom_header *vmi_rom; 49static struct vrom_header *vmi_rom;
50static int license_gplok; 50static int license_gplok;
51static int disable_nodelay;
52static int disable_pge; 51static int disable_pge;
53static int disable_pse; 52static int disable_pse;
54static int disable_sep; 53static int disable_sep;
@@ -801,9 +800,6 @@ static inline int __init activate_vmi(void)
801 800
802 para_fill(set_iopl_mask, SetIOPLMask); 801 para_fill(set_iopl_mask, SetIOPLMask);
803 paravirt_ops.io_delay = (void *)vmi_nop; 802 paravirt_ops.io_delay = (void *)vmi_nop;
804 if (!disable_nodelay) {
805 paravirt_ops.const_udelay = (void *)vmi_nop;
806 }
807 803
808 para_fill(set_lazy_mode, SetLazyMode); 804 para_fill(set_lazy_mode, SetLazyMode);
809 805
@@ -947,9 +943,7 @@ static int __init parse_vmi(char *arg)
947 if (!arg) 943 if (!arg)
948 return -EINVAL; 944 return -EINVAL;
949 945
950 if (!strcmp(arg, "disable_nodelay")) 946 if (!strcmp(arg, "disable_pge")) {
951 disable_nodelay = 1;
952 else if (!strcmp(arg, "disable_pge")) {
953 clear_bit(X86_FEATURE_PGE, boot_cpu_data.x86_capability); 947 clear_bit(X86_FEATURE_PGE, boot_cpu_data.x86_capability);
954 disable_pge = 1; 948 disable_pge = 1;
955 } else if (!strcmp(arg, "disable_pse")) { 949 } else if (!strcmp(arg, "disable_pse")) {
diff --git a/include/asm-i386/delay.h b/include/asm-i386/delay.h
index 32d6678d0bbf..9ae5e3782ed8 100644
--- a/include/asm-i386/delay.h
+++ b/include/asm-i386/delay.h
@@ -16,13 +16,6 @@ extern void __ndelay(unsigned long nsecs);
16extern void __const_udelay(unsigned long usecs); 16extern void __const_udelay(unsigned long usecs);
17extern void __delay(unsigned long loops); 17extern void __delay(unsigned long loops);
18 18
19#if defined(CONFIG_PARAVIRT) && !defined(USE_REAL_TIME_DELAY)
20#define udelay(n) paravirt_ops.const_udelay((n) * 0x10c7ul)
21
22#define ndelay(n) paravirt_ops.const_udelay((n) * 5ul)
23
24#else /* !PARAVIRT || USE_REAL_TIME_DELAY */
25
26/* 0x10c7 is 2**32 / 1000000 (rounded up) */ 19/* 0x10c7 is 2**32 / 1000000 (rounded up) */
27#define udelay(n) (__builtin_constant_p(n) ? \ 20#define udelay(n) (__builtin_constant_p(n) ? \
28 ((n) > 20000 ? __bad_udelay() : __const_udelay((n) * 0x10c7ul)) : \ 21 ((n) > 20000 ? __bad_udelay() : __const_udelay((n) * 0x10c7ul)) : \
@@ -32,7 +25,6 @@ extern void __delay(unsigned long loops);
32#define ndelay(n) (__builtin_constant_p(n) ? \ 25#define ndelay(n) (__builtin_constant_p(n) ? \
33 ((n) > 20000 ? __bad_ndelay() : __const_udelay((n) * 5ul)) : \ 26 ((n) > 20000 ? __bad_ndelay() : __const_udelay((n) * 5ul)) : \
34 __ndelay(n)) 27 __ndelay(n))
35#endif
36 28
37void use_tsc_delay(void); 29void use_tsc_delay(void);
38 30
diff --git a/include/asm-i386/paravirt.h b/include/asm-i386/paravirt.h
index e01d895d7379..1e4226a85263 100644
--- a/include/asm-i386/paravirt.h
+++ b/include/asm-i386/paravirt.h
@@ -117,7 +117,6 @@ struct paravirt_ops
117 void (*set_iopl_mask)(unsigned mask); 117 void (*set_iopl_mask)(unsigned mask);
118 118
119 void (*io_delay)(void); 119 void (*io_delay)(void);
120 void (*const_udelay)(unsigned long loops);
121 120
122#ifdef CONFIG_X86_LOCAL_APIC 121#ifdef CONFIG_X86_LOCAL_APIC
123 void (*apic_write)(unsigned long reg, unsigned long v); 122 void (*apic_write)(unsigned long reg, unsigned long v);