Patches contributed by Eötvös Lorand University
commit 835fc943f34139ed062f1ac194b52ed3b7123d88
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Jun 3 14:42:06 2008 +0200
x86: mp build fix
fix:
drivers/built-in.o: In function `acpi_pci_irq_enable':
: undefined reference to `mp_config_acpi_gsi'
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/include/asm-x86/mpspec.h b/include/asm-x86/mpspec.h
index 6a34d6dfd042..dbbf363dafb5 100644
--- a/include/asm-x86/mpspec.h
+++ b/include/asm-x86/mpspec.h
@@ -49,8 +49,17 @@ extern void mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger,
extern void mp_config_acpi_legacy_irqs(void);
extern int mp_register_gsi(u32 gsi, int edge_level, int active_high_low);
extern void MP_intsrc_info(struct mpc_config_intsrc *m);
+#ifdef CONFIG_X86_IO_APIC
extern int mp_config_acpi_gsi(unsigned char number, unsigned int devfn, u8 pin,
u32 gsi, int triggering, int polarity);
+#else
+static inline int
+mp_config_acpi_gsi(unsigned char number, unsigned int devfn, u8 pin,
+ u32 gsi, int triggering, int polarity)
+{
+ return 0;
+}
+#endif
#endif /* CONFIG_ACPI */
#define PHYSID_ARRAY_SIZE BITS_TO_LONGS(MAX_APICS)
commit 471b3c1b011f807d16f1e19d1d4ecf703f1e7d1a
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Jun 3 12:39:43 2008 +0200
x86, numaq 32-bit: build fix
fix:
drivers/built-in.o: In function `acpi_numa_init':
: undefined reference to `acpi_numa_arch_fixup'
which can happen with ACPI && NUMAQ.
diff --git a/arch/x86/mm/discontig_32.c b/arch/x86/mm/discontig_32.c
index 0d28b4bff817..8b4eac0ca07d 100644
--- a/arch/x86/mm/discontig_32.c
+++ b/arch/x86/mm/discontig_32.c
@@ -467,4 +467,8 @@ void __init
acpi_numa_processor_affinity_init(struct acpi_srat_cpu_affinity *pa)
{
}
+
+void __init acpi_numa_arch_fixup(void)
+{
+}
#endif
commit cf3d0cb8a10a4fd19439bb34995d9ad28854739a
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Jun 3 11:36:56 2008 +0200
x86: 32-bit numa, build fix
on Summit it's possible to have:
CONFIG_ACPI_SRAT=y
CONFIG_HAVE_ARCH_PARSE_SRAT=y
in which case acpi.h defines the acpi_numa_slit_init() and
acpi_numa_processor_affinity_init() methods as a macro.
diff --git a/arch/x86/mm/discontig_32.c b/arch/x86/mm/discontig_32.c
index bb8544a7cb9d..0d28b4bff817 100644
--- a/arch/x86/mm/discontig_32.c
+++ b/arch/x86/mm/discontig_32.c
@@ -455,7 +455,7 @@ int memory_add_physaddr_to_nid(u64 addr)
EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
#endif
-#ifdef CONFIG_ACPI_NUMA
+#if defined(CONFIG_ACPI_NUMA) && !defined(CONFIG_HAVE_ARCH_PARSE_SRAT)
/*
* Dummy on 32-bit, for now:
*/
commit f3294690979634ee10398bb0beadfe1d4edb881d
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Jun 3 10:16:10 2008 +0200
x86, numaq: add pci_acpi_scan_root() stub
allow 32-bit numaq build to succeed with ACPI enabled.
diff --git a/arch/x86/kernel/numaq_32.c b/arch/x86/kernel/numaq_32.c
index e65281b1634b..992f53cb79b6 100644
--- a/arch/x86/kernel/numaq_32.c
+++ b/arch/x86/kernel/numaq_32.c
@@ -87,3 +87,14 @@ static int __init numaq_tsc_disable(void)
return 0;
}
arch_initcall(numaq_tsc_disable);
+
+#ifdef CONFIG_ACPI
+/*
+ * Dummy implementation:
+ */
+struct pci_bus * __devinit
+pci_acpi_scan_root(struct acpi_device *device, int domain, int busnum)
+{
+ return NULL;
+}
+#endif
commit b28852d6703e4b72ce363c5168ea8d3fb28b9c57
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Jun 3 10:11:07 2008 +0200
x86: add dummy acpi_numa_processor_affinity_init() implementation on 32-bit
allow CONFIG_ACPI_NUMA builds to succeed.
diff --git a/arch/x86/mm/discontig_32.c b/arch/x86/mm/discontig_32.c
index d28987a2f2bb..bb8544a7cb9d 100644
--- a/arch/x86/mm/discontig_32.c
+++ b/arch/x86/mm/discontig_32.c
@@ -462,4 +462,9 @@ EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
void __init acpi_numa_slit_init(struct acpi_table_slit *slit)
{
}
+
+void __init
+acpi_numa_processor_affinity_init(struct acpi_srat_cpu_affinity *pa)
+{
+}
#endif
commit 2772f54bf37b033263abe4a2314c40a308a1a5cd
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Jun 3 10:09:45 2008 +0200
x86: add acpi_numa_slit_init() dummy implementation on 32-bit
allow CONFIG_ACPI_NUMA builds to succeed on 32-bit.
diff --git a/arch/x86/mm/discontig_32.c b/arch/x86/mm/discontig_32.c
index 435c343c14bc..d28987a2f2bb 100644
--- a/arch/x86/mm/discontig_32.c
+++ b/arch/x86/mm/discontig_32.c
@@ -454,3 +454,12 @@ int memory_add_physaddr_to_nid(u64 addr)
EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
#endif
+
+#ifdef CONFIG_ACPI_NUMA
+/*
+ * Dummy on 32-bit, for now:
+ */
+void __init acpi_numa_slit_init(struct acpi_table_slit *slit)
+{
+}
+#endif
commit 4c1cbafb88490757a38119c41229251369bcecbc
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Jun 3 09:28:52 2008 +0200
x86 mpparse: build fix
fix this build bug:
drivers/acpi/pci_irq.c: In function 'acpi_pci_irq_enable':
drivers/acpi/pci_irq.c:574: error: implicit declaration of function 'mp_config_acpi_gsi'
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/include/asm-x86/acpi.h b/include/asm-x86/acpi.h
index 14411c9de46f..73ce5b32443f 100644
--- a/include/asm-x86/acpi.h
+++ b/include/asm-x86/acpi.h
@@ -28,6 +28,7 @@
#include <asm/numa.h>
#include <asm/processor.h>
#include <asm/mmu.h>
+#include <asm/mpspec.h>
#define COMPILER_DEPENDENT_INT64 long long
#define COMPILER_DEPENDENT_UINT64 unsigned long long
commit 3d1ba1da2b4ff4ace7801e99fb9a3095b182d847
Author: Ingo Molnar <mingo@elte.hu>
Date: Mon Jun 2 13:50:10 2008 +0200
x86: fix nmi.c build bug
apic.h needs to be included for the apic_write_around() definition.
diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c
index bf143f191fb1..cbd4fa3c475b 100644
--- a/arch/x86/kernel/nmi.c
+++ b/arch/x86/kernel/nmi.c
@@ -11,6 +11,8 @@
* Mikael Pettersson : PM converted to driver model. Disable/enable API.
*/
+#include <asm/apic.h>
+
#include <linux/nmi.h>
#include <linux/mm.h>
#include <linux/delay.h>
commit 15ce60056b24a65b65e28de973a9fd8ac0750a2f
Author: Ingo Molnar <mingo@elte.hu>
Date: Mon Jun 2 13:20:11 2008 +0200
xen: export get_phys_to_machine
-tip testing found the following xen-console symbols trouble:
ERROR: "get_phys_to_machine" [drivers/video/xen-fbfront.ko] undefined!
ERROR: "get_phys_to_machine" [drivers/net/xen-netfront.ko] undefined!
ERROR: "get_phys_to_machine" [drivers/input/xen-kbdfront.ko] undefined!
with:
http://redhat.com/~mingo/misc/config-Mon_Jun__2_12_25_13_CEST_2008.bad
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
index eef3b5c6e2fe..17f374eb1faa 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -136,6 +136,7 @@ unsigned long get_phys_to_machine(unsigned long pfn)
idx = p2m_index(pfn);
return p2m_top[topidx][idx];
}
+EXPORT_SYMBOL_GPL(get_phys_to_machine);
static void alloc_p2m(unsigned long **pp, unsigned long *mfnp)
{
commit 1a5726528a70bb239bdd149aef7f2155cd2b1699
Author: Ingo Molnar <mingo@elte.hu>
Date: Mon Jun 2 12:21:36 2008 +0200
fix build bug in "x86: add PCI extended config space access for AMD Barcelona"
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
index 99221f9834e4..656b40aed647 100644
--- a/arch/x86/kernel/cpu/amd.c
+++ b/arch/x86/kernel/cpu/amd.c
@@ -4,6 +4,7 @@
#include <asm/io.h>
#include <asm/processor.h>
#include <asm/apic.h>
+#include <asm/mmconfig.h>
#include <mach_apic.h>
#include "../setup.h"
diff --git a/include/asm-x86/mmconfig.h b/include/asm-x86/mmconfig.h
index 46d6bb135df4..691798fbee10 100644
--- a/include/asm-x86/mmconfig.h
+++ b/include/asm-x86/mmconfig.h
@@ -9,6 +9,10 @@ static inline void fam10h_check_enable_mmcfg(void) { }
static inline void check_enable_amd_mmconf_dmi(void) { }
#endif
+#if defined(CONFIG_SMP) && defined(CONFIG_X86_64)
extern void __cpuinit amd_enable_pci_ext_cfg(struct cpuinfo_x86 *c);
+#else
+static inline void amd_enable_pci_ext_cfg(struct cpuinfo_x86 *c) { }
+#endif
#endif