cns3xxx: add linux 3.8 support and use it by default
[openwrt/svn-archive/archive.git] / target / linux / cns3xxx / patches-3.8 / 025-smp_support.patch
diff --git a/target/linux/cns3xxx/patches-3.8/025-smp_support.patch b/target/linux/cns3xxx/patches-3.8/025-smp_support.patch
new file mode 100644 (file)
index 0000000..a985645
--- /dev/null
@@ -0,0 +1,38 @@
+--- a/arch/arm/mach-cns3xxx/Makefile
++++ b/arch/arm/mach-cns3xxx/Makefile
+@@ -1,3 +1,5 @@
+ obj-$(CONFIG_ARCH_CNS3XXX)            += core.o pm.o devices.o
+ obj-$(CONFIG_PCI)                     += pcie.o
+ obj-$(CONFIG_MACH_CNS3420VB)          += cns3420vb.o
++obj-$(CONFIG_SMP)                     += platsmp.o headsmp.o
++obj-$(CONFIG_HOTPLUG_CPU)             += hotplug.o
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -367,6 +367,7 @@ config ARCH_CNS3XXX
+       select PCI_DOMAINS if PCI
+       select CLKDEV_LOOKUP
+       select CPU_CACHE_FORCE_MULTI
++      select HAVE_SMP
+       help
+         Support for Cavium Networks CNS3XXX platform.
+--- a/arch/arm/mach-cns3xxx/core.h
++++ b/arch/arm/mach-cns3xxx/core.h
+@@ -11,6 +11,7 @@
+ #ifndef __CNS3XXX_CORE_H
+ #define __CNS3XXX_CORE_H
++extern struct smp_operations cns3xxx_smp_ops;
+ extern struct sys_timer cns3xxx_timer;
+ #ifdef CONFIG_CACHE_L2X0
+--- a/arch/arm/mach-cns3xxx/laguna.c
++++ b/arch/arm/mach-cns3xxx/laguna.c
+@@ -946,6 +946,7 @@ static int __init laguna_model_setup(voi
+ late_initcall(laguna_model_setup);
+ MACHINE_START(GW2388, "Gateworks Corporation Laguna Platform")
++      .smp            = smp_ops(cns3xxx_smp_ops),
+       .atag_offset    = 0x100,
+       .map_io         = laguna_map_io,
+       .init_irq       = cns3xxx_init_irq,