acfe338312d23638f03c7fedfd2d810f318de66e
[15.05/openwrt.git] / target / linux / cns3xxx / patches-3.18 / 040-fiq_support.patch
1 --- a/arch/arm/mach-cns3xxx/Kconfig
2 +++ b/arch/arm/mach-cns3xxx/Kconfig
3 @@ -5,6 +5,7 @@ menuconfig ARCH_CNS3XXX
4         select HAVE_ARM_SCU if SMP
5         select HAVE_ARM_TWD if LOCAL_TIMERS
6         select HAVE_SMP
7 +       select FIQ
8         help
9           Support for Cavium Networks CNS3XXX platform.
10  
11 --- a/arch/arm/mach-cns3xxx/Makefile
12 +++ b/arch/arm/mach-cns3xxx/Makefile
13 @@ -6,5 +6,5 @@ cns3xxx-$(CONFIG_ATAGS)                 += devices.o
14  cns3xxx-$(CONFIG_PCI)                  += pcie.o
15  CFLAGS_pcie.o                          += -Wframe-larger-than=1536 # override default 1024, this is safe here
16  cns3xxx-$(CONFIG_MACH_CNS3420VB)       += cns3420vb.o
17 -cns3xxx-$(CONFIG_SMP)                  += platsmp.o headsmp.o
18 +cns3xxx-$(CONFIG_SMP)                  += platsmp.o headsmp.o cns3xxx_fiq.o
19  cns3xxx-$(CONFIG_HOTPLUG_CPU)          += hotplug.o
20 --- a/arch/arm/mach-cns3xxx/cns3xxx.h
21 +++ b/arch/arm/mach-cns3xxx/cns3xxx.h
22 @@ -267,6 +267,7 @@
23  #define MISC_PCIE_INT_MASK(x)                  MISC_MEM_MAP(0x978 + (x) * 0x100)
24  #define MISC_PCIE_INT_STATUS(x)                        MISC_MEM_MAP(0x97C + (x) * 0x100)
25  
26 +#define MISC_FIQ_CPU(x)                                MISC_MEM_MAP(0xA58 - (x) * 0x4)
27  /*
28   * Power management and clock control
29   */
30 --- a/arch/arm/mm/Kconfig
31 +++ b/arch/arm/mm/Kconfig
32 @@ -827,7 +827,7 @@ config KUSER_HELPERS
33  
34  config DMA_CACHE_RWFO
35         bool "Enable read/write for ownership DMA cache maintenance"
36 -       depends on CPU_V6K && SMP
37 +       depends on CPU_V6K && SMP && !ARCH_CNS3XXX
38         default y
39         help
40           The Snoop Control Unit on ARM11MPCore does not detect the