Patches contributed by Eötvös Lorand University
commit 9749986a878e91182ff027ff0010ab8e3211031a
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 17:28:11 2008 +0200
x86: usb debug port early console, fix
fix:
arch/x86/kernel/built-in.o: In function `nvidia_set_debug_port':
early_printk.c:(.text+0xf8b1): undefined reference to `read_pci_config'
early_printk.c:(.text+0xf8dc): undefined reference to `write_pci_config'
arch/x86/kernel/built-in.o: In function `setup_early_printk':
early_printk.c:(.init.text+0x5487): undefined reference to `early_pci_allowed'
early_printk.c:(.init.text+0x54cb): undefined reference to `read_pci_config'
early_printk.c:(.init.text+0x54ec): undefined reference to `read_pci_config_16'
[...]
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
index 93422d2ecf61..2a3dfbd5e677 100644
--- a/arch/x86/Kconfig.debug
+++ b/arch/x86/Kconfig.debug
@@ -46,7 +46,7 @@ config EARLY_PRINTK
config EARLY_PRINTK_DBGP
bool "Early printk via EHCI debug port"
default n
- depends on EARLY_PRINTK
+ depends on EARLY_PRINTK && PCI
help
Write kernel log output directly into the EHCI debug port.
commit 5a7a201c51c324876d00a54e7208af6af12d1ca4
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 16:50:47 2008 +0200
cpumask: export cpumask_of_cpu_map
fix:
ERROR: "cpumask_of_cpu_map" [drivers/acpi/processor.ko] undefined!
ERROR: "cpumask_of_cpu_map" [arch/x86/kernel/microcode.ko] undefined!
ERROR: "cpumask_of_cpu_map" [arch/x86/kernel/cpu/cpufreq/speedstep-ich.ko] undefined!
ERROR: "cpumask_of_cpu_map" [arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.ko] undefined!
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/kernel/cpu.c b/kernel/cpu.c
index 9d4e1c28c053..a35d8995dc8c 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -572,3 +572,5 @@ __initdata
};
const cpumask_t *cpumask_of_cpu_map = cpumask_map;
+
+EXPORT_SYMBOL_GPL(cpumask_of_cpu_map);
commit 10d3285d0b3af641ee446f0be8f0a7f40cb515b6
Merge: 6dec3a10a7a6 3a61ec387c90
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 16:30:19 2008 +0200
Merge branch 'x86/urgent' into x86/core
Conflicts:
include/asm-x86/gpio.h
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --cc include/asm-x86/gpio.h
index f9e8f8918a9d,c4c91b37c104..497fb980d962
--- a/include/asm-x86/gpio.h
+++ b/include/asm-x86/gpio.h
@@@ -57,6 -53,4 +53,4 @@@ static inline int irq_to_gpio(unsigned
#endif /* CONFIG_GPIOLIB */
- #endif /* CONFIG_X86_RDC321X */
-
-#endif /* _ASM_I386_GPIO_H */
+#endif /* ASM_X86__GPIO_H */
commit 6dec3a10a7a6093af10cef7ac56021150afd6451
Merge: 29308333fbe2 10a010f6953b
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 16:29:23 2008 +0200
Merge branch 'x86/x2apic' into x86/core
Conflicts:
include/asm-x86/i8259.h
include/asm-x86/msidef.h
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --cc include/asm-x86/i8259.h
index c586559a6957,31112b6c595b..23c1b3baaecd
--- a/include/asm-x86/i8259.h
+++ b/include/asm-x86/i8259.h
@@@ -57,4 -57,7 +57,7 @@@ static inline void outb_pic(unsigned ch
extern struct irq_chip i8259A_chip;
+ extern void mask_8259A(void);
+ extern void unmask_8259A(void);
+
-#endif /* __ASM_I8259_H__ */
+#endif /* ASM_X86__I8259_H */
diff --cc include/asm-x86/msidef.h
index 3139666a94fa,57fd85935e5a..ed9190246876
--- a/include/asm-x86/msidef.h
+++ b/include/asm-x86/msidef.h
@@@ -48,4 -48,8 +48,8 @@@
#define MSI_ADDR_DEST_ID(dest) (((dest) << MSI_ADDR_DEST_ID_SHIFT) & \
MSI_ADDR_DEST_ID_MASK)
+ #define MSI_ADDR_IR_EXT_INT (1 << 4)
+ #define MSI_ADDR_IR_SHV (1 << 3)
+ #define MSI_ADDR_IR_INDEX1(index) ((index & 0x8000) >> 13)
+ #define MSI_ADDR_IR_INDEX2(index) ((index & 0x7fff) << 5)
-#endif /* ASM_MSIDEF_H */
+#endif /* ASM_X86__MSIDEF_H */
commit 29308333fbe2cc61258c1c470f9403960428beb2
Merge: 024e8ac04453 1503af661947
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 16:28:36 2008 +0200
Merge branch 'x86/header-guards' into x86/core
commit bda307ed7bdc160fcf1475a49f6c2e796fcb1294
Merge: 0791e13fbb1e 024e8ac04453
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 15:38:48 2008 +0200
Merge branch 'linus' into x86/cleanups
commit 1503af661947b7a4a09355cc2ae6aa0d43f16776
Merge: a31863168660 024e8ac04453
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 15:30:40 2008 +0200
Merge branch 'linus' into x86/header-guards
Conflicts:
include/asm-x86/gpio.h
include/asm-x86/ide.h
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --cc include/asm-x86/gpio.h
index f269ff9cd40b,116e9147fe66..f9e8f8918a9d
--- a/include/asm-x86/gpio.h
+++ b/include/asm-x86/gpio.h
@@@ -1,6 -1,62 +1,62 @@@
- #ifndef ASM_X86__GPIO_H
- #define ASM_X86__GPIO_H
+ /*
+ * Generic GPIO API implementation for x86.
+ *
+ * Derived from the generic GPIO API for powerpc:
+ *
+ * Copyright (c) 2007-2008 MontaVista Software, Inc.
+ *
+ * Author: Anton Vorontsov <avorontsov@ru.mvista.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+ #ifndef _ASM_I386_GPIO_H
+ #define _ASM_I386_GPIO_H
+
+ #ifdef CONFIG_X86_RDC321X
#include <gpio.h>
+ #else /* CONFIG_X86_RDC321X */
+
+ #include <asm-generic/gpio.h>
+
+ #ifdef CONFIG_GPIOLIB
+
+ /*
+ * Just call gpiolib.
+ */
+ static inline int gpio_get_value(unsigned int gpio)
+ {
+ return __gpio_get_value(gpio);
+ }
+
+ static inline void gpio_set_value(unsigned int gpio, int value)
+ {
+ __gpio_set_value(gpio, value);
+ }
+
+ static inline int gpio_cansleep(unsigned int gpio)
+ {
+ return __gpio_cansleep(gpio);
+ }
+
+ /*
+ * Not implemented, yet.
+ */
+ static inline int gpio_to_irq(unsigned int gpio)
+ {
+ return -ENOSYS;
+ }
+
+ static inline int irq_to_gpio(unsigned int irq)
+ {
+ return -EINVAL;
+ }
+
+ #endif /* CONFIG_GPIOLIB */
+
+ #endif /* CONFIG_X86_RDC321X */
-#endif /* _ASM_I386_GPIO_H */
+#endif /* ASM_X86__GPIO_H */
diff --cc include/asm-x86/processor-flags.h
index ae1d434f1972,eff2ecd7fff0..5dd79774f693
--- a/include/asm-x86/processor-flags.h
+++ b/include/asm-x86/processor-flags.h
@@@ -93,5 -94,6 +94,6 @@@
#else
#define X86_VM_MASK 0 /* No VM86 support */
#endif
+ #endif
-#endif /* __ASM_I386_PROCESSOR_FLAGS_H */
+#endif /* ASM_X86__PROCESSOR_FLAGS_H */
commit 1fe371044b21b226b96a9dd959e971b50b28c78e
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 15:09:47 2008 +0200
ftrace: fix modular build
fix:
ERROR: "start_critical_timings" [drivers/acpi/processor.ko] undefined!
ERROR: "stop_critical_timings" [drivers/acpi/processor.ko] undefined!
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c
index b1e4a89b08eb..ece6cfb649fa 100644
--- a/kernel/trace/trace_irqsoff.c
+++ b/kernel/trace/trace_irqsoff.c
@@ -253,12 +253,14 @@ void start_critical_timings(void)
if (preempt_trace() || irq_trace())
start_critical_timing(CALLER_ADDR0, CALLER_ADDR1);
}
+EXPORT_SYMBOL_GPL(start_critical_timings);
void stop_critical_timings(void)
{
if (preempt_trace() || irq_trace())
stop_critical_timing(CALLER_ADDR0, CALLER_ADDR1);
}
+EXPORT_SYMBOL_GPL(stop_critical_timings);
#ifdef CONFIG_IRQSOFF_TRACER
#ifdef CONFIG_PROVE_LOCKING
commit 071375bc76ee86e58592f4682030c81d410ddfd9
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 14:52:26 2008 +0200
x86, RDC321x: remove gpio.h complications
Remove the include/asm-x86/gpio.h specials, just use the generic
version.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/include/asm-x86/gpio.h b/include/asm-x86/gpio.h
index 116e9147fe66..c4c91b37c104 100644
--- a/include/asm-x86/gpio.h
+++ b/include/asm-x86/gpio.h
@@ -16,10 +16,6 @@
#ifndef _ASM_I386_GPIO_H
#define _ASM_I386_GPIO_H
-#ifdef CONFIG_X86_RDC321X
-#include <gpio.h>
-#else /* CONFIG_X86_RDC321X */
-
#include <asm-generic/gpio.h>
#ifdef CONFIG_GPIOLIB
@@ -57,6 +53,4 @@ static inline int irq_to_gpio(unsigned int irq)
#endif /* CONFIG_GPIOLIB */
-#endif /* CONFIG_X86_RDC321X */
-
#endif /* _ASM_I386_GPIO_H */
commit 1f972768a1df1518f45adb6b8ffbf04fa1c99737
Author: Ingo Molnar <mingo@elte.hu>
Date: Sat Jul 26 13:52:50 2008 +0200
x86, RDC321x: add to mach-default
first step to add RDC321x support to the default PC architecture.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index e3cba0b45600..39ae67985950 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -23,7 +23,7 @@ config X86
select HAVE_OPROFILE
select HAVE_IOREMAP_PROT
select HAVE_KPROBES
- select ARCH_WANT_OPTIONAL_GPIOLIB if !X86_RDC321X
+ select ARCH_WANT_OPTIONAL_GPIOLIB
select HAVE_KRETPROBES
select HAVE_DYNAMIC_FTRACE
select HAVE_FTRACE
@@ -332,20 +332,6 @@ config X86_BIGSMP
endif
-config X86_RDC321X
- bool "RDC R-321x SoC"
- depends on X86_32
- select M486
- select X86_REBOOTFIXUPS
- select GENERIC_GPIO
- select LEDS_CLASS
- select LEDS_GPIO
- select NEW_LEDS
- help
- This option is needed for RDC R-321x system-on-chip, also known
- as R-8610-(G).
- If you don't have one of these chips, you should say N here.
-
config X86_VSMP
bool "Support for ScaleMP vSMP"
select PARAVIRT
@@ -369,6 +355,16 @@ config X86_VISWS
A kernel compiled for the Visual Workstation will run on general
PCs as well. See <file:Documentation/sgi-visws.txt> for details.
+config X86_RDC321X
+ bool "RDC R-321x SoC"
+ depends on X86_32
+ select M486
+ select X86_REBOOTFIXUPS
+ help
+ This option is needed for RDC R-321x system-on-chip, also known
+ as R-8610-(G).
+ If you don't have one of these chips, you should say N here.
+
config SCHED_NO_NO_OMIT_FRAME_POINTER
def_bool y
prompt "Single-depth WCHAN output"
diff --git a/arch/x86/Makefile b/arch/x86/Makefile
index 919ce21ea654..f5631da585b6 100644
--- a/arch/x86/Makefile
+++ b/arch/x86/Makefile
@@ -118,11 +118,6 @@ mflags-$(CONFIG_X86_GENERICARCH):= -Iinclude/asm-x86/mach-generic
fcore-$(CONFIG_X86_GENERICARCH) += arch/x86/mach-generic/
mcore-$(CONFIG_X86_GENERICARCH) := arch/x86/mach-default/
-# RDC R-321x subarch support
-mflags-$(CONFIG_X86_RDC321X) := -Iinclude/asm-x86/mach-rdc321x
-mcore-$(CONFIG_X86_RDC321X) := arch/x86/mach-default/
-core-$(CONFIG_X86_RDC321X) += arch/x86/mach-rdc321x/
-
# default subarch .h files
mflags-y += -Iinclude/asm-x86/mach-default