diff options
Diffstat (limited to 'arch/arm/mm/Kconfig')
| -rw-r--r-- | arch/arm/mm/Kconfig | 26 |
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 | |||
| 572 | config CPU_TLB_V7 | 572 | config CPU_TLB_V7 |
| 573 | bool | 573 | bool |
| 574 | 574 | ||
| 575 | config VERIFY_PERMISSION_FAULT | ||
| 576 | bool | ||
| 575 | endif | 577 | endif |
| 576 | 578 | ||
| 577 | config CPU_HAS_ASID | 579 | config CPU_HAS_ASID |
| @@ -760,7 +762,8 @@ config CACHE_FEROCEON_L2_WRITETHROUGH | |||
| 760 | config CACHE_L2X0 | 762 | config 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 | ||
| 770 | config CACHE_TAUROS2 | 773 | config 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 | ||
| 795 | config 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 | |||
| 792 | config ARCH_HAS_BARRIERS | 814 | config ARCH_HAS_BARRIERS |
| 793 | bool | 815 | bool |
| 794 | help | 816 | help |
