xref: /linux/arch/arm/Kconfig (revision ccd7ab7f7efb4cb94b4a000ba220a0aeefe9bc11)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# For a description of the syntax of this configuration file,
31da177e4SLinus Torvalds# see Documentation/kbuild/kconfig-language.txt.
41da177e4SLinus Torvalds#
51da177e4SLinus Torvalds
61da177e4SLinus Torvaldsmainmenu "Linux Kernel Configuration"
71da177e4SLinus Torvalds
81da177e4SLinus Torvaldsconfig ARM
91da177e4SLinus Torvalds	bool
101da177e4SLinus Torvalds	default y
11e17c6d56SDavid Woodhouse	select HAVE_AOUT
122064c946SAdrian Bunk	select HAVE_IDE
1312b824fbSAlessandro Zummo	select RTC_LIB
1475e7153aSRalf Baechle	select SYS_SUPPORTS_APM_EMULATION
1524b44a66SWill Deacon	select GENERIC_ATOMIC64 if (!CPU_32v6K)
1642d4b839SMathieu Desnoyers	select HAVE_OPROFILE
175cbad0ebSJason Wessel	select HAVE_ARCH_KGDB
183f550096SMathieu Desnoyers	select HAVE_KPROBES if (!XIP_KERNEL)
199edddaa2SAnanth N Mavinakayanahalli	select HAVE_KRETPROBES if (HAVE_KPROBES)
20606576ceSSteven Rostedt	select HAVE_FUNCTION_TRACER if (!XIP_KERNEL)
211fe53268SDmitry Baryshkov	select HAVE_GENERIC_DMA_COHERENT
22e7db7b42SAlbin Tonnerre	select HAVE_KERNEL_GZIP
23e7db7b42SAlbin Tonnerre	select HAVE_KERNEL_LZO
247ada189fSJamie Iles	select HAVE_PERF_EVENTS
257ada189fSJamie Iles	select PERF_USE_VMALLOC
261da177e4SLinus Torvalds	help
271da177e4SLinus Torvalds	  The ARM series is a line of low-power-consumption RISC chip designs
28f6c8965aSMartin Michlmayr	  licensed by ARM Ltd and targeted at embedded applications and
291da177e4SLinus Torvalds	  handhelds such as the Compaq IPAQ.  ARM-based PCs are no longer
301da177e4SLinus Torvalds	  manufactured, but legacy ARM-based PC hardware remains popular in
311da177e4SLinus Torvalds	  Europe.  There is an ARM Linux project with a web page at
321da177e4SLinus Torvalds	  <http://www.arm.linux.org.uk/>.
331da177e4SLinus Torvalds
341a189b97SRussell Kingconfig HAVE_PWM
351a189b97SRussell King	bool
361a189b97SRussell King
3775e7153aSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION
3875e7153aSRalf Baechle	bool
3975e7153aSRalf Baechle
400a938b97SDavid Brownellconfig GENERIC_GPIO
410a938b97SDavid Brownell	bool
420a938b97SDavid Brownell
43746140c7SKevin Hilmanconfig GENERIC_TIME
44746140c7SKevin Hilman	bool
45746140c7SKevin Hilman
460567a0c0SKevin Hilmanconfig GENERIC_CLOCKEVENTS
470567a0c0SKevin Hilman	bool
480567a0c0SKevin Hilman
49a8655e83SCatalin Marinasconfig GENERIC_CLOCKEVENTS_BROADCAST
50a8655e83SCatalin Marinas	bool
51a8655e83SCatalin Marinas	depends on GENERIC_CLOCKEVENTS
52a8655e83SCatalin Marinas	default y if SMP && !LOCAL_TIMERS
53a8655e83SCatalin Marinas
54bc581770SLinus Walleijconfig HAVE_TCM
55bc581770SLinus Walleij	bool
56bc581770SLinus Walleij	select GENERIC_ALLOCATOR
57bc581770SLinus Walleij
58e119bfffSRussell Kingconfig HAVE_PROC_CPU
59e119bfffSRussell King	bool
60e119bfffSRussell King
615ea81769SAl Viroconfig NO_IOPORT
625ea81769SAl Viro	bool
635ea81769SAl Viro
641da177e4SLinus Torvaldsconfig EISA
651da177e4SLinus Torvalds	bool
661da177e4SLinus Torvalds	---help---
671da177e4SLinus Torvalds	  The Extended Industry Standard Architecture (EISA) bus was
681da177e4SLinus Torvalds	  developed as an open alternative to the IBM MicroChannel bus.
691da177e4SLinus Torvalds
701da177e4SLinus Torvalds	  The EISA bus provided some of the features of the IBM MicroChannel
711da177e4SLinus Torvalds	  bus while maintaining backward compatibility with cards made for
721da177e4SLinus Torvalds	  the older ISA bus.  The EISA bus saw limited use between 1988 and
731da177e4SLinus Torvalds	  1995 when it was made obsolete by the PCI bus.
741da177e4SLinus Torvalds
751da177e4SLinus Torvalds	  Say Y here if you are building a kernel for an EISA-based machine.
761da177e4SLinus Torvalds
771da177e4SLinus Torvalds	  Otherwise, say N.
781da177e4SLinus Torvalds
791da177e4SLinus Torvaldsconfig SBUS
801da177e4SLinus Torvalds	bool
811da177e4SLinus Torvalds
821da177e4SLinus Torvaldsconfig MCA
831da177e4SLinus Torvalds	bool
841da177e4SLinus Torvalds	help
851da177e4SLinus Torvalds	  MicroChannel Architecture is found in some IBM PS/2 machines and
861da177e4SLinus Torvalds	  laptops.  It is a bus system similar to PCI or ISA. See
871da177e4SLinus Torvalds	  <file:Documentation/mca.txt> (and especially the web page given
881da177e4SLinus Torvalds	  there) before attempting to build an MCA bus kernel.
891da177e4SLinus Torvalds
904a2581a0SThomas Gleixnerconfig GENERIC_HARDIRQS
914a2581a0SThomas Gleixner	bool
924a2581a0SThomas Gleixner	default y
934a2581a0SThomas Gleixner
94f16fb1ecSRussell Kingconfig STACKTRACE_SUPPORT
95f16fb1ecSRussell King	bool
96f16fb1ecSRussell King	default y
97f16fb1ecSRussell King
98f76e9154SNicolas Pitreconfig HAVE_LATENCYTOP_SUPPORT
99f76e9154SNicolas Pitre	bool
100f76e9154SNicolas Pitre	depends on !SMP
101f76e9154SNicolas Pitre	default y
102f76e9154SNicolas Pitre
103f16fb1ecSRussell Kingconfig LOCKDEP_SUPPORT
104f16fb1ecSRussell King	bool
105f16fb1ecSRussell King	default y
106f16fb1ecSRussell King
1077ad1bcb2SRussell Kingconfig TRACE_IRQFLAGS_SUPPORT
1087ad1bcb2SRussell King	bool
1097ad1bcb2SRussell King	default y
1107ad1bcb2SRussell King
1114a2581a0SThomas Gleixnerconfig HARDIRQS_SW_RESEND
1124a2581a0SThomas Gleixner	bool
1134a2581a0SThomas Gleixner	default y
1144a2581a0SThomas Gleixner
1154a2581a0SThomas Gleixnerconfig GENERIC_IRQ_PROBE
1164a2581a0SThomas Gleixner	bool
1174a2581a0SThomas Gleixner	default y
1184a2581a0SThomas Gleixner
11995c354feSNick Pigginconfig GENERIC_LOCKBREAK
12095c354feSNick Piggin	bool
12195c354feSNick Piggin	default y
12295c354feSNick Piggin	depends on SMP && PREEMPT
12395c354feSNick Piggin
1241da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK
1251da177e4SLinus Torvalds	bool
1261da177e4SLinus Torvalds	default y
1271da177e4SLinus Torvalds
1281da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM
1291da177e4SLinus Torvalds	bool
1301da177e4SLinus Torvalds
131f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
132f0d1b0b3SDavid Howells	bool
133f0d1b0b3SDavid Howells
134f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
135f0d1b0b3SDavid Howells	bool
136f0d1b0b3SDavid Howells
13789c52ed4SBen Dooksconfig ARCH_HAS_CPUFREQ
13889c52ed4SBen Dooks	bool
13989c52ed4SBen Dooks	help
14089c52ed4SBen Dooks	  Internal node to signify that the ARCH has CPUFREQ support
14189c52ed4SBen Dooks	  and that the relevant menu configurations are displayed for
14289c52ed4SBen Dooks	  it.
14389c52ed4SBen Dooks
144b89c3b16SAkinobu Mitaconfig GENERIC_HWEIGHT
145b89c3b16SAkinobu Mita	bool
146b89c3b16SAkinobu Mita	default y
147b89c3b16SAkinobu Mita
1481da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY
1491da177e4SLinus Torvalds	bool
1501da177e4SLinus Torvalds	default y
1511da177e4SLinus Torvalds
152a08b6b79Sviro@ZenIV.linux.org.ukconfig ARCH_MAY_HAVE_PC_FDC
153a08b6b79Sviro@ZenIV.linux.org.uk	bool
154a08b6b79Sviro@ZenIV.linux.org.uk
1555ac6da66SChristoph Lameterconfig ZONE_DMA
1565ac6da66SChristoph Lameter	bool
1575ac6da66SChristoph Lameter
158*ccd7ab7fSFUJITA Tomonoriconfig NEED_DMA_MAP_STATE
159*ccd7ab7fSFUJITA Tomonori       def_bool y
160*ccd7ab7fSFUJITA Tomonori
1611da177e4SLinus Torvaldsconfig GENERIC_ISA_DMA
1621da177e4SLinus Torvalds	bool
1631da177e4SLinus Torvalds
1641da177e4SLinus Torvaldsconfig FIQ
1651da177e4SLinus Torvalds	bool
1661da177e4SLinus Torvalds
167034d2f5aSAl Viroconfig ARCH_MTD_XIP
168034d2f5aSAl Viro	bool
169034d2f5aSAl Viro
17060a752efSPaulius Zaleckasconfig GENERIC_HARDIRQS_NO__DO_IRQ
17160a752efSPaulius Zaleckas	def_bool y
17260a752efSPaulius Zaleckas
173d6d502faSKukjin Kimconfig ARM_L1_CACHE_SHIFT_6
174d6d502faSKukjin Kim	bool
175d6d502faSKukjin Kim	help
176d6d502faSKukjin Kim	  Setting ARM L1 cache line size to 64 Bytes.
177d6d502faSKukjin Kim
178c0ffa3a9SMathieu Desnoyersif OPROFILE
179c0ffa3a9SMathieu Desnoyers
180c0ffa3a9SMathieu Desnoyersconfig OPROFILE_ARMV6
181c0ffa3a9SMathieu Desnoyers	def_bool y
182c0ffa3a9SMathieu Desnoyers	depends on CPU_V6 && !SMP
183c0ffa3a9SMathieu Desnoyers	select OPROFILE_ARM11_CORE
184c0ffa3a9SMathieu Desnoyers
185c0ffa3a9SMathieu Desnoyersconfig OPROFILE_MPCORE
186c0ffa3a9SMathieu Desnoyers	def_bool y
187c0ffa3a9SMathieu Desnoyers	depends on CPU_V6 && SMP
188c0ffa3a9SMathieu Desnoyers	select OPROFILE_ARM11_CORE
189c0ffa3a9SMathieu Desnoyers
190c0ffa3a9SMathieu Desnoyersconfig OPROFILE_ARM11_CORE
191c0ffa3a9SMathieu Desnoyers	bool
192c0ffa3a9SMathieu Desnoyers
193d7ac4e28SJean PIHETconfig OPROFILE_ARMV7
194d7ac4e28SJean PIHET	def_bool y
195d7ac4e28SJean PIHET	depends on CPU_V7 && !SMP
196d7ac4e28SJean PIHET	bool
197d7ac4e28SJean PIHET
198c0ffa3a9SMathieu Desnoyersendif
199c0ffa3a9SMathieu Desnoyers
200c760fc19SHyok S. Choiconfig VECTORS_BASE
201c760fc19SHyok S. Choi	hex
2026afd6faeSHyok S. Choi	default 0xffff0000 if MMU || CPU_HIGH_VECTOR
203c760fc19SHyok S. Choi	default DRAM_BASE if REMAP_VECTORS_TO_RAM
204c760fc19SHyok S. Choi	default 0x00000000
205c760fc19SHyok S. Choi	help
206c760fc19SHyok S. Choi	  The base address of exception vectors.
207c760fc19SHyok S. Choi
2081da177e4SLinus Torvaldssource "init/Kconfig"
2091da177e4SLinus Torvalds
210dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer"
211dc52ddc0SMatt Helsley
2121da177e4SLinus Torvaldsmenu "System Type"
2131da177e4SLinus Torvalds
2143c427975SHyok S. Choiconfig MMU
2153c427975SHyok S. Choi	bool "MMU-based Paged Memory Management Support"
2163c427975SHyok S. Choi	default y
2173c427975SHyok S. Choi	help
2183c427975SHyok S. Choi	  Select if you want MMU-based virtualised addressing space
2193c427975SHyok S. Choi	  support by paged memory management. If unsure, say 'Y'.
2203c427975SHyok S. Choi
2211da177e4SLinus Torvaldschoice
2221da177e4SLinus Torvalds	prompt "ARM system type"
2236a0e2430SCatalin Marinas	default ARCH_VERSATILE
2241da177e4SLinus Torvalds
2254af6fee1SDeepak Saxenaconfig ARCH_AAEC2000
2264af6fee1SDeepak Saxena	bool "Agilent AAEC-2000 based"
227c750815eSRussell King	select CPU_ARM920T
2284af6fee1SDeepak Saxena	select ARM_AMBA
2299483a578SDavid Brownell	select HAVE_CLK
2304af6fee1SDeepak Saxena	help
2314af6fee1SDeepak Saxena	  This enables support for systems based on the Agilent AAEC-2000
2324af6fee1SDeepak Saxena
2334af6fee1SDeepak Saxenaconfig ARCH_INTEGRATOR
2344af6fee1SDeepak Saxena	bool "ARM Ltd. Integrator family"
2354af6fee1SDeepak Saxena	select ARM_AMBA
23689c52ed4SBen Dooks	select ARCH_HAS_CPUFREQ
2379483a578SDavid Brownell	select HAVE_CLK
238d72fbdf0SRussell King	select COMMON_CLKDEV
2394af6fee1SDeepak Saxena	select ICST525
2404af6fee1SDeepak Saxena	help
2414af6fee1SDeepak Saxena	  Support for ARM's Integrator platform.
2424af6fee1SDeepak Saxena
2434af6fee1SDeepak Saxenaconfig ARCH_REALVIEW
2444af6fee1SDeepak Saxena	bool "ARM Ltd. RealView family"
2454af6fee1SDeepak Saxena	select ARM_AMBA
2469483a578SDavid Brownell	select HAVE_CLK
247cf30fb4aSRussell King	select COMMON_CLKDEV
2484af6fee1SDeepak Saxena	select ICST307
24985802afeSCatalin Marinas	select GENERIC_TIME
250ae30ceacSCatalin Marinas	select GENERIC_CLOCKEVENTS
251eb7fffa3SRussell King	select ARCH_WANT_OPTIONAL_GPIOLIB
2524af6fee1SDeepak Saxena	help
2534af6fee1SDeepak Saxena	  This enables support for ARM Ltd RealView boards.
2544af6fee1SDeepak Saxena
2554af6fee1SDeepak Saxenaconfig ARCH_VERSATILE
2564af6fee1SDeepak Saxena	bool "ARM Ltd. Versatile family"
2574af6fee1SDeepak Saxena	select ARM_AMBA
2584af6fee1SDeepak Saxena	select ARM_VIC
2599483a578SDavid Brownell	select HAVE_CLK
26071a06da0SRussell King	select COMMON_CLKDEV
2614af6fee1SDeepak Saxena	select ICST307
262b49c87c2SKevin Hilman	select GENERIC_TIME
26389df1272SKevin Hilman	select GENERIC_CLOCKEVENTS
264bbeddc43SRussell King	select ARCH_WANT_OPTIONAL_GPIOLIB
2654af6fee1SDeepak Saxena	help
2664af6fee1SDeepak Saxena	  This enables support for ARM Ltd Versatile board.
2674af6fee1SDeepak Saxena
2688fc5ffa0SAndrew Victorconfig ARCH_AT91
2698fc5ffa0SAndrew Victor	bool "Atmel AT91"
2700a938b97SDavid Brownell	select GENERIC_GPIO
271f373e8c0SRyan Mallon	select ARCH_REQUIRE_GPIOLIB
27293686ae8SDavid Brownell	select HAVE_CLK
2734af6fee1SDeepak Saxena	help
2742b3b3516SAndrew Victor	  This enables support for systems based on the Atmel AT91RM9200,
2752b3b3516SAndrew Victor	  AT91SAM9 and AT91CAP9 processors.
2764af6fee1SDeepak Saxena
2771da177e4SLinus Torvaldsconfig ARCH_CLPS711X
2784af6fee1SDeepak Saxena	bool "Cirrus Logic CLPS711x/EP721x-based"
279c750815eSRussell King	select CPU_ARM720T
280f999b8bdSMartin Michlmayr	help
281f999b8bdSMartin Michlmayr	  Support for Cirrus Logic 711x/721x based boards.
2821da177e4SLinus Torvalds
283788c9700SRussell Kingconfig ARCH_GEMINI
284788c9700SRussell King	bool "Cortina Systems Gemini"
285788c9700SRussell King	select CPU_FA526
286788c9700SRussell King	select GENERIC_GPIO
287788c9700SRussell King	select ARCH_REQUIRE_GPIOLIB
288788c9700SRussell King	help
289788c9700SRussell King	  Support for the Cortina Systems Gemini family SoCs
290788c9700SRussell King
2911da177e4SLinus Torvaldsconfig ARCH_EBSA110
2921da177e4SLinus Torvalds	bool "EBSA-110"
293c750815eSRussell King	select CPU_SA110
294f7e68bbfSRussell King	select ISA
295c5eb2a2bSRussell King	select NO_IOPORT
2961da177e4SLinus Torvalds	help
2971da177e4SLinus Torvalds	  This is an evaluation board for the StrongARM processor available
298f6c8965aSMartin Michlmayr	  from Digital. It has limited hardware on-board, including an
2991da177e4SLinus Torvalds	  Ethernet interface, two PCMCIA sockets, two serial ports and a
3001da177e4SLinus Torvalds	  parallel port.
3011da177e4SLinus Torvalds
302e7736d47SLennert Buytenhekconfig ARCH_EP93XX
303e7736d47SLennert Buytenhek	bool "EP93xx-based"
304c750815eSRussell King	select CPU_ARM920T
305e7736d47SLennert Buytenhek	select ARM_AMBA
306e7736d47SLennert Buytenhek	select ARM_VIC
3074e9f9fd5SHerbert Valerio Riedel	select GENERIC_GPIO
3089483a578SDavid Brownell	select HAVE_CLK
309ae696fd5SRussell King	select COMMON_CLKDEV
3107444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
311eb33575cSMel Gorman	select ARCH_HAS_HOLES_MEMORYMODEL
312e7736d47SLennert Buytenhek	help
313e7736d47SLennert Buytenhek	  This enables support for the Cirrus EP93xx series of CPUs.
314e7736d47SLennert Buytenhek
3151da177e4SLinus Torvaldsconfig ARCH_FOOTBRIDGE
3161da177e4SLinus Torvalds	bool "FootBridge"
317c750815eSRussell King	select CPU_SA110
3181da177e4SLinus Torvalds	select FOOTBRIDGE
319f999b8bdSMartin Michlmayr	help
320f999b8bdSMartin Michlmayr	  Support for systems based on the DC21285 companion chip
321f999b8bdSMartin Michlmayr	  ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder.
3221da177e4SLinus Torvalds
323788c9700SRussell Kingconfig ARCH_MXC
324788c9700SRussell King	bool "Freescale MXC/iMX-based"
325788c9700SRussell King	select GENERIC_TIME
326788c9700SRussell King	select GENERIC_CLOCKEVENTS
327788c9700SRussell King	select ARCH_MTD_XIP
328788c9700SRussell King	select GENERIC_GPIO
329788c9700SRussell King	select ARCH_REQUIRE_GPIOLIB
330a2ab67faSRussell King	select HAVE_CLK
331788c9700SRussell King	help
332788c9700SRussell King	  Support for Freescale MXC/iMX-based family of processors
333788c9700SRussell King
3347bd0f2f5Sdmitry pervushinconfig ARCH_STMP3XXX
3357bd0f2f5Sdmitry pervushin	bool "Freescale STMP3xxx"
3367bd0f2f5Sdmitry pervushin	select CPU_ARM926T
3377bd0f2f5Sdmitry pervushin	select HAVE_CLK
3387bd0f2f5Sdmitry pervushin	select COMMON_CLKDEV
3397bd0f2f5Sdmitry pervushin	select ARCH_REQUIRE_GPIOLIB
3407bd0f2f5Sdmitry pervushin	select GENERIC_TIME
3417bd0f2f5Sdmitry pervushin	select GENERIC_CLOCKEVENTS
3427bd0f2f5Sdmitry pervushin	select GENERIC_GPIO
3437bd0f2f5Sdmitry pervushin	select USB_ARCH_HAS_EHCI
3447bd0f2f5Sdmitry pervushin	help
3457bd0f2f5Sdmitry pervushin	  Support for systems based on the Freescale 3xxx CPUs.
3467bd0f2f5Sdmitry pervushin
3474af6fee1SDeepak Saxenaconfig ARCH_NETX
3484af6fee1SDeepak Saxena	bool "Hilscher NetX based"
349c750815eSRussell King	select CPU_ARM926T
3504af6fee1SDeepak Saxena	select ARM_VIC
3512fcfe6b8SUwe Kleine-König	select GENERIC_CLOCKEVENTS
35221edecd3SUwe Kleine-König	select GENERIC_TIME
353f999b8bdSMartin Michlmayr	help
3544af6fee1SDeepak Saxena	  This enables support for systems based on the Hilscher NetX Soc
3554af6fee1SDeepak Saxena
3564af6fee1SDeepak Saxenaconfig ARCH_H720X
3574af6fee1SDeepak Saxena	bool "Hynix HMS720x-based"
358c750815eSRussell King	select CPU_ARM720T
3594af6fee1SDeepak Saxena	select ISA_DMA_API
3604af6fee1SDeepak Saxena	help
3614af6fee1SDeepak Saxena	  This enables support for systems based on the Hynix HMS720x
3624af6fee1SDeepak Saxena
36328ad94ecSAlessandro Rubiniconfig ARCH_NOMADIK
36428ad94ecSAlessandro Rubini	bool "STMicroelectronics Nomadik"
36528ad94ecSAlessandro Rubini	select ARM_AMBA
36628ad94ecSAlessandro Rubini	select ARM_VIC
36728ad94ecSAlessandro Rubini	select CPU_ARM926T
36828ad94ecSAlessandro Rubini	select HAVE_CLK
36928ad94ecSAlessandro Rubini	select COMMON_CLKDEV
37028ad94ecSAlessandro Rubini	select GENERIC_TIME
37128ad94ecSAlessandro Rubini	select GENERIC_CLOCKEVENTS
3722ec1d359SAlessandro Rubini	select GENERIC_GPIO
3732ec1d359SAlessandro Rubini	select ARCH_REQUIRE_GPIOLIB
37428ad94ecSAlessandro Rubini	help
37528ad94ecSAlessandro Rubini	  Support for the Nomadik platform by ST-Ericsson
37628ad94ecSAlessandro Rubini
3773b938be6SRussell Kingconfig ARCH_IOP13XX
3783b938be6SRussell King	bool "IOP13xx-based"
3793b938be6SRussell King	depends on MMU
380c750815eSRussell King	select CPU_XSC3
3813b938be6SRussell King	select PLAT_IOP
3823b938be6SRussell King	select PCI
3833b938be6SRussell King	select ARCH_SUPPORTS_MSI
3848d5796d2SLennert Buytenhek	select VMSPLIT_1G
3853b938be6SRussell King	help
3863b938be6SRussell King	  Support for Intel's IOP13XX (XScale) family of processors.
3873b938be6SRussell King
3883f7e5815SLennert Buytenhekconfig ARCH_IOP32X
3893f7e5815SLennert Buytenhek	bool "IOP32x-based"
390a4f7e763SRussell King	depends on MMU
391c750815eSRussell King	select CPU_XSCALE
3927ae1f7ecSLennert Buytenhek	select PLAT_IOP
393f7e68bbfSRussell King	select PCI
39463f385cdSArnaud Patard	select GENERIC_GPIO
395bb2b180cSRussell King	select ARCH_REQUIRE_GPIOLIB
396f999b8bdSMartin Michlmayr	help
3973f7e5815SLennert Buytenhek	  Support for Intel's 80219 and IOP32X (XScale) family of
3983f7e5815SLennert Buytenhek	  processors.
3993f7e5815SLennert Buytenhek
4003f7e5815SLennert Buytenhekconfig ARCH_IOP33X
4013f7e5815SLennert Buytenhek	bool "IOP33x-based"
4023f7e5815SLennert Buytenhek	depends on MMU
403c750815eSRussell King	select CPU_XSCALE
4047ae1f7ecSLennert Buytenhek	select PLAT_IOP
4053f7e5815SLennert Buytenhek	select PCI
40663f385cdSArnaud Patard	select GENERIC_GPIO
407bb2b180cSRussell King	select ARCH_REQUIRE_GPIOLIB
4083f7e5815SLennert Buytenhek	help
4093f7e5815SLennert Buytenhek	  Support for Intel's IOP33X (XScale) family of processors.
4101da177e4SLinus Torvalds
4113b938be6SRussell Kingconfig ARCH_IXP23XX
4123b938be6SRussell King 	bool "IXP23XX-based"
413588ef769SDan Williams	depends on MMU
414c750815eSRussell King	select CPU_XSC3
415285f5fa7SDan Williams 	select PCI
416285f5fa7SDan Williams	help
4173b938be6SRussell King	  Support for Intel's IXP23xx (XScale) family of processors.
4181da177e4SLinus Torvalds
4191da177e4SLinus Torvaldsconfig ARCH_IXP2000
4201da177e4SLinus Torvalds	bool "IXP2400/2800-based"
421a4f7e763SRussell King	depends on MMU
422c750815eSRussell King	select CPU_XSCALE
423f7e68bbfSRussell King	select PCI
424f999b8bdSMartin Michlmayr	help
425f999b8bdSMartin Michlmayr	  Support for Intel's IXP2400/2800 (XScale) family of processors.
4261da177e4SLinus Torvalds
4273b938be6SRussell Kingconfig ARCH_IXP4XX
4283b938be6SRussell King	bool "IXP4xx-based"
429a4f7e763SRussell King	depends on MMU
430c750815eSRussell King	select CPU_XSCALE
4318858e9afSMilan Svoboda	select GENERIC_GPIO
4323b938be6SRussell King	select GENERIC_TIME
4333b938be6SRussell King	select GENERIC_CLOCKEVENTS
434485bdde7SRussell King	select DMABOUNCE if PCI
435c4713074SLennert Buytenhek	help
4363b938be6SRussell King	  Support for Intel's IXP4XX (XScale) family of processors.
437c4713074SLennert Buytenhek
4381da177e4SLinus Torvaldsconfig ARCH_L7200
4391da177e4SLinus Torvalds	bool "LinkUp-L7200"
440c750815eSRussell King	select CPU_ARM720T
4411da177e4SLinus Torvalds	select FIQ
4421da177e4SLinus Torvalds	help
4431da177e4SLinus Torvalds	  Say Y here if you intend to run this kernel on a LinkUp Systems
4441da177e4SLinus Torvalds	  L7200 Software Development Board which uses an ARM720T processor.
4451da177e4SLinus Torvalds	  Information on this board can be obtained at:
4461da177e4SLinus Torvalds
4471da177e4SLinus Torvalds	  <http://www.linkupsys.com/>
4481da177e4SLinus Torvalds
4491da177e4SLinus Torvalds	  If you have any questions or comments about the Linux kernel port
4501da177e4SLinus Torvalds	  to this board, send e-mail to <sjhill@cotw.com>.
4511da177e4SLinus Torvalds
452edabd38eSSaeed Bisharaconfig ARCH_DOVE
453edabd38eSSaeed Bishara	bool "Marvell Dove"
454edabd38eSSaeed Bishara	select PCI
455edabd38eSSaeed Bishara	select GENERIC_GPIO
456edabd38eSSaeed Bishara	select ARCH_REQUIRE_GPIOLIB
457edabd38eSSaeed Bishara	select GENERIC_TIME
458edabd38eSSaeed Bishara	select GENERIC_CLOCKEVENTS
459edabd38eSSaeed Bishara	select PLAT_ORION
460edabd38eSSaeed Bishara	help
461edabd38eSSaeed Bishara	  Support for the Marvell Dove SoC 88AP510
462edabd38eSSaeed Bishara
463651c74c7SSaeed Bisharaconfig ARCH_KIRKWOOD
464651c74c7SSaeed Bishara	bool "Marvell Kirkwood"
465c750815eSRussell King	select CPU_FEROCEON
466651c74c7SSaeed Bishara	select PCI
4674c213430SLennert Buytenhek	select GENERIC_GPIO
468a8865655SErik Benada	select ARCH_REQUIRE_GPIOLIB
469651c74c7SSaeed Bishara	select GENERIC_TIME
470651c74c7SSaeed Bishara	select GENERIC_CLOCKEVENTS
471651c74c7SSaeed Bishara	select PLAT_ORION
472651c74c7SSaeed Bishara	help
473651c74c7SSaeed Bishara	  Support for the following Marvell Kirkwood series SoCs:
474651c74c7SSaeed Bishara	  88F6180, 88F6192 and 88F6281.
475651c74c7SSaeed Bishara
476788c9700SRussell Kingconfig ARCH_LOKI
477788c9700SRussell King	bool "Marvell Loki (88RC8480)"
478788c9700SRussell King	select CPU_FEROCEON
479788c9700SRussell King	select GENERIC_TIME
480788c9700SRussell King	select GENERIC_CLOCKEVENTS
481788c9700SRussell King	select PLAT_ORION
482788c9700SRussell King	help
483788c9700SRussell King	  Support for the Marvell Loki (88RC8480) SoC.
484788c9700SRussell King
485788c9700SRussell Kingconfig ARCH_MV78XX0
486788c9700SRussell King	bool "Marvell MV78xx0"
487788c9700SRussell King	select CPU_FEROCEON
488788c9700SRussell King	select PCI
489788c9700SRussell King	select GENERIC_GPIO
490a8865655SErik Benada	select ARCH_REQUIRE_GPIOLIB
491788c9700SRussell King	select GENERIC_TIME
492788c9700SRussell King	select GENERIC_CLOCKEVENTS
493788c9700SRussell King	select PLAT_ORION
494788c9700SRussell King	help
495788c9700SRussell King	  Support for the following Marvell MV78xx0 series SoCs:
496788c9700SRussell King	  MV781x0, MV782x0.
497788c9700SRussell King
498788c9700SRussell Kingconfig ARCH_ORION5X
499788c9700SRussell King	bool "Marvell Orion"
500788c9700SRussell King	depends on MMU
501788c9700SRussell King	select CPU_FEROCEON
502788c9700SRussell King	select PCI
503788c9700SRussell King	select GENERIC_GPIO
504a8865655SErik Benada	select ARCH_REQUIRE_GPIOLIB
505788c9700SRussell King	select GENERIC_TIME
506788c9700SRussell King	select GENERIC_CLOCKEVENTS
507788c9700SRussell King	select PLAT_ORION
508788c9700SRussell King	help
509788c9700SRussell King	  Support for the following Marvell Orion 5x series SoCs:
510788c9700SRussell King	  Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182),
511788c9700SRussell King	  Orion-2 (5281), Orion-1-90 (6183).
512788c9700SRussell King
513788c9700SRussell Kingconfig ARCH_MMP
514788c9700SRussell King	bool "Marvell PXA168/910"
515788c9700SRussell King	depends on MMU
516788c9700SRussell King	select GENERIC_GPIO
517788c9700SRussell King	select ARCH_REQUIRE_GPIOLIB
518788c9700SRussell King	select HAVE_CLK
519788c9700SRussell King	select COMMON_CLKDEV
520788c9700SRussell King	select GENERIC_TIME
521788c9700SRussell King	select GENERIC_CLOCKEVENTS
522788c9700SRussell King	select TICK_ONESHOT
523788c9700SRussell King	select PLAT_PXA
524788c9700SRussell King	help
525788c9700SRussell King	  Support for Marvell's PXA168/910 processor line.
526788c9700SRussell King
527c53c9cf6SAndrew Victorconfig ARCH_KS8695
528c53c9cf6SAndrew Victor	bool "Micrel/Kendin KS8695"
529c750815eSRussell King	select CPU_ARM922T
5308a87a996SAndrew Victor	select GENERIC_GPIO
53172880ad8SDaniel Silverstone        select ARCH_REQUIRE_GPIOLIB
532c53c9cf6SAndrew Victor	help
533c53c9cf6SAndrew Victor	  Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based
534c53c9cf6SAndrew Victor	  System-on-Chip devices.
535c53c9cf6SAndrew Victor
5369918cda5SUwe Kleine-Königconfig ARCH_NS9XXX
5379918cda5SUwe Kleine-König	bool "NetSilicon NS9xxx"
538c750815eSRussell King	select CPU_ARM926T
539689f2a01SUwe Kleine-König	select GENERIC_GPIO
540cef5975dSUwe Kleine-König	select GENERIC_TIME
541c0bb87f7SUwe Kleine-König	select GENERIC_CLOCKEVENTS
5429483a578SDavid Brownell	select HAVE_CLK
5439918cda5SUwe Kleine-König	help
5449918cda5SUwe Kleine-König	  Say Y here if you intend to run this kernel on a NetSilicon NS9xxx
5459918cda5SUwe Kleine-König	  System.
5469918cda5SUwe Kleine-König
5479918cda5SUwe Kleine-König	  <http://www.digi.com/products/microprocessors/index.jsp>
5489918cda5SUwe Kleine-König
549788c9700SRussell Kingconfig ARCH_W90X900
550788c9700SRussell King	bool "Nuvoton W90X900 CPU"
551788c9700SRussell King	select CPU_ARM926T
552c52d3d68Swanzongshun	select ARCH_REQUIRE_GPIOLIB
553c52d3d68Swanzongshun	select GENERIC_GPIO
554d2c24195Swanzongshun	select HAVE_CLK
5550e4a34bbSwanzongshun	select COMMON_CLKDEV
55658b5369eSwanzongshun	select GENERIC_TIME
55758b5369eSwanzongshun	select GENERIC_CLOCKEVENTS
558777f9bebSLennert Buytenhek	help
559a8bc4eadSwanzongshun	  Support for Nuvoton (Winbond logic dept.) ARM9 processor,
560a8bc4eadSwanzongshun	  At present, the w90x900 has been renamed nuc900, regarding
561a8bc4eadSwanzongshun	  the ARM series product line, you can login the following
562a8bc4eadSwanzongshun	  link address to know more.
563a8bc4eadSwanzongshun
564a8bc4eadSwanzongshun	  <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/
565a8bc4eadSwanzongshun		ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller>
566585cf175STzachi Perelstein
567a62e9030Swanzongshunconfig ARCH_NUC93X
568a62e9030Swanzongshun	bool "Nuvoton NUC93X CPU"
569a62e9030Swanzongshun	select CPU_ARM926T
570a62e9030Swanzongshun	select HAVE_CLK
571a62e9030Swanzongshun	select COMMON_CLKDEV
572a62e9030Swanzongshun	help
573a62e9030Swanzongshun	  Support for Nuvoton (Winbond logic dept.) NUC93X MCU,The NUC93X is a
574a62e9030Swanzongshun	  low-power and high performance MPEG-4/JPEG multimedia controller chip.
575a62e9030Swanzongshun
5764af6fee1SDeepak Saxenaconfig ARCH_PNX4008
5774af6fee1SDeepak Saxena	bool "Philips Nexperia PNX4008 Mobile"
578c750815eSRussell King	select CPU_ARM926T
5799483a578SDavid Brownell	select HAVE_CLK
5806985a5adSRussell King	select COMMON_CLKDEV
5814af6fee1SDeepak Saxena	help
5824af6fee1SDeepak Saxena	  This enables support for Philips PNX4008 mobile platform.
5834af6fee1SDeepak Saxena
5841da177e4SLinus Torvaldsconfig ARCH_PXA
5852c8086a5Seric miao	bool "PXA2xx/PXA3xx-based"
586a4f7e763SRussell King	depends on MMU
587034d2f5aSAl Viro	select ARCH_MTD_XIP
58889c52ed4SBen Dooks	select ARCH_HAS_CPUFREQ
5890a938b97SDavid Brownell	select GENERIC_GPIO
5909483a578SDavid Brownell	select HAVE_CLK
5918c3abc7dSRussell King	select COMMON_CLKDEV
5927444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
59345cf5eefSNicolas Pitre	select GENERIC_TIME
594981d0f39SEric Miao	select GENERIC_CLOCKEVENTS
595a88264c2SRussell King	select TICK_ONESHOT
596bd5ce433SEric Miao	select PLAT_PXA
597f999b8bdSMartin Michlmayr	help
5982c8086a5Seric miao	  Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
5991da177e4SLinus Torvalds
600788c9700SRussell Kingconfig ARCH_MSM
601788c9700SRussell King	bool "Qualcomm MSM"
602788c9700SRussell King	select CPU_V6
60349cbe786SEric Miao	select GENERIC_TIME
60449cbe786SEric Miao	select GENERIC_CLOCKEVENTS
60549cbe786SEric Miao	help
606788c9700SRussell King	  Support for Qualcomm MSM7K based systems.  This runs on the ARM11
607788c9700SRussell King	  apps processor of the MSM7K and depends on a shared memory
608788c9700SRussell King	  interface to the ARM9 modem processor which runs the baseband stack
609788c9700SRussell King	  and controls some vital subsystems (clock and power control, etc).
61049cbe786SEric Miao
6111da177e4SLinus Torvaldsconfig ARCH_RPC
6121da177e4SLinus Torvalds	bool "RiscPC"
6131da177e4SLinus Torvalds	select ARCH_ACORN
6141da177e4SLinus Torvalds	select FIQ
6151da177e4SLinus Torvalds	select TIMER_ACORN
616a08b6b79Sviro@ZenIV.linux.org.uk	select ARCH_MAY_HAVE_PC_FDC
617341eb781SBen Dooks	select HAVE_PATA_PLATFORM
618065909b9SRussell King	select ISA_DMA_API
6195ea81769SAl Viro	select NO_IOPORT
62007f841b7SRussell King	select ARCH_SPARSEMEM_ENABLE
6211da177e4SLinus Torvalds	help
6221da177e4SLinus Torvalds	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
6231da177e4SLinus Torvalds	  CD-ROM interface, serial and parallel port, and the floppy drive.
6241da177e4SLinus Torvalds
6251da177e4SLinus Torvaldsconfig ARCH_SA1100
6261da177e4SLinus Torvalds	bool "SA1100-based"
627c750815eSRussell King	select CPU_SA1100
628f7e68bbfSRussell King	select ISA
62905944d74SRussell King	select ARCH_SPARSEMEM_ENABLE
630034d2f5aSAl Viro	select ARCH_MTD_XIP
63189c52ed4SBen Dooks	select ARCH_HAS_CPUFREQ
6321937f5b9SRussell King	select CPU_FREQ
6330a938b97SDavid Brownell	select GENERIC_GPIO
634d142b6e7SRussell King	select GENERIC_TIME
6353e238be2SRussell King	select GENERIC_CLOCKEVENTS
6369483a578SDavid Brownell	select HAVE_CLK
6373e238be2SRussell King	select TICK_ONESHOT
6387444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
639f999b8bdSMartin Michlmayr	help
640f999b8bdSMartin Michlmayr	  Support for StrongARM 11x0 based boards.
6411da177e4SLinus Torvalds
6421da177e4SLinus Torvaldsconfig ARCH_S3C2410
643e4d06e39SBen Dooks	bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
6440a938b97SDavid Brownell	select GENERIC_GPIO
6459d56c02aSBen Dooks	select ARCH_HAS_CPUFREQ
6469483a578SDavid Brownell	select HAVE_CLK
6471da177e4SLinus Torvalds	help
6481da177e4SLinus Torvalds	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
6491da177e4SLinus Torvalds	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
650f6c8965aSMartin Michlmayr	  the Samsung SMDK2410 development board (and derivatives).
6511da177e4SLinus Torvalds
652a08ab637SBen Dooksconfig ARCH_S3C64XX
653a08ab637SBen Dooks	bool "Samsung S3C64XX"
654a08ab637SBen Dooks	select GENERIC_GPIO
655a08ab637SBen Dooks	select HAVE_CLK
65689c52ed4SBen Dooks	select ARCH_HAS_CPUFREQ
657a08ab637SBen Dooks	help
658a08ab637SBen Dooks	  Samsung S3C64XX series based systems
659a08ab637SBen Dooks
6605a7652f2SByungho Minconfig ARCH_S5PC1XX
6615a7652f2SByungho Min	bool "Samsung S5PC1XX"
6625a7652f2SByungho Min	select GENERIC_GPIO
6635a7652f2SByungho Min	select HAVE_CLK
6645a7652f2SByungho Min	select CPU_V7
665d6d502faSKukjin Kim	select ARM_L1_CACHE_SHIFT_6
6665a7652f2SByungho Min	help
6675a7652f2SByungho Min	  Samsung S5PC1XX series based systems
6685a7652f2SByungho Min
6691da177e4SLinus Torvaldsconfig ARCH_SHARK
6701da177e4SLinus Torvalds	bool "Shark"
671c750815eSRussell King	select CPU_SA110
672f7e68bbfSRussell King	select ISA
673f7e68bbfSRussell King	select ISA_DMA
6743bca103aSNicolas Pitre	select ZONE_DMA
675f7e68bbfSRussell King	select PCI
676f999b8bdSMartin Michlmayr	help
677f999b8bdSMartin Michlmayr	  Support for the StrongARM based Digital DNARD machine, also known
678f999b8bdSMartin Michlmayr	  as "Shark" (<http://www.shark-linux.de/shark.html>).
6791da177e4SLinus Torvalds
6801da177e4SLinus Torvaldsconfig ARCH_LH7A40X
6811da177e4SLinus Torvalds	bool "Sharp LH7A40X"
682c750815eSRussell King	select CPU_ARM922T
6834ba3f7c5SRussell King	select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM
6844ba3f7c5SRussell King	select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM
6851da177e4SLinus Torvalds	help
6861da177e4SLinus Torvalds	  Say Y here for systems based on one of the Sharp LH7A40X
6871da177e4SLinus Torvalds	  System on a Chip processors.  These CPUs include an ARM922T
6881da177e4SLinus Torvalds	  core with a wide array of integrated devices for
6891da177e4SLinus Torvalds	  hand-held and low-power applications.
6901da177e4SLinus Torvalds
691d98aac75SLinus Walleijconfig ARCH_U300
692d98aac75SLinus Walleij	bool "ST-Ericsson U300 Series"
693d98aac75SLinus Walleij	depends on MMU
694d98aac75SLinus Walleij	select CPU_ARM926T
695bc581770SLinus Walleij	select HAVE_TCM
696d98aac75SLinus Walleij	select ARM_AMBA
697d98aac75SLinus Walleij	select ARM_VIC
698d98aac75SLinus Walleij	select GENERIC_TIME
699d98aac75SLinus Walleij	select GENERIC_CLOCKEVENTS
700d98aac75SLinus Walleij	select HAVE_CLK
701d98aac75SLinus Walleij	select COMMON_CLKDEV
702d98aac75SLinus Walleij	select GENERIC_GPIO
703d98aac75SLinus Walleij	help
704d98aac75SLinus Walleij	  Support for ST-Ericsson U300 series mobile platforms.
705d98aac75SLinus Walleij
7067c6337e2SKevin Hilmanconfig ARCH_DAVINCI
7077c6337e2SKevin Hilman	bool "TI DaVinci"
708c750815eSRussell King	select CPU_ARM926T
7097c6337e2SKevin Hilman	select GENERIC_TIME
7107c6337e2SKevin Hilman	select GENERIC_CLOCKEVENTS
7113d9edf09SVladimir Barinov	select GENERIC_GPIO
712dce1115bSDavid Brownell	select ARCH_REQUIRE_GPIOLIB
7139483a578SDavid Brownell	select HAVE_CLK
7143bca103aSNicolas Pitre	select ZONE_DMA
7159232fcc9SKevin Hilman	select HAVE_IDE
716c5b736d0SKevin Hilman	select COMMON_CLKDEV
71720e9969bSDavid Brownell	select GENERIC_ALLOCATOR
718ae88e05aSSekhar Nori	select ARCH_HAS_HOLES_MEMORYMODEL
7197c6337e2SKevin Hilman	help
7207c6337e2SKevin Hilman	  Support for TI's DaVinci platform.
7217c6337e2SKevin Hilman
7223b938be6SRussell Kingconfig ARCH_OMAP
7233b938be6SRussell King	bool "TI OMAP"
7243b938be6SRussell King	select GENERIC_GPIO
7259483a578SDavid Brownell	select HAVE_CLK
7267444a72eSMichael Buesch	select ARCH_REQUIRE_GPIOLIB
72789c52ed4SBen Dooks	select ARCH_HAS_CPUFREQ
7283b938be6SRussell King	select GENERIC_TIME
72906cad098SKevin Hilman	select GENERIC_CLOCKEVENTS
7309af915daSSriram	select ARCH_HAS_HOLES_MEMORYMODEL
7313b938be6SRussell King	help
7323b938be6SRussell King	  Support for TI's OMAP platform (OMAP1 and OMAP2).
7333b938be6SRussell King
7346288e28dSLeo Chenconfig ARCH_BCMRING
7356288e28dSLeo Chen	bool "Broadcom BCMRING"
7366288e28dSLeo Chen	depends on MMU
7376288e28dSLeo Chen	select CPU_V6
7386288e28dSLeo Chen	select ARM_AMBA
7396288e28dSLeo Chen	select COMMON_CLKDEV
7406288e28dSLeo Chen	select GENERIC_TIME
7416288e28dSLeo Chen	select GENERIC_CLOCKEVENTS
7426288e28dSLeo Chen	select ARCH_WANT_OPTIONAL_GPIOLIB
7436288e28dSLeo Chen	help
7446288e28dSLeo Chen	  Support for Broadcom's BCMRing platform.
7456288e28dSLeo Chen
746850265e8SSrinidhi Kasagarconfig ARCH_U8500
747850265e8SSrinidhi Kasagar	bool "ST-Ericsson U8500 Series"
748850265e8SSrinidhi Kasagar	select CPU_V7
749850265e8SSrinidhi Kasagar	select ARM_AMBA
750850265e8SSrinidhi Kasagar	select GENERIC_TIME
751850265e8SSrinidhi Kasagar	select GENERIC_CLOCKEVENTS
752850265e8SSrinidhi Kasagar	select COMMON_CLKDEV
753850265e8SSrinidhi Kasagar	help
754850265e8SSrinidhi Kasagar	  Support for ST-Ericsson's Ux500 architecture
755850265e8SSrinidhi Kasagar
7561da177e4SLinus Torvaldsendchoice
7571da177e4SLinus Torvalds
75895b8f20fSRussell Kingsource "arch/arm/mach-aaec2000/Kconfig"
75995b8f20fSRussell King
76095b8f20fSRussell Kingsource "arch/arm/mach-at91/Kconfig"
76195b8f20fSRussell King
76295b8f20fSRussell Kingsource "arch/arm/mach-bcmring/Kconfig"
76395b8f20fSRussell King
7641da177e4SLinus Torvaldssource "arch/arm/mach-clps711x/Kconfig"
7651da177e4SLinus Torvalds
76695b8f20fSRussell Kingsource "arch/arm/mach-davinci/Kconfig"
76795b8f20fSRussell King
76895b8f20fSRussell Kingsource "arch/arm/mach-dove/Kconfig"
76995b8f20fSRussell King
770e7736d47SLennert Buytenheksource "arch/arm/mach-ep93xx/Kconfig"
771e7736d47SLennert Buytenhek
7721da177e4SLinus Torvaldssource "arch/arm/mach-footbridge/Kconfig"
7731da177e4SLinus Torvalds
77459d3a193SPaulius Zaleckassource "arch/arm/mach-gemini/Kconfig"
77559d3a193SPaulius Zaleckas
77695b8f20fSRussell Kingsource "arch/arm/mach-h720x/Kconfig"
77795b8f20fSRussell King
7781da177e4SLinus Torvaldssource "arch/arm/mach-integrator/Kconfig"
7791da177e4SLinus Torvalds
7803f7e5815SLennert Buytenheksource "arch/arm/mach-iop32x/Kconfig"
7813f7e5815SLennert Buytenhek
7823f7e5815SLennert Buytenheksource "arch/arm/mach-iop33x/Kconfig"
7831da177e4SLinus Torvalds
784285f5fa7SDan Williamssource "arch/arm/mach-iop13xx/Kconfig"
785285f5fa7SDan Williams
7861da177e4SLinus Torvaldssource "arch/arm/mach-ixp4xx/Kconfig"
7871da177e4SLinus Torvalds
7881da177e4SLinus Torvaldssource "arch/arm/mach-ixp2000/Kconfig"
7891da177e4SLinus Torvalds
790c4713074SLennert Buytenheksource "arch/arm/mach-ixp23xx/Kconfig"
791c4713074SLennert Buytenhek
79295b8f20fSRussell Kingsource "arch/arm/mach-kirkwood/Kconfig"
79395b8f20fSRussell King
79495b8f20fSRussell Kingsource "arch/arm/mach-ks8695/Kconfig"
79595b8f20fSRussell King
79695b8f20fSRussell Kingsource "arch/arm/mach-lh7a40x/Kconfig"
79795b8f20fSRussell King
798777f9bebSLennert Buytenheksource "arch/arm/mach-loki/Kconfig"
799777f9bebSLennert Buytenhek
80095b8f20fSRussell Kingsource "arch/arm/mach-msm/Kconfig"
80195b8f20fSRussell King
802794d15b2SStanislav Samsonovsource "arch/arm/mach-mv78xx0/Kconfig"
803794d15b2SStanislav Samsonov
80495b8f20fSRussell Kingsource "arch/arm/plat-mxc/Kconfig"
8051da177e4SLinus Torvalds
80695b8f20fSRussell Kingsource "arch/arm/mach-netx/Kconfig"
80749cbe786SEric Miao
80895b8f20fSRussell Kingsource "arch/arm/mach-nomadik/Kconfig"
80995b8f20fSRussell Kingsource "arch/arm/plat-nomadik/Kconfig"
81095b8f20fSRussell King
81195b8f20fSRussell Kingsource "arch/arm/mach-ns9xxx/Kconfig"
8121da177e4SLinus Torvalds
813d91a8910SRussell Kingsource "arch/arm/mach-nuc93x/Kconfig"
814d91a8910SRussell King
815d48af15eSTony Lindgrensource "arch/arm/plat-omap/Kconfig"
816d48af15eSTony Lindgren
817d48af15eSTony Lindgrensource "arch/arm/mach-omap1/Kconfig"
8181da177e4SLinus Torvalds
8191dbae815STony Lindgrensource "arch/arm/mach-omap2/Kconfig"
8201dbae815STony Lindgren
8219dd0b194SLennert Buytenheksource "arch/arm/mach-orion5x/Kconfig"
822585cf175STzachi Perelstein
82395b8f20fSRussell Kingsource "arch/arm/mach-pxa/Kconfig"
82495b8f20fSRussell Kingsource "arch/arm/plat-pxa/Kconfig"
8251da177e4SLinus Torvalds
82695b8f20fSRussell Kingsource "arch/arm/mach-mmp/Kconfig"
82795b8f20fSRussell King
82895b8f20fSRussell Kingsource "arch/arm/mach-realview/Kconfig"
82995b8f20fSRussell King
83095b8f20fSRussell Kingsource "arch/arm/mach-sa1100/Kconfig"
831edabd38eSSaeed Bishara
832cf383678SBen Dookssource "arch/arm/plat-samsung/Kconfig"
833a21765a7SBen Dookssource "arch/arm/plat-s3c24xx/Kconfig"
834a08ab637SBen Dookssource "arch/arm/plat-s3c64xx/Kconfig"
835d58153d8SBen Dookssource "arch/arm/plat-s3c/Kconfig"
8365a7652f2SByungho Minsource "arch/arm/plat-s5pc1xx/Kconfig"
837a21765a7SBen Dooks
838a21765a7SBen Dooksif ARCH_S3C2410
839a21765a7SBen Dookssource "arch/arm/mach-s3c2400/Kconfig"
8401da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig"
841a21765a7SBen Dookssource "arch/arm/mach-s3c2412/Kconfig"
842a21765a7SBen Dookssource "arch/arm/mach-s3c2440/Kconfig"
843a21765a7SBen Dookssource "arch/arm/mach-s3c2442/Kconfig"
844e4d06e39SBen Dookssource "arch/arm/mach-s3c2443/Kconfig"
845a21765a7SBen Dooksendif
8461da177e4SLinus Torvalds
847a08ab637SBen Dooksif ARCH_S3C64XX
848a08ab637SBen Dookssource "arch/arm/mach-s3c6400/Kconfig"
849a08ab637SBen Dookssource "arch/arm/mach-s3c6410/Kconfig"
850a08ab637SBen Dooksendif
851a08ab637SBen Dooks
8527bd0f2f5Sdmitry pervushinsource "arch/arm/plat-stmp3xxx/Kconfig"
8537bd0f2f5Sdmitry pervushin
8545a7652f2SByungho Minif ARCH_S5PC1XX
8555a7652f2SByungho Minsource "arch/arm/mach-s5pc100/Kconfig"
8565a7652f2SByungho Minendif
8575a7652f2SByungho Min
85895b8f20fSRussell Kingsource "arch/arm/mach-u300/Kconfig"
8591da177e4SLinus Torvalds
86095b8f20fSRussell Kingsource "arch/arm/mach-ux500/Kconfig"
8611da177e4SLinus Torvalds
8621da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig"
8631da177e4SLinus Torvalds
8647ec80ddfSwanzongshunsource "arch/arm/mach-w90x900/Kconfig"
8657ec80ddfSwanzongshun
8661da177e4SLinus Torvalds# Definitions to make life easier
8671da177e4SLinus Torvaldsconfig ARCH_ACORN
8681da177e4SLinus Torvalds	bool
8691da177e4SLinus Torvalds
8707ae1f7ecSLennert Buytenhekconfig PLAT_IOP
8717ae1f7ecSLennert Buytenhek	bool
872469d3044SMikael Pettersson	select GENERIC_CLOCKEVENTS
873980f2296SMikael Pettersson	select GENERIC_TIME
8747ae1f7ecSLennert Buytenhek
87569b02f6aSLennert Buytenhekconfig PLAT_ORION
87669b02f6aSLennert Buytenhek	bool
87769b02f6aSLennert Buytenhek
878bd5ce433SEric Miaoconfig PLAT_PXA
879bd5ce433SEric Miao	bool
880bd5ce433SEric Miao
8811da177e4SLinus Torvaldssource arch/arm/mm/Kconfig
8821da177e4SLinus Torvalds
883afe4b25eSLennert Buytenhekconfig IWMMXT
884afe4b25eSLennert Buytenhek	bool "Enable iWMMXt support"
88540305a58SEric Miao	depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK
88640305a58SEric Miao	default y if PXA27x || PXA3xx || ARCH_MMP
887afe4b25eSLennert Buytenhek	help
888afe4b25eSLennert Buytenhek	  Enable support for iWMMXt context switching at run time if
889afe4b25eSLennert Buytenhek	  running on a CPU that supports it.
890afe4b25eSLennert Buytenhek
8911da177e4SLinus Torvalds#  bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER
8921da177e4SLinus Torvaldsconfig XSCALE_PMU
8931da177e4SLinus Torvalds	bool
8941da177e4SLinus Torvalds	depends on CPU_XSCALE && !XSCALE_PMU_TIMER
8951da177e4SLinus Torvalds	default y
8961da177e4SLinus Torvalds
8970f4f0672SJamie Ilesconfig CPU_HAS_PMU
8980f4f0672SJamie Iles	depends on CPU_V6 || CPU_V7 || XSCALE_PMU
8990f4f0672SJamie Iles	default y
9000f4f0672SJamie Iles	bool
9010f4f0672SJamie Iles
9023b93e7b0SHyok S. Choiif !MMU
9033b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu"
9043b93e7b0SHyok S. Choiendif
9053b93e7b0SHyok S. Choi
9069cba3cccSCatalin Marinasconfig ARM_ERRATA_411920
9079cba3cccSCatalin Marinas	bool "ARM errata: Invalidation of the Instruction Cache operation can fail"
9089cba3cccSCatalin Marinas	depends on CPU_V6 && !SMP
9099cba3cccSCatalin Marinas	help
9109cba3cccSCatalin Marinas	  Invalidation of the Instruction Cache operation can
9119cba3cccSCatalin Marinas	  fail. This erratum is present in 1136 (before r1p4), 1156 and 1176.
9129cba3cccSCatalin Marinas	  It does not affect the MPCore. This option enables the ARM Ltd.
9139cba3cccSCatalin Marinas	  recommended workaround.
9149cba3cccSCatalin Marinas
9157ce236fcSCatalin Marinasconfig ARM_ERRATA_430973
9167ce236fcSCatalin Marinas	bool "ARM errata: Stale prediction on replaced interworking branch"
9177ce236fcSCatalin Marinas	depends on CPU_V7
9187ce236fcSCatalin Marinas	help
9197ce236fcSCatalin Marinas	  This option enables the workaround for the 430973 Cortex-A8
9207ce236fcSCatalin Marinas	  (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb
9217ce236fcSCatalin Marinas	  interworking branch is replaced with another code sequence at the
9227ce236fcSCatalin Marinas	  same virtual address, whether due to self-modifying code or virtual
9237ce236fcSCatalin Marinas	  to physical address re-mapping, Cortex-A8 does not recover from the
9247ce236fcSCatalin Marinas	  stale interworking branch prediction. This results in Cortex-A8
9257ce236fcSCatalin Marinas	  executing the new code sequence in the incorrect ARM or Thumb state.
9267ce236fcSCatalin Marinas	  The workaround enables the BTB/BTAC operations by setting ACTLR.IBE
9277ce236fcSCatalin Marinas	  and also flushes the branch target cache at every context switch.
9287ce236fcSCatalin Marinas	  Note that setting specific bits in the ACTLR register may not be
9297ce236fcSCatalin Marinas	  available in non-secure mode.
9307ce236fcSCatalin Marinas
931855c551fSCatalin Marinasconfig ARM_ERRATA_458693
932855c551fSCatalin Marinas	bool "ARM errata: Processor deadlock when a false hazard is created"
933855c551fSCatalin Marinas	depends on CPU_V7
934855c551fSCatalin Marinas	help
935855c551fSCatalin Marinas	  This option enables the workaround for the 458693 Cortex-A8 (r2p0)
936855c551fSCatalin Marinas	  erratum. For very specific sequences of memory operations, it is
937855c551fSCatalin Marinas	  possible for a hazard condition intended for a cache line to instead
938855c551fSCatalin Marinas	  be incorrectly associated with a different cache line. This false
939855c551fSCatalin Marinas	  hazard might then cause a processor deadlock. The workaround enables
940855c551fSCatalin Marinas	  the L1 caching of the NEON accesses and disables the PLD instruction
941855c551fSCatalin Marinas	  in the ACTLR register. Note that setting specific bits in the ACTLR
942855c551fSCatalin Marinas	  register may not be available in non-secure mode.
943855c551fSCatalin Marinas
9440516e464SCatalin Marinasconfig ARM_ERRATA_460075
9450516e464SCatalin Marinas	bool "ARM errata: Data written to the L2 cache can be overwritten with stale data"
9460516e464SCatalin Marinas	depends on CPU_V7
9470516e464SCatalin Marinas	help
9480516e464SCatalin Marinas	  This option enables the workaround for the 460075 Cortex-A8 (r2p0)
9490516e464SCatalin Marinas	  erratum. Any asynchronous access to the L2 cache may encounter a
9500516e464SCatalin Marinas	  situation in which recent store transactions to the L2 cache are lost
9510516e464SCatalin Marinas	  and overwritten with stale memory contents from external memory. The
9520516e464SCatalin Marinas	  workaround disables the write-allocate mode for the L2 cache via the
9530516e464SCatalin Marinas	  ACTLR register. Note that setting specific bits in the ACTLR register
9540516e464SCatalin Marinas	  may not be available in non-secure mode.
9550516e464SCatalin Marinas
9569e65582aSSantosh Shilimkarconfig PL310_ERRATA_588369
9579e65582aSSantosh Shilimkar	bool "Clean & Invalidate maintenance operations do not invalidate clean lines"
9589e65582aSSantosh Shilimkar	depends on CACHE_L2X0 && ARCH_OMAP4
9599e65582aSSantosh Shilimkar	help
9609e65582aSSantosh Shilimkar	   The PL310 L2 cache controller implements three types of Clean &
9619e65582aSSantosh Shilimkar	   Invalidate maintenance operations: by Physical Address
9629e65582aSSantosh Shilimkar	   (offset 0x7F0), by Index/Way (0x7F8) and by Way (0x7FC).
9639e65582aSSantosh Shilimkar	   They are architecturally defined to behave as the execution of a
9649e65582aSSantosh Shilimkar	   clean operation followed immediately by an invalidate operation,
9659e65582aSSantosh Shilimkar	   both performing to the same memory location. This functionality
9669e65582aSSantosh Shilimkar	   is not correctly implemented in PL310 as clean lines are not
9679e65582aSSantosh Shilimkar	   invalidated as a result of these operations. Note that this errata
9689e65582aSSantosh Shilimkar	   uses Texas Instrument's secure monitor api.
9691da177e4SLinus Torvaldsendmenu
9701da177e4SLinus Torvalds
9711da177e4SLinus Torvaldssource "arch/arm/common/Kconfig"
9721da177e4SLinus Torvalds
9731da177e4SLinus Torvaldsconfig FORCE_MAX_ZONEORDER
9741da177e4SLinus Torvalds	int
9751da177e4SLinus Torvalds	depends on SA1111
9761da177e4SLinus Torvalds	default "9"
9771da177e4SLinus Torvalds
9781da177e4SLinus Torvaldsmenu "Bus support"
9791da177e4SLinus Torvalds
9801da177e4SLinus Torvaldsconfig ARM_AMBA
9811da177e4SLinus Torvalds	bool
9821da177e4SLinus Torvalds
9831da177e4SLinus Torvaldsconfig ISA
9841da177e4SLinus Torvalds	bool
9851da177e4SLinus Torvalds	help
9861da177e4SLinus Torvalds	  Find out whether you have ISA slots on your motherboard.  ISA is the
9871da177e4SLinus Torvalds	  name of a bus system, i.e. the way the CPU talks to the other stuff
9881da177e4SLinus Torvalds	  inside your box.  Other bus systems are PCI, EISA, MicroChannel
9891da177e4SLinus Torvalds	  (MCA) or VESA.  ISA is an older system, now being displaced by PCI;
9901da177e4SLinus Torvalds	  newer boards don't support it.  If you have ISA, say Y, otherwise N.
9911da177e4SLinus Torvalds
992065909b9SRussell King# Select ISA DMA controller support
9931da177e4SLinus Torvaldsconfig ISA_DMA
9941da177e4SLinus Torvalds	bool
995065909b9SRussell King	select ISA_DMA_API
9961da177e4SLinus Torvalds
997065909b9SRussell King# Select ISA DMA interface
9985cae841bSAl Viroconfig ISA_DMA_API
9995cae841bSAl Viro	bool
10005cae841bSAl Viro
10011da177e4SLinus Torvaldsconfig PCI
1002a0113a99SMike Rapoport	bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE
10031da177e4SLinus Torvalds	help
10041da177e4SLinus Torvalds	  Find out whether you have a PCI motherboard. PCI is the name of a
10051da177e4SLinus Torvalds	  bus system, i.e. the way the CPU talks to the other stuff inside
10061da177e4SLinus Torvalds	  your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
10071da177e4SLinus Torvalds	  VESA. If you have PCI, say Y, otherwise N.
10081da177e4SLinus Torvalds
100936e23590SMatthew Wilcoxconfig PCI_SYSCALL
101036e23590SMatthew Wilcox	def_bool PCI
101136e23590SMatthew Wilcox
10121da177e4SLinus Torvalds# Select the host bridge type
10131da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505
10141da177e4SLinus Torvalds	bool
10151da177e4SLinus Torvalds	depends on PCI && ARCH_SHARK
10161da177e4SLinus Torvalds	default y
10171da177e4SLinus Torvalds
1018a0113a99SMike Rapoportconfig PCI_HOST_ITE8152
1019a0113a99SMike Rapoport	bool
1020a0113a99SMike Rapoport	depends on PCI && MACH_ARMCORE
1021a0113a99SMike Rapoport	default y
1022a0113a99SMike Rapoport	select DMABOUNCE
1023a0113a99SMike Rapoport
10241da177e4SLinus Torvaldssource "drivers/pci/Kconfig"
10251da177e4SLinus Torvalds
10261da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig"
10271da177e4SLinus Torvalds
10281da177e4SLinus Torvaldsendmenu
10291da177e4SLinus Torvalds
10301da177e4SLinus Torvaldsmenu "Kernel Features"
10311da177e4SLinus Torvalds
10320567a0c0SKevin Hilmansource "kernel/time/Kconfig"
10330567a0c0SKevin Hilman
10341da177e4SLinus Torvaldsconfig SMP
10351da177e4SLinus Torvalds	bool "Symmetric Multi-Processing (EXPERIMENTAL)"
103642578c82SRussell King	depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\
1037850265e8SSrinidhi Kasagar		 MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500)
1038bc28248eSRussell King	depends on GENERIC_CLOCKEVENTS
1039f6dd9fa5SJens Axboe	select USE_GENERIC_SMP_HELPERS
1040850265e8SSrinidhi Kasagar	select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500)
10411da177e4SLinus Torvalds	help
10421da177e4SLinus Torvalds	  This enables support for systems with more than one CPU. If you have
10431da177e4SLinus Torvalds	  a system with only one CPU, like most personal computers, say N. If
10441da177e4SLinus Torvalds	  you have a system with more than one CPU, say Y.
10451da177e4SLinus Torvalds
10461da177e4SLinus Torvalds	  If you say N here, the kernel will run on single and multiprocessor
10471da177e4SLinus Torvalds	  machines, but will use only one CPU of a multiprocessor machine. If
10481da177e4SLinus Torvalds	  you say Y here, the kernel will run on many, but not all, single
10491da177e4SLinus Torvalds	  processor machines. On a single processor machine, the kernel will
10501da177e4SLinus Torvalds	  run faster if you say N here.
10511da177e4SLinus Torvalds
105203502faaSAdrian Bunk	  See also <file:Documentation/i386/IO-APIC.txt>,
10531da177e4SLinus Torvalds	  <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at
10541da177e4SLinus Torvalds	  <http://www.linuxdoc.org/docs.html#howto>.
10551da177e4SLinus Torvalds
10561da177e4SLinus Torvalds	  If you don't know what to do here, say N.
10571da177e4SLinus Torvalds
1058a8cbcd92SRussell Kingconfig HAVE_ARM_SCU
1059a8cbcd92SRussell King	bool
1060a8cbcd92SRussell King	depends on SMP
1061a8cbcd92SRussell King	help
1062a8cbcd92SRussell King	  This option enables support for the ARM system coherency unit
1063a8cbcd92SRussell King
1064f32f4ce2SRussell Kingconfig HAVE_ARM_TWD
1065f32f4ce2SRussell King	bool
1066f32f4ce2SRussell King	depends on SMP
1067f32f4ce2SRussell King	help
1068f32f4ce2SRussell King	  This options enables support for the ARM timer and watchdog unit
1069f32f4ce2SRussell King
10708d5796d2SLennert Buytenhekchoice
10718d5796d2SLennert Buytenhek	prompt "Memory split"
10728d5796d2SLennert Buytenhek	default VMSPLIT_3G
10738d5796d2SLennert Buytenhek	help
10748d5796d2SLennert Buytenhek	  Select the desired split between kernel and user memory.
10758d5796d2SLennert Buytenhek
10768d5796d2SLennert Buytenhek	  If you are not absolutely sure what you are doing, leave this
10778d5796d2SLennert Buytenhek	  option alone!
10788d5796d2SLennert Buytenhek
10798d5796d2SLennert Buytenhek	config VMSPLIT_3G
10808d5796d2SLennert Buytenhek		bool "3G/1G user/kernel split"
10818d5796d2SLennert Buytenhek	config VMSPLIT_2G
10828d5796d2SLennert Buytenhek		bool "2G/2G user/kernel split"
10838d5796d2SLennert Buytenhek	config VMSPLIT_1G
10848d5796d2SLennert Buytenhek		bool "1G/3G user/kernel split"
10858d5796d2SLennert Buytenhekendchoice
10868d5796d2SLennert Buytenhek
10878d5796d2SLennert Buytenhekconfig PAGE_OFFSET
10888d5796d2SLennert Buytenhek	hex
10898d5796d2SLennert Buytenhek	default 0x40000000 if VMSPLIT_1G
10908d5796d2SLennert Buytenhek	default 0x80000000 if VMSPLIT_2G
10918d5796d2SLennert Buytenhek	default 0xC0000000
10928d5796d2SLennert Buytenhek
10931da177e4SLinus Torvaldsconfig NR_CPUS
10941da177e4SLinus Torvalds	int "Maximum number of CPUs (2-32)"
10951da177e4SLinus Torvalds	range 2 32
10961da177e4SLinus Torvalds	depends on SMP
10971da177e4SLinus Torvalds	default "4"
10981da177e4SLinus Torvalds
1099a054a811SRussell Kingconfig HOTPLUG_CPU
1100a054a811SRussell King	bool "Support for hot-pluggable CPUs (EXPERIMENTAL)"
1101a054a811SRussell King	depends on SMP && HOTPLUG && EXPERIMENTAL
1102a054a811SRussell King	help
1103a054a811SRussell King	  Say Y here to experiment with turning CPUs off and on.  CPUs
1104a054a811SRussell King	  can be controlled through /sys/devices/system/cpu.
1105a054a811SRussell King
110637ee16aeSRussell Kingconfig LOCAL_TIMERS
110737ee16aeSRussell King	bool "Use local timer interrupts"
110842578c82SRussell King	depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \
1109850265e8SSrinidhi Kasagar		REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500)
111037ee16aeSRussell King	default y
1111850265e8SSrinidhi Kasagar	select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500)
111237ee16aeSRussell King	help
111337ee16aeSRussell King	  Enable support for local timers on SMP platforms, rather then the
111437ee16aeSRussell King	  legacy IPI broadcast method.  Local timers allows the system
111537ee16aeSRussell King	  accounting to be spread across the timer interval, preventing a
111637ee16aeSRussell King	  "thundering herd" at every timer tick.
111737ee16aeSRussell King
1118d45a398fSUwe Kleine-Königsource kernel/Kconfig.preempt
11191da177e4SLinus Torvalds
1120f8065813SRussell Kingconfig HZ
1121f8065813SRussell King	int
1122f8065813SRussell King	default 128 if ARCH_L7200
1123f8065813SRussell King	default 200 if ARCH_EBSA110 || ARCH_S3C2410
1124bfe65704SRussell King	default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
11255248c657SDavid Brownell	default AT91_TIMER_HZ if ARCH_AT91
1126f8065813SRussell King	default 100
1127f8065813SRussell King
112816c79651SCatalin Marinasconfig THUMB2_KERNEL
112916c79651SCatalin Marinas	bool "Compile the kernel in Thumb-2 mode"
113016c79651SCatalin Marinas	depends on CPU_V7 && EXPERIMENTAL
113116c79651SCatalin Marinas	select AEABI
113216c79651SCatalin Marinas	select ARM_ASM_UNIFIED
113316c79651SCatalin Marinas	help
113416c79651SCatalin Marinas	  By enabling this option, the kernel will be compiled in
113516c79651SCatalin Marinas	  Thumb-2 mode. A compiler/assembler that understand the unified
113616c79651SCatalin Marinas	  ARM-Thumb syntax is needed.
113716c79651SCatalin Marinas
113816c79651SCatalin Marinas	  If unsure, say N.
113916c79651SCatalin Marinas
11400becb088SCatalin Marinasconfig ARM_ASM_UNIFIED
11410becb088SCatalin Marinas	bool
11420becb088SCatalin Marinas
1143704bdda0SNicolas Pitreconfig AEABI
1144704bdda0SNicolas Pitre	bool "Use the ARM EABI to compile the kernel"
1145704bdda0SNicolas Pitre	help
1146704bdda0SNicolas Pitre	  This option allows for the kernel to be compiled using the latest
1147704bdda0SNicolas Pitre	  ARM ABI (aka EABI).  This is only useful if you are using a user
1148704bdda0SNicolas Pitre	  space environment that is also compiled with EABI.
1149704bdda0SNicolas Pitre
1150704bdda0SNicolas Pitre	  Since there are major incompatibilities between the legacy ABI and
1151704bdda0SNicolas Pitre	  EABI, especially with regard to structure member alignment, this
1152704bdda0SNicolas Pitre	  option also changes the kernel syscall calling convention to
1153704bdda0SNicolas Pitre	  disambiguate both ABIs and allow for backward compatibility support
1154704bdda0SNicolas Pitre	  (selected with CONFIG_OABI_COMPAT).
1155704bdda0SNicolas Pitre
1156704bdda0SNicolas Pitre	  To use this you need GCC version 4.0.0 or later.
1157704bdda0SNicolas Pitre
11586c90c872SNicolas Pitreconfig OABI_COMPAT
1159a73a3ff1SRussell King	bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)"
116061c484d4SNicolas Pitre	depends on AEABI && EXPERIMENTAL
11616c90c872SNicolas Pitre	default y
11626c90c872SNicolas Pitre	help
11636c90c872SNicolas Pitre	  This option preserves the old syscall interface along with the
11646c90c872SNicolas Pitre	  new (ARM EABI) one. It also provides a compatibility layer to
11656c90c872SNicolas Pitre	  intercept syscalls that have structure arguments which layout
11666c90c872SNicolas Pitre	  in memory differs between the legacy ABI and the new ARM EABI
11676c90c872SNicolas Pitre	  (only for non "thumb" binaries). This option adds a tiny
11686c90c872SNicolas Pitre	  overhead to all syscalls and produces a slightly larger kernel.
11696c90c872SNicolas Pitre	  If you know you'll be using only pure EABI user space then you
11706c90c872SNicolas Pitre	  can say N here. If this option is not selected and you attempt
11716c90c872SNicolas Pitre	  to execute a legacy ABI binary then the result will be
11726c90c872SNicolas Pitre	  UNPREDICTABLE (in fact it can be predicted that it won't work
11736c90c872SNicolas Pitre	  at all). If in doubt say Y.
11746c90c872SNicolas Pitre
1175eb33575cSMel Gormanconfig ARCH_HAS_HOLES_MEMORYMODEL
1176e80d6a24SMel Gorman	bool
1177e80d6a24SMel Gorman
117807a2f737SRussell King# Discontigmem is deprecated
11793f22ab27SDave Hansenconfig ARCH_DISCONTIGMEM_ENABLE
11801da177e4SLinus Torvalds	bool
11811da177e4SLinus Torvalds
118205944d74SRussell Kingconfig ARCH_SPARSEMEM_ENABLE
118305944d74SRussell King	bool
118405944d74SRussell King
118507a2f737SRussell Kingconfig ARCH_SPARSEMEM_DEFAULT
118607a2f737SRussell King	def_bool ARCH_SPARSEMEM_ENABLE
118707a2f737SRussell King
118805944d74SRussell Kingconfig ARCH_SELECT_MEMORY_MODEL
118907a2f737SRussell King	def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE
119005944d74SRussell King
1191c80d79d7SYasunori Gotoconfig NODES_SHIFT
1192c80d79d7SYasunori Goto	int
1193c80d79d7SYasunori Goto	default "4" if ARCH_LH7A40X
1194c80d79d7SYasunori Goto	default "2"
1195c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
1196c80d79d7SYasunori Goto
1197053a96caSNicolas Pitreconfig HIGHMEM
1198053a96caSNicolas Pitre	bool "High Memory Support (EXPERIMENTAL)"
1199053a96caSNicolas Pitre	depends on MMU && EXPERIMENTAL
1200053a96caSNicolas Pitre	help
1201053a96caSNicolas Pitre	  The address space of ARM processors is only 4 Gigabytes large
1202053a96caSNicolas Pitre	  and it has to accommodate user address space, kernel address
1203053a96caSNicolas Pitre	  space as well as some memory mapped IO. That means that, if you
1204053a96caSNicolas Pitre	  have a large amount of physical memory and/or IO, not all of the
1205053a96caSNicolas Pitre	  memory can be "permanently mapped" by the kernel. The physical
1206053a96caSNicolas Pitre	  memory that is not permanently mapped is called "high memory".
1207053a96caSNicolas Pitre
1208053a96caSNicolas Pitre	  Depending on the selected kernel/user memory split, minimum
1209053a96caSNicolas Pitre	  vmalloc space and actual amount of RAM, you may not need this
1210053a96caSNicolas Pitre	  option which should result in a slightly faster kernel.
1211053a96caSNicolas Pitre
1212053a96caSNicolas Pitre	  If unsure, say n.
1213053a96caSNicolas Pitre
121465cec8e3SRussell Kingconfig HIGHPTE
121565cec8e3SRussell King	bool "Allocate 2nd-level pagetables from highmem"
121665cec8e3SRussell King	depends on HIGHMEM
121765cec8e3SRussell King	depends on !OUTER_CACHE
121865cec8e3SRussell King
12191b8873a0SJamie Ilesconfig HW_PERF_EVENTS
12201b8873a0SJamie Iles	bool "Enable hardware performance counter support for perf events"
1221796d1295SJean PIHET	depends on PERF_EVENTS && CPU_HAS_PMU && (CPU_V6 || CPU_V7)
12221b8873a0SJamie Iles	default y
12231b8873a0SJamie Iles	help
12241b8873a0SJamie Iles	  Enable hardware performance counter support for perf events. If
12251b8873a0SJamie Iles	  disabled, perf events will use software events only.
12261b8873a0SJamie Iles
12273f22ab27SDave Hansensource "mm/Kconfig"
12283f22ab27SDave Hansen
12291da177e4SLinus Torvaldsconfig LEDS
12301da177e4SLinus Torvalds	bool "Timer and CPU usage LEDs"
1231e055d5bfSAdrian Bunk	depends on ARCH_CDB89712 || ARCH_EBSA110 || \
12328c8fdbc9SSascha Hauer		   ARCH_EBSA285 || ARCH_INTEGRATOR || \
12331da177e4SLinus Torvalds		   ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \
12341da177e4SLinus Torvalds		   ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \
123573a59c1cSSAN People		   ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \
123625329671SJürgen Schindele		   ARCH_AT91 || ARCH_DAVINCI || \
1237ff3042fbSColin Tuckley		   ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW
12381da177e4SLinus Torvalds	help
12391da177e4SLinus Torvalds	  If you say Y here, the LEDs on your machine will be used
12401da177e4SLinus Torvalds	  to provide useful information about your current system status.
12411da177e4SLinus Torvalds
12421da177e4SLinus Torvalds	  If you are compiling a kernel for a NetWinder or EBSA-285, you will
12431da177e4SLinus Torvalds	  be able to select which LEDs are active using the options below. If
12441da177e4SLinus Torvalds	  you are compiling a kernel for the EBSA-110 or the LART however, the
12451da177e4SLinus Torvalds	  red LED will simply flash regularly to indicate that the system is
12461da177e4SLinus Torvalds	  still functional. It is safe to say Y here if you have a CATS
12471da177e4SLinus Torvalds	  system, but the driver will do nothing.
12481da177e4SLinus Torvalds
12491da177e4SLinus Torvaldsconfig LEDS_TIMER
12501da177e4SLinus Torvalds	bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
1251eebdf7d7SDavid Brownell			    OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1252eebdf7d7SDavid Brownell			    || MACH_OMAP_PERSEUS2
12531da177e4SLinus Torvalds	depends on LEDS
12540567a0c0SKevin Hilman	depends on !GENERIC_CLOCKEVENTS
12551da177e4SLinus Torvalds	default y if ARCH_EBSA110
12561da177e4SLinus Torvalds	help
12571da177e4SLinus Torvalds	  If you say Y here, one of the system LEDs (the green one on the
12581da177e4SLinus Torvalds	  NetWinder, the amber one on the EBSA285, or the red one on the LART)
12591da177e4SLinus Torvalds	  will flash regularly to indicate that the system is still
12601da177e4SLinus Torvalds	  operational. This is mainly useful to kernel hackers who are
12611da177e4SLinus Torvalds	  debugging unstable kernels.
12621da177e4SLinus Torvalds
12631da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
12641da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
12651da177e4SLinus Torvalds	  will overrule the CPU usage LED.
12661da177e4SLinus Torvalds
12671da177e4SLinus Torvaldsconfig LEDS_CPU
12681da177e4SLinus Torvalds	bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
1269eebdf7d7SDavid Brownell			!ARCH_OMAP) \
1270eebdf7d7SDavid Brownell			|| OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
1271eebdf7d7SDavid Brownell			|| MACH_OMAP_PERSEUS2
12721da177e4SLinus Torvalds	depends on LEDS
12731da177e4SLinus Torvalds	help
12741da177e4SLinus Torvalds	  If you say Y here, the red LED will be used to give a good real
12751da177e4SLinus Torvalds	  time indication of CPU usage, by lighting whenever the idle task
12761da177e4SLinus Torvalds	  is not currently executing.
12771da177e4SLinus Torvalds
12781da177e4SLinus Torvalds	  The LART uses the same LED for both Timer LED and CPU usage LED
12791da177e4SLinus Torvalds	  functions. You may choose to use both, but the Timer LED function
12801da177e4SLinus Torvalds	  will overrule the CPU usage LED.
12811da177e4SLinus Torvalds
12821da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP
12831da177e4SLinus Torvalds	bool
1284f12d0d7cSHyok S. Choi	depends on CPU_CP15_MMU
12851da177e4SLinus Torvalds	default y if !ARCH_EBSA110
1286e119bfffSRussell King	select HAVE_PROC_CPU if PROC_FS
12871da177e4SLinus Torvalds	help
12881da177e4SLinus Torvalds	  ARM processors cannot fetch/store information which is not
12891da177e4SLinus Torvalds	  naturally aligned on the bus, i.e., a 4 byte fetch must start at an
12901da177e4SLinus Torvalds	  address divisible by 4. On 32-bit ARM processors, these non-aligned
12911da177e4SLinus Torvalds	  fetch/store instructions will be emulated in software if you say
12921da177e4SLinus Torvalds	  here, which has a severe performance impact. This is necessary for
12931da177e4SLinus Torvalds	  correct operation of some network protocols. With an IP-only
12941da177e4SLinus Torvalds	  configuration it is safe to say N, otherwise say Y.
12951da177e4SLinus Torvalds
129639ec58f3SLennert Buytenhekconfig UACCESS_WITH_MEMCPY
129739ec58f3SLennert Buytenhek	bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)"
129839ec58f3SLennert Buytenhek	depends on MMU && EXPERIMENTAL
129939ec58f3SLennert Buytenhek	default y if CPU_FEROCEON
130039ec58f3SLennert Buytenhek	help
130139ec58f3SLennert Buytenhek	  Implement faster copy_to_user and clear_user methods for CPU
130239ec58f3SLennert Buytenhek	  cores where a 8-word STM instruction give significantly higher
130339ec58f3SLennert Buytenhek	  memory write throughput than a sequence of individual 32bit stores.
130439ec58f3SLennert Buytenhek
130539ec58f3SLennert Buytenhek	  A possible side effect is a slight increase in scheduling latency
130639ec58f3SLennert Buytenhek	  between threads sharing the same address space if they invoke
130739ec58f3SLennert Buytenhek	  such copy operations with large buffers.
130839ec58f3SLennert Buytenhek
130939ec58f3SLennert Buytenhek	  However, if the CPU data cache is using a write-allocate mode,
131039ec58f3SLennert Buytenhek	  this option is unlikely to provide any performance gain.
131139ec58f3SLennert Buytenhek
13121da177e4SLinus Torvaldsendmenu
13131da177e4SLinus Torvalds
13141da177e4SLinus Torvaldsmenu "Boot options"
13151da177e4SLinus Torvalds
13161da177e4SLinus Torvalds# Compressed boot loader in ROM.  Yes, we really want to ask about
13171da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files.
13181da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT
13191da177e4SLinus Torvalds	hex "Compressed ROM boot loader base address"
13201da177e4SLinus Torvalds	default "0"
13211da177e4SLinus Torvalds	help
13221da177e4SLinus Torvalds	  The physical address at which the ROM-able zImage is to be
13231da177e4SLinus Torvalds	  placed in the target.  Platforms which normally make use of
13241da177e4SLinus Torvalds	  ROM-able zImage formats normally set this to a suitable
13251da177e4SLinus Torvalds	  value in their defconfig file.
13261da177e4SLinus Torvalds
13271da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
13281da177e4SLinus Torvalds
13291da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS
13301da177e4SLinus Torvalds	hex "Compressed ROM boot loader BSS address"
13311da177e4SLinus Torvalds	default "0"
13321da177e4SLinus Torvalds	help
1333f8c440b2SDan Fandrich	  The base address of an area of read/write memory in the target
1334f8c440b2SDan Fandrich	  for the ROM-able zImage which must be available while the
1335f8c440b2SDan Fandrich	  decompressor is running. It must be large enough to hold the
1336f8c440b2SDan Fandrich	  entire decompressed kernel plus an additional 128 KiB.
1337f8c440b2SDan Fandrich	  Platforms which normally make use of ROM-able zImage formats
1338f8c440b2SDan Fandrich	  normally set this to a suitable value in their defconfig file.
13391da177e4SLinus Torvalds
13401da177e4SLinus Torvalds	  If ZBOOT_ROM is not enabled, this has no effect.
13411da177e4SLinus Torvalds
13421da177e4SLinus Torvaldsconfig ZBOOT_ROM
13431da177e4SLinus Torvalds	bool "Compressed boot loader in ROM/flash"
13441da177e4SLinus Torvalds	depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS
13451da177e4SLinus Torvalds	help
13461da177e4SLinus Torvalds	  Say Y here if you intend to execute your compressed kernel image
13471da177e4SLinus Torvalds	  (zImage) directly from ROM or flash.  If unsure, say N.
13481da177e4SLinus Torvalds
13491da177e4SLinus Torvaldsconfig CMDLINE
13501da177e4SLinus Torvalds	string "Default kernel command string"
13511da177e4SLinus Torvalds	default ""
13521da177e4SLinus Torvalds	help
13531da177e4SLinus Torvalds	  On some architectures (EBSA110 and CATS), there is currently no way
13541da177e4SLinus Torvalds	  for the boot loader to pass arguments to the kernel. For these
13551da177e4SLinus Torvalds	  architectures, you should supply some command-line options at build
13561da177e4SLinus Torvalds	  time by entering them here. As a minimum, you should specify the
13571da177e4SLinus Torvalds	  memory size and the root device (e.g., mem=64M root=/dev/nfs).
13581da177e4SLinus Torvalds
13591da177e4SLinus Torvaldsconfig XIP_KERNEL
13601da177e4SLinus Torvalds	bool "Kernel Execute-In-Place from ROM"
13611da177e4SLinus Torvalds	depends on !ZBOOT_ROM
13621da177e4SLinus Torvalds	help
13631da177e4SLinus Torvalds	  Execute-In-Place allows the kernel to run from non-volatile storage
13641da177e4SLinus Torvalds	  directly addressable by the CPU, such as NOR flash. This saves RAM
13651da177e4SLinus Torvalds	  space since the text section of the kernel is not loaded from flash
13661da177e4SLinus Torvalds	  to RAM.  Read-write sections, such as the data section and stack,
13671da177e4SLinus Torvalds	  are still copied to RAM.  The XIP kernel is not compressed since
13681da177e4SLinus Torvalds	  it has to run directly from flash, so it will take more space to
13691da177e4SLinus Torvalds	  store it.  The flash address used to link the kernel object files,
13701da177e4SLinus Torvalds	  and for storing it, is configuration dependent. Therefore, if you
13711da177e4SLinus Torvalds	  say Y here, you must know the proper physical address where to
13721da177e4SLinus Torvalds	  store the kernel image depending on your own flash memory usage.
13731da177e4SLinus Torvalds
13741da177e4SLinus Torvalds	  Also note that the make target becomes "make xipImage" rather than
13751da177e4SLinus Torvalds	  "make zImage" or "make Image".  The final kernel binary to put in
13761da177e4SLinus Torvalds	  ROM memory will be arch/arm/boot/xipImage.
13771da177e4SLinus Torvalds
13781da177e4SLinus Torvalds	  If unsure, say N.
13791da177e4SLinus Torvalds
13801da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR
13811da177e4SLinus Torvalds	hex "XIP Kernel Physical Location"
13821da177e4SLinus Torvalds	depends on XIP_KERNEL
13831da177e4SLinus Torvalds	default "0x00080000"
13841da177e4SLinus Torvalds	help
13851da177e4SLinus Torvalds	  This is the physical address in your flash memory the kernel will
13861da177e4SLinus Torvalds	  be linked for and stored to.  This address is dependent on your
13871da177e4SLinus Torvalds	  own flash usage.
13881da177e4SLinus Torvalds
1389c587e4a6SRichard Purdieconfig KEXEC
1390c587e4a6SRichard Purdie	bool "Kexec system call (EXPERIMENTAL)"
1391c587e4a6SRichard Purdie	depends on EXPERIMENTAL
1392c587e4a6SRichard Purdie	help
1393c587e4a6SRichard Purdie	  kexec is a system call that implements the ability to shutdown your
1394c587e4a6SRichard Purdie	  current kernel, and to start another kernel.  It is like a reboot
139501dd2fbfSMatt LaPlante	  but it is independent of the system firmware.   And like a reboot
1396c587e4a6SRichard Purdie	  you can start any kernel with it, not just Linux.
1397c587e4a6SRichard Purdie
1398c587e4a6SRichard Purdie	  It is an ongoing process to be certain the hardware in a machine
1399c587e4a6SRichard Purdie	  is properly shutdown, so do not be surprised if this code does not
1400c587e4a6SRichard Purdie	  initially work for you.  It may help to enable device hotplugging
1401c587e4a6SRichard Purdie	  support.
1402c587e4a6SRichard Purdie
14034cd9d6f7SRichard Purdieconfig ATAGS_PROC
14044cd9d6f7SRichard Purdie	bool "Export atags in procfs"
1405b98d7291SUli Luckas	depends on KEXEC
1406b98d7291SUli Luckas	default y
14074cd9d6f7SRichard Purdie	help
14084cd9d6f7SRichard Purdie	  Should the atags used to boot the kernel be exported in an "atags"
14094cd9d6f7SRichard Purdie	  file in procfs. Useful with kexec.
14104cd9d6f7SRichard Purdie
14111da177e4SLinus Torvaldsendmenu
14121da177e4SLinus Torvalds
1413ac9d7efcSRussell Kingmenu "CPU Power Management"
14141da177e4SLinus Torvalds
141589c52ed4SBen Dooksif ARCH_HAS_CPUFREQ
14161da177e4SLinus Torvalds
14171da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig"
14181da177e4SLinus Torvalds
14191da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100
14201da177e4SLinus Torvalds	bool
14211da177e4SLinus Torvalds
14221da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110
14231da177e4SLinus Torvalds	bool
14241da177e4SLinus Torvalds
14251da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR
14261da177e4SLinus Torvalds	tristate "CPUfreq driver for ARM Integrator CPUs"
14271da177e4SLinus Torvalds	depends on ARCH_INTEGRATOR && CPU_FREQ
14281da177e4SLinus Torvalds	default y
14291da177e4SLinus Torvalds	help
14301da177e4SLinus Torvalds	  This enables the CPUfreq driver for ARM Integrator CPUs.
14311da177e4SLinus Torvalds
14321da177e4SLinus Torvalds	  For details, take a look at <file:Documentation/cpu-freq>.
14331da177e4SLinus Torvalds
14341da177e4SLinus Torvalds	  If in doubt, say Y.
14351da177e4SLinus Torvalds
14369e2697ffSRussell Kingconfig CPU_FREQ_PXA
14379e2697ffSRussell King	bool
14389e2697ffSRussell King	depends on CPU_FREQ && ARCH_PXA && PXA25x
14399e2697ffSRussell King	default y
14409e2697ffSRussell King	select CPU_FREQ_DEFAULT_GOV_USERSPACE
14419e2697ffSRussell King
1442b3748dddSMark Brownconfig CPU_FREQ_S3C64XX
1443b3748dddSMark Brown	bool "CPUfreq support for Samsung S3C64XX CPUs"
1444b3748dddSMark Brown	depends on CPU_FREQ && CPU_S3C6410
1445b3748dddSMark Brown
14469d56c02aSBen Dooksconfig CPU_FREQ_S3C
14479d56c02aSBen Dooks	bool
14489d56c02aSBen Dooks	help
14499d56c02aSBen Dooks	  Internal configuration node for common cpufreq on Samsung SoC
14509d56c02aSBen Dooks
14519d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX
14529d56c02aSBen Dooks	bool "CPUfreq driver for Samsung S3C24XX series CPUs"
14539d56c02aSBen Dooks	depends on ARCH_S3C2410 && CPU_FREQ && EXPERIMENTAL
14549d56c02aSBen Dooks	select CPU_FREQ_S3C
14559d56c02aSBen Dooks	help
14569d56c02aSBen Dooks	  This enables the CPUfreq driver for the Samsung S3C24XX family
14579d56c02aSBen Dooks	  of CPUs.
14589d56c02aSBen Dooks
14599d56c02aSBen Dooks	  For details, take a look at <file:Documentation/cpu-freq>.
14609d56c02aSBen Dooks
14619d56c02aSBen Dooks	  If in doubt, say N.
14629d56c02aSBen Dooks
14639d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX_PLL
14649d56c02aSBen Dooks	bool "Support CPUfreq changing of PLL frequency"
14659d56c02aSBen Dooks	depends on CPU_FREQ_S3C24XX && EXPERIMENTAL
14669d56c02aSBen Dooks	help
14679d56c02aSBen Dooks	  Compile in support for changing the PLL frequency from the
14689d56c02aSBen Dooks	  S3C24XX series CPUfreq driver. The PLL takes time to settle
14699d56c02aSBen Dooks	  after a frequency change, so by default it is not enabled.
14709d56c02aSBen Dooks
14719d56c02aSBen Dooks	  This also means that the PLL tables for the selected CPU(s) will
14729d56c02aSBen Dooks	  be built which may increase the size of the kernel image.
14739d56c02aSBen Dooks
14749d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX_DEBUG
14759d56c02aSBen Dooks	bool "Debug CPUfreq Samsung driver core"
14769d56c02aSBen Dooks	depends on CPU_FREQ_S3C24XX
14779d56c02aSBen Dooks	help
14789d56c02aSBen Dooks	  Enable s3c_freq_dbg for the Samsung S3C CPUfreq core
14799d56c02aSBen Dooks
14809d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX_IODEBUG
14819d56c02aSBen Dooks	bool "Debug CPUfreq Samsung driver IO timing"
14829d56c02aSBen Dooks	depends on CPU_FREQ_S3C24XX
14839d56c02aSBen Dooks	help
14849d56c02aSBen Dooks	  Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core
14859d56c02aSBen Dooks
1486e6d197a6SBen Dooksconfig CPU_FREQ_S3C24XX_DEBUGFS
1487e6d197a6SBen Dooks	bool "Export debugfs for CPUFreq"
1488e6d197a6SBen Dooks	depends on CPU_FREQ_S3C24XX && DEBUG_FS
1489e6d197a6SBen Dooks	help
1490e6d197a6SBen Dooks	  Export status information via debugfs.
1491e6d197a6SBen Dooks
14921da177e4SLinus Torvaldsendif
14931da177e4SLinus Torvalds
1494ac9d7efcSRussell Kingsource "drivers/cpuidle/Kconfig"
1495ac9d7efcSRussell King
1496ac9d7efcSRussell Kingendmenu
1497ac9d7efcSRussell King
14981da177e4SLinus Torvaldsmenu "Floating point emulation"
14991da177e4SLinus Torvalds
15001da177e4SLinus Torvaldscomment "At least one emulation must be selected"
15011da177e4SLinus Torvalds
15021da177e4SLinus Torvaldsconfig FPE_NWFPE
15031da177e4SLinus Torvalds	bool "NWFPE math emulation"
15048993a44cSNicolas Pitre	depends on !AEABI || OABI_COMPAT
15051da177e4SLinus Torvalds	---help---
15061da177e4SLinus Torvalds	  Say Y to include the NWFPE floating point emulator in the kernel.
15071da177e4SLinus Torvalds	  This is necessary to run most binaries. Linux does not currently
15081da177e4SLinus Torvalds	  support floating point hardware so you need to say Y here even if
15091da177e4SLinus Torvalds	  your machine has an FPA or floating point co-processor podule.
15101da177e4SLinus Torvalds
15111da177e4SLinus Torvalds	  You may say N here if you are going to load the Acorn FPEmulator
15121da177e4SLinus Torvalds	  early in the bootup.
15131da177e4SLinus Torvalds
15141da177e4SLinus Torvaldsconfig FPE_NWFPE_XP
15151da177e4SLinus Torvalds	bool "Support extended precision"
1516bedf142bSLennert Buytenhek	depends on FPE_NWFPE
15171da177e4SLinus Torvalds	help
15181da177e4SLinus Torvalds	  Say Y to include 80-bit support in the kernel floating-point
15191da177e4SLinus Torvalds	  emulator.  Otherwise, only 32 and 64-bit support is compiled in.
15201da177e4SLinus Torvalds	  Note that gcc does not generate 80-bit operations by default,
15211da177e4SLinus Torvalds	  so in most cases this option only enlarges the size of the
15221da177e4SLinus Torvalds	  floating point emulator without any good reason.
15231da177e4SLinus Torvalds
15241da177e4SLinus Torvalds	  You almost surely want to say N here.
15251da177e4SLinus Torvalds
15261da177e4SLinus Torvaldsconfig FPE_FASTFPE
15271da177e4SLinus Torvalds	bool "FastFPE math emulation (EXPERIMENTAL)"
15288993a44cSNicolas Pitre	depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL
15291da177e4SLinus Torvalds	---help---
15301da177e4SLinus Torvalds	  Say Y here to include the FAST floating point emulator in the kernel.
15311da177e4SLinus Torvalds	  This is an experimental much faster emulator which now also has full
15321da177e4SLinus Torvalds	  precision for the mantissa.  It does not support any exceptions.
15331da177e4SLinus Torvalds	  It is very simple, and approximately 3-6 times faster than NWFPE.
15341da177e4SLinus Torvalds
15351da177e4SLinus Torvalds	  It should be sufficient for most programs.  It may be not suitable
15361da177e4SLinus Torvalds	  for scientific calculations, but you have to check this for yourself.
15371da177e4SLinus Torvalds	  If you do not feel you need a faster FP emulation you should better
15381da177e4SLinus Torvalds	  choose NWFPE.
15391da177e4SLinus Torvalds
15401da177e4SLinus Torvaldsconfig VFP
15411da177e4SLinus Torvalds	bool "VFP-format floating point maths"
1542c00d4ffdSRussell King	depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON
15431da177e4SLinus Torvalds	help
15441da177e4SLinus Torvalds	  Say Y to include VFP support code in the kernel. This is needed
15451da177e4SLinus Torvalds	  if your hardware includes a VFP unit.
15461da177e4SLinus Torvalds
15471da177e4SLinus Torvalds	  Please see <file:Documentation/arm/VFP/release-notes.txt> for
15481da177e4SLinus Torvalds	  release notes and additional status information.
15491da177e4SLinus Torvalds
15501da177e4SLinus Torvalds	  Say N if your target does not have VFP hardware.
15511da177e4SLinus Torvalds
155225ebee02SCatalin Marinasconfig VFPv3
155325ebee02SCatalin Marinas	bool
155425ebee02SCatalin Marinas	depends on VFP
155525ebee02SCatalin Marinas	default y if CPU_V7
155625ebee02SCatalin Marinas
1557b5872db4SCatalin Marinasconfig NEON
1558b5872db4SCatalin Marinas	bool "Advanced SIMD (NEON) Extension support"
1559b5872db4SCatalin Marinas	depends on VFPv3 && CPU_V7
1560b5872db4SCatalin Marinas	help
1561b5872db4SCatalin Marinas	  Say Y to include support code for NEON, the ARMv7 Advanced SIMD
1562b5872db4SCatalin Marinas	  Extension.
1563b5872db4SCatalin Marinas
15641da177e4SLinus Torvaldsendmenu
15651da177e4SLinus Torvalds
15661da177e4SLinus Torvaldsmenu "Userspace binary formats"
15671da177e4SLinus Torvalds
15681da177e4SLinus Torvaldssource "fs/Kconfig.binfmt"
15691da177e4SLinus Torvalds
15701da177e4SLinus Torvaldsconfig ARTHUR
15711da177e4SLinus Torvalds	tristate "RISC OS personality"
1572704bdda0SNicolas Pitre	depends on !AEABI
15731da177e4SLinus Torvalds	help
15741da177e4SLinus Torvalds	  Say Y here to include the kernel code necessary if you want to run
15751da177e4SLinus Torvalds	  Acorn RISC OS/Arthur binaries under Linux. This code is still very
15761da177e4SLinus Torvalds	  experimental; if this sounds frightening, say N and sleep in peace.
15771da177e4SLinus Torvalds	  You can also say M here to compile this support as a module (which
15781da177e4SLinus Torvalds	  will be called arthur).
15791da177e4SLinus Torvalds
15801da177e4SLinus Torvaldsendmenu
15811da177e4SLinus Torvalds
15821da177e4SLinus Torvaldsmenu "Power management options"
15831da177e4SLinus Torvalds
1584eceab4acSRussell Kingsource "kernel/power/Kconfig"
15851da177e4SLinus Torvalds
1586f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE
1587f4cb5700SJohannes Berg	def_bool y
1588f4cb5700SJohannes Berg
15891da177e4SLinus Torvaldsendmenu
15901da177e4SLinus Torvalds
1591d5950b43SSam Ravnborgsource "net/Kconfig"
1592d5950b43SSam Ravnborg
1593ac25150fSUwe Kleine-Königsource "drivers/Kconfig"
15941da177e4SLinus Torvalds
15951da177e4SLinus Torvaldssource "fs/Kconfig"
15961da177e4SLinus Torvalds
15971da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug"
15981da177e4SLinus Torvalds
15991da177e4SLinus Torvaldssource "security/Kconfig"
16001da177e4SLinus Torvalds
16011da177e4SLinus Torvaldssource "crypto/Kconfig"
16021da177e4SLinus Torvalds
16031da177e4SLinus Torvaldssource "lib/Kconfig"
1604