aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/Kconfig')
-rw-r--r--arch/arm/Kconfig151
1 files changed, 115 insertions, 36 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 44456e163025..29475101a7b3 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -34,15 +34,12 @@ config SYS_SUPPORTS_APM_EMULATION
34 34
35config GENERIC_GPIO 35config GENERIC_GPIO
36 bool 36 bool
37 default n
38 37
39config GENERIC_TIME 38config GENERIC_TIME
40 bool 39 bool
41 default n
42 40
43config GENERIC_CLOCKEVENTS 41config GENERIC_CLOCKEVENTS
44 bool 42 bool
45 default n
46 43
47config GENERIC_CLOCKEVENTS_BROADCAST 44config GENERIC_CLOCKEVENTS_BROADCAST
48 bool 45 bool
@@ -55,7 +52,6 @@ config MMU
55 52
56config NO_IOPORT 53config NO_IOPORT
57 bool 54 bool
58 default n
59 55
60config EISA 56config EISA
61 bool 57 bool
@@ -126,11 +122,9 @@ config RWSEM_XCHGADD_ALGORITHM
126 122
127config ARCH_HAS_ILOG2_U32 123config ARCH_HAS_ILOG2_U32
128 bool 124 bool
129 default n
130 125
131config ARCH_HAS_ILOG2_U64 126config ARCH_HAS_ILOG2_U64
132 bool 127 bool
133 default n
134 128
135config GENERIC_HWEIGHT 129config GENERIC_HWEIGHT
136 bool 130 bool
@@ -281,6 +275,7 @@ config ARCH_EP93XX
281 select HAVE_CLK 275 select HAVE_CLK
282 select COMMON_CLKDEV 276 select COMMON_CLKDEV
283 select ARCH_REQUIRE_GPIOLIB 277 select ARCH_REQUIRE_GPIOLIB
278 select ARCH_HAS_HOLES_MEMORYMODEL
284 help 279 help
285 This enables support for the Cirrus EP93xx series of CPUs. 280 This enables support for the Cirrus EP93xx series of CPUs.
286 281
@@ -299,9 +294,23 @@ config ARCH_MXC
299 select ARCH_MTD_XIP 294 select ARCH_MTD_XIP
300 select GENERIC_GPIO 295 select GENERIC_GPIO
301 select ARCH_REQUIRE_GPIOLIB 296 select ARCH_REQUIRE_GPIOLIB
297 select HAVE_CLK
302 help 298 help
303 Support for Freescale MXC/iMX-based family of processors 299 Support for Freescale MXC/iMX-based family of processors
304 300
301config ARCH_STMP3XXX
302 bool "Freescale STMP3xxx"
303 select CPU_ARM926T
304 select HAVE_CLK
305 select COMMON_CLKDEV
306 select ARCH_REQUIRE_GPIOLIB
307 select GENERIC_TIME
308 select GENERIC_CLOCKEVENTS
309 select GENERIC_GPIO
310 select USB_ARCH_HAS_EHCI
311 help
312 Support for systems based on the Freescale 3xxx CPUs.
313
305config ARCH_NETX 314config ARCH_NETX
306 bool "Hilscher NetX based" 315 bool "Hilscher NetX based"
307 select CPU_ARM926T 316 select CPU_ARM926T
@@ -318,15 +327,6 @@ config ARCH_H720X
318 help 327 help
319 This enables support for systems based on the Hynix HMS720x 328 This enables support for systems based on the Hynix HMS720x
320 329
321config ARCH_IMX
322 bool "IMX"
323 select CPU_ARM920T
324 select GENERIC_GPIO
325 select GENERIC_TIME
326 select GENERIC_CLOCKEVENTS
327 help
328 Support for Motorola's i.MX family of processors (MX1, MXL).
329
330config ARCH_IOP13XX 330config ARCH_IOP13XX
331 bool "IOP13xx-based" 331 bool "IOP13xx-based"
332 depends on MMU 332 depends on MMU
@@ -407,6 +407,7 @@ config ARCH_KIRKWOOD
407 select CPU_FEROCEON 407 select CPU_FEROCEON
408 select PCI 408 select PCI
409 select GENERIC_GPIO 409 select GENERIC_GPIO
410 select ARCH_REQUIRE_GPIOLIB
410 select GENERIC_TIME 411 select GENERIC_TIME
411 select GENERIC_CLOCKEVENTS 412 select GENERIC_CLOCKEVENTS
412 select PLAT_ORION 413 select PLAT_ORION
@@ -428,6 +429,7 @@ config ARCH_MV78XX0
428 select CPU_FEROCEON 429 select CPU_FEROCEON
429 select PCI 430 select PCI
430 select GENERIC_GPIO 431 select GENERIC_GPIO
432 select ARCH_REQUIRE_GPIOLIB
431 select GENERIC_TIME 433 select GENERIC_TIME
432 select GENERIC_CLOCKEVENTS 434 select GENERIC_CLOCKEVENTS
433 select PLAT_ORION 435 select PLAT_ORION
@@ -441,6 +443,7 @@ config ARCH_ORION5X
441 select CPU_FEROCEON 443 select CPU_FEROCEON
442 select PCI 444 select PCI
443 select GENERIC_GPIO 445 select GENERIC_GPIO
446 select ARCH_REQUIRE_GPIOLIB
444 select GENERIC_TIME 447 select GENERIC_TIME
445 select GENERIC_CLOCKEVENTS 448 select GENERIC_CLOCKEVENTS
446 select PLAT_ORION 449 select PLAT_ORION
@@ -488,6 +491,9 @@ config ARCH_NS9XXX
488config ARCH_W90X900 491config ARCH_W90X900
489 bool "Nuvoton W90X900 CPU" 492 bool "Nuvoton W90X900 CPU"
490 select CPU_ARM926T 493 select CPU_ARM926T
494 select ARCH_REQUIRE_GPIOLIB
495 select GENERIC_GPIO
496 select COMMON_CLKDEV
491 help 497 help
492 Support for Nuvoton (Winbond logic dept.) ARM9 processor,You 498 Support for Nuvoton (Winbond logic dept.) ARM9 processor,You
493 can login www.mcuos.com or www.nuvoton.com to know more. 499 can login www.mcuos.com or www.nuvoton.com to know more.
@@ -507,8 +513,6 @@ config ARCH_PXA
507 select HAVE_CLK 513 select HAVE_CLK
508 select COMMON_CLKDEV 514 select COMMON_CLKDEV
509 select ARCH_REQUIRE_GPIOLIB 515 select ARCH_REQUIRE_GPIOLIB
510 select HAVE_CLK
511 select COMMON_CLKDEV
512 select GENERIC_TIME 516 select GENERIC_TIME
513 select GENERIC_CLOCKEVENTS 517 select GENERIC_CLOCKEVENTS
514 select TICK_ONESHOT 518 select TICK_ONESHOT
@@ -617,6 +621,9 @@ config ARCH_DAVINCI
617 select ARCH_REQUIRE_GPIOLIB 621 select ARCH_REQUIRE_GPIOLIB
618 select HAVE_CLK 622 select HAVE_CLK
619 select ZONE_DMA 623 select ZONE_DMA
624 select HAVE_IDE
625 select COMMON_CLKDEV
626 select GENERIC_ALLOCATOR
620 help 627 help
621 Support for TI's DaVinci platform. 628 Support for TI's DaVinci platform.
622 629
@@ -693,9 +700,9 @@ source "arch/arm/mach-s3c6400/Kconfig"
693source "arch/arm/mach-s3c6410/Kconfig" 700source "arch/arm/mach-s3c6410/Kconfig"
694endif 701endif
695 702
696source "arch/arm/mach-lh7a40x/Kconfig" 703source "arch/arm/plat-stmp3xxx/Kconfig"
697 704
698source "arch/arm/mach-imx/Kconfig" 705source "arch/arm/mach-lh7a40x/Kconfig"
699 706
700source "arch/arm/mach-h720x/Kconfig" 707source "arch/arm/mach-h720x/Kconfig"
701 708
@@ -756,6 +763,56 @@ if !MMU
756source "arch/arm/Kconfig-nommu" 763source "arch/arm/Kconfig-nommu"
757endif 764endif
758 765
766config ARM_ERRATA_411920
767 bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
768 depends on CPU_V6 && !SMP
769 help
770 Invalidation of the Instruction Cache operation can
771 fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
772 It does not affect the MPCore. This option enables the ARM Ltd.
773 recommended workaround.
774
775config ARM_ERRATA_430973
776 bool "ARM errata: Stale prediction on replaced interworking branch"
777 depends on CPU_V7
778 help
779 This option enables the workaround for the 430973 Cortex-A8
780 (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb
781 interworking branch is replaced with another code sequence at the
782 same virtual address, whether due to self-modifying code or virtual
783 to physical address re-mapping, Cortex-A8 does not recover from the
784 stale interworking branch prediction. This results in Cortex-A8
785 executing the new code sequence in the incorrect ARM or Thumb state.
786 The workaround enables the BTB/BTAC operations by setting ACTLR.IBE
787 and also flushes the branch target cache at every context switch.
788 Note that setting specific bits in the ACTLR register may not be
789 available in non-secure mode.
790
791config ARM_ERRATA_458693
792 bool "ARM errata: Processor deadlock when a false hazard is created"
793 depends on CPU_V7
794 help
795 This option enables the workaround for the 458693 Cortex-A8 (r2p0)
796 erratum. For very specific sequences of memory operations, it is
797 possible for a hazard condition intended for a cache line to instead
798 be incorrectly associated with a different cache line. This false
799 hazard might then cause a processor deadlock. The workaround enables
800 the L1 caching of the NEON accesses and disables the PLD instruction
801 in the ACTLR register. Note that setting specific bits in the ACTLR
802 register may not be available in non-secure mode.
803
804config ARM_ERRATA_460075
805 bool "ARM errata: Data written to the L2 cache can be overwritten with stale data"
806 depends on CPU_V7
807 help
808 This option enables the workaround for the 460075 Cortex-A8 (r2p0)
809 erratum. Any asynchronous access to the L2 cache may encounter a
810 situation in which recent store transactions to the L2 cache are lost
811 and overwritten with stale memory contents from external memory. The
812 workaround disables the write-allocate mode for the L2 cache via the
813 ACTLR register. Note that setting specific bits in the ACTLR register
814 may not be available in non-secure mode.
815
759endmenu 816endmenu
760 817
761source "arch/arm/common/Kconfig" 818source "arch/arm/common/Kconfig"
@@ -823,8 +880,11 @@ source "kernel/time/Kconfig"
823 880
824config SMP 881config SMP
825 bool "Symmetric Multi-Processing (EXPERIMENTAL)" 882 bool "Symmetric Multi-Processing (EXPERIMENTAL)"
826 depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP) 883 depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\
884 MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4)
885 depends on GENERIC_CLOCKEVENTS
827 select USE_GENERIC_SMP_HELPERS 886 select USE_GENERIC_SMP_HELPERS
887 select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4)
828 help 888 help
829 This enables support for systems with more than one CPU. If you have 889 This enables support for systems with more than one CPU. If you have
830 a system with only one CPU, like most personal computers, say N. If 890 a system with only one CPU, like most personal computers, say N. If
@@ -842,6 +902,18 @@ config SMP
842 902
843 If you don't know what to do here, say N. 903 If you don't know what to do here, say N.
844 904
905config HAVE_ARM_SCU
906 bool
907 depends on SMP
908 help
909 This option enables support for the ARM system coherency unit
910
911config HAVE_ARM_TWD
912 bool
913 depends on SMP
914 help
915 This options enables support for the ARM timer and watchdog unit
916
845choice 917choice
846 prompt "Memory split" 918 prompt "Memory split"
847 default VMSPLIT_3G 919 default VMSPLIT_3G
@@ -880,8 +952,10 @@ config HOTPLUG_CPU
880 952
881config LOCAL_TIMERS 953config LOCAL_TIMERS
882 bool "Use local timer interrupts" 954 bool "Use local timer interrupts"
883 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || REALVIEW_EB_A9MP) 955 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \
956 REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4)
884 default y 957 default y
958 select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4)
885 help 959 help
886 Enable support for local timers on SMP platforms, rather then the 960 Enable support for local timers on SMP platforms, rather then the
887 legacy IPI broadcast method. Local timers allows the system 961 legacy IPI broadcast method. Local timers allows the system
@@ -941,10 +1015,8 @@ config OABI_COMPAT
941 UNPREDICTABLE (in fact it can be predicted that it won't work 1015 UNPREDICTABLE (in fact it can be predicted that it won't work
942 at all). If in doubt say Y. 1016 at all). If in doubt say Y.
943 1017
944config ARCH_FLATMEM_HAS_HOLES 1018config ARCH_HAS_HOLES_MEMORYMODEL
945 bool 1019 bool
946 default y
947 depends on FLATMEM
948 1020
949# Discontigmem is deprecated 1021# Discontigmem is deprecated
950config ARCH_DISCONTIGMEM_ENABLE 1022config ARCH_DISCONTIGMEM_ENABLE
@@ -987,12 +1059,12 @@ source "mm/Kconfig"
987config LEDS 1059config LEDS
988 bool "Timer and CPU usage LEDs" 1060 bool "Timer and CPU usage LEDs"
989 depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 1061 depends on ARCH_CDB89712 || ARCH_EBSA110 || \
990 ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \ 1062 ARCH_EBSA285 || ARCH_INTEGRATOR || \
991 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 1063 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
992 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 1064 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
993 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ 1065 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
994 ARCH_AT91 || ARCH_DAVINCI || \ 1066 ARCH_AT91 || ARCH_DAVINCI || \
995 ARCH_KS8695 || MACH_RD88F5182 1067 ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW
996 help 1068 help
997 If you say Y here, the LEDs on your machine will be used 1069 If you say Y here, the LEDs on your machine will be used
998 to provide useful information about your current system status. 1070 to provide useful information about your current system status.
@@ -1050,6 +1122,22 @@ config ALIGNMENT_TRAP
1050 correct operation of some network protocols. With an IP-only 1122 correct operation of some network protocols. With an IP-only
1051 configuration it is safe to say N, otherwise say Y. 1123 configuration it is safe to say N, otherwise say Y.
1052 1124
1125config UACCESS_WITH_MEMCPY
1126 bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)"
1127 depends on MMU && EXPERIMENTAL
1128 default y if CPU_FEROCEON
1129 help
1130 Implement faster copy_to_user and clear_user methods for CPU
1131 cores where a 8-word STM instruction give significantly higher
1132 memory write throughput than a sequence of individual 32bit stores.
1133
1134 A possible side effect is a slight increase in scheduling latency
1135 between threads sharing the same address space if they invoke
1136 such copy operations with large buffers.
1137
1138 However, if the CPU data cache is using a write-allocate mode,
1139 this option is unlikely to provide any performance gain.
1140
1053endmenu 1141endmenu
1054 1142
1055menu "Boot options" 1143menu "Boot options"
@@ -1153,7 +1241,7 @@ endmenu
1153 1241
1154menu "CPU Power Management" 1242menu "CPU Power Management"
1155 1243
1156if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX || ARCH_PXA) 1244if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_PXA)
1157 1245
1158source "drivers/cpufreq/Kconfig" 1246source "drivers/cpufreq/Kconfig"
1159 1247
@@ -1178,15 +1266,6 @@ config CPU_FREQ_INTEGRATOR
1178 1266
1179 If in doubt, say Y. 1267 If in doubt, say Y.
1180 1268
1181config CPU_FREQ_IMX
1182 tristate "CPUfreq driver for i.MX CPUs"
1183 depends on ARCH_IMX && CPU_FREQ
1184 default n
1185 help
1186 This enables the CPUfreq driver for i.MX CPUs.
1187
1188 If in doubt, say N.
1189
1190config CPU_FREQ_PXA 1269config CPU_FREQ_PXA
1191 bool 1270 bool
1192 depends on CPU_FREQ && ARCH_PXA && PXA25x 1271 depends on CPU_FREQ && ARCH_PXA && PXA25x