aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mm/Kconfig')
-rw-r--r--arch/arm/mm/Kconfig26
1 files changed, 24 insertions, 2 deletions
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index 5bd7c89a6045..346ae14824a5 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -572,6 +572,8 @@ config CPU_TLB_V6
572config CPU_TLB_V7 572config CPU_TLB_V7
573 bool 573 bool
574 574
575config VERIFY_PERMISSION_FAULT
576 bool
575endif 577endif
576 578
577config CPU_HAS_ASID 579config CPU_HAS_ASID
@@ -760,7 +762,8 @@ config CACHE_FEROCEON_L2_WRITETHROUGH
760config CACHE_L2X0 762config CACHE_L2X0
761 bool "Enable the L2x0 outer cache controller" 763 bool "Enable the L2x0 outer cache controller"
762 depends on REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || MACH_REALVIEW_PB1176 || \ 764 depends on REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || MACH_REALVIEW_PB1176 || \
763 REALVIEW_EB_A9MP || ARCH_MX35 || ARCH_MX31 || MACH_REALVIEW_PBX || ARCH_NOMADIK || ARCH_OMAP4 765 REALVIEW_EB_A9MP || ARCH_MX35 || ARCH_MX31 || MACH_REALVIEW_PBX || \
766 ARCH_NOMADIK || ARCH_OMAP4 || ARCH_U8500 || ARCH_VEXPRESS_CA9X4
764 default y 767 default y
765 select OUTER_CACHE 768 select OUTER_CACHE
766 select OUTER_CACHE_SYNC 769 select OUTER_CACHE_SYNC
@@ -769,7 +772,7 @@ config CACHE_L2X0
769 772
770config CACHE_TAUROS2 773config CACHE_TAUROS2
771 bool "Enable the Tauros2 L2 cache controller" 774 bool "Enable the Tauros2 L2 cache controller"
772 depends on ARCH_DOVE 775 depends on (ARCH_DOVE || ARCH_MMP)
773 default y 776 default y
774 select OUTER_CACHE 777 select OUTER_CACHE
775 help 778 help
@@ -789,6 +792,25 @@ config ARM_L1_CACHE_SHIFT
789 default 6 if ARM_L1_CACHE_SHIFT_6 792 default 6 if ARM_L1_CACHE_SHIFT_6
790 default 5 793 default 5
791 794
795config ARM_DMA_MEM_BUFFERABLE
796 bool "Use non-cacheable memory for DMA" if CPU_V6 && !CPU_V7
797 default y if CPU_V6 || CPU_V7
798 help
799 Historically, the kernel has used strongly ordered mappings to
800 provide DMA coherent memory. With the advent of ARMv7, mapping
801 memory with differing types results in unpredictable behaviour,
802 so on these CPUs, this option is forced on.
803
804 Multiple mappings with differing attributes is also unpredictable
805 on ARMv6 CPUs, but since they do not have aggressive speculative
806 prefetch, no harm appears to occur.
807
808 However, drivers may be missing the necessary barriers for ARMv6,
809 and therefore turning this on may result in unpredictable driver
810 behaviour. Therefore, we offer this as an option.
811
812 You are recommended say 'Y' here and debug any affected drivers.
813
792config ARCH_HAS_BARRIERS 814config ARCH_HAS_BARRIERS
793 bool 815 bool
794 help 816 help