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 1542d4b839SMathieu Desnoyers select HAVE_OPROFILE 165cbad0ebSJason Wessel select HAVE_ARCH_KGDB 173f550096SMathieu Desnoyers select HAVE_KPROBES if (!XIP_KERNEL) 189edddaa2SAnanth N Mavinakayanahalli select HAVE_KRETPROBES if (HAVE_KPROBES) 19606576ceSSteven Rostedt select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) 201fe53268SDmitry Baryshkov select HAVE_GENERIC_DMA_COHERENT 211da177e4SLinus Torvalds help 221da177e4SLinus Torvalds The ARM series is a line of low-power-consumption RISC chip designs 23f6c8965aSMartin Michlmayr licensed by ARM Ltd and targeted at embedded applications and 241da177e4SLinus Torvalds handhelds such as the Compaq IPAQ. ARM-based PCs are no longer 251da177e4SLinus Torvalds manufactured, but legacy ARM-based PC hardware remains popular in 261da177e4SLinus Torvalds Europe. There is an ARM Linux project with a web page at 271da177e4SLinus Torvalds <http://www.arm.linux.org.uk/>. 281da177e4SLinus Torvalds 291a189b97SRussell Kingconfig HAVE_PWM 301a189b97SRussell King bool 311a189b97SRussell King 3275e7153aSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION 3375e7153aSRalf Baechle bool 3475e7153aSRalf Baechle 350a938b97SDavid Brownellconfig GENERIC_GPIO 360a938b97SDavid Brownell bool 370a938b97SDavid Brownell 38746140c7SKevin Hilmanconfig GENERIC_TIME 39746140c7SKevin Hilman bool 40746140c7SKevin Hilman 410567a0c0SKevin Hilmanconfig GENERIC_CLOCKEVENTS 420567a0c0SKevin Hilman bool 430567a0c0SKevin Hilman 44a8655e83SCatalin Marinasconfig GENERIC_CLOCKEVENTS_BROADCAST 45a8655e83SCatalin Marinas bool 46a8655e83SCatalin Marinas depends on GENERIC_CLOCKEVENTS 47a8655e83SCatalin Marinas default y if SMP && !LOCAL_TIMERS 48a8655e83SCatalin Marinas 491da177e4SLinus Torvaldsconfig MMU 501da177e4SLinus Torvalds bool 511da177e4SLinus Torvalds default y 521da177e4SLinus Torvalds 535ea81769SAl Viroconfig NO_IOPORT 545ea81769SAl Viro bool 555ea81769SAl Viro 561da177e4SLinus Torvaldsconfig EISA 571da177e4SLinus Torvalds bool 581da177e4SLinus Torvalds ---help--- 591da177e4SLinus Torvalds The Extended Industry Standard Architecture (EISA) bus was 601da177e4SLinus Torvalds developed as an open alternative to the IBM MicroChannel bus. 611da177e4SLinus Torvalds 621da177e4SLinus Torvalds The EISA bus provided some of the features of the IBM MicroChannel 631da177e4SLinus Torvalds bus while maintaining backward compatibility with cards made for 641da177e4SLinus Torvalds the older ISA bus. The EISA bus saw limited use between 1988 and 651da177e4SLinus Torvalds 1995 when it was made obsolete by the PCI bus. 661da177e4SLinus Torvalds 671da177e4SLinus Torvalds Say Y here if you are building a kernel for an EISA-based machine. 681da177e4SLinus Torvalds 691da177e4SLinus Torvalds Otherwise, say N. 701da177e4SLinus Torvalds 711da177e4SLinus Torvaldsconfig SBUS 721da177e4SLinus Torvalds bool 731da177e4SLinus Torvalds 741da177e4SLinus Torvaldsconfig MCA 751da177e4SLinus Torvalds bool 761da177e4SLinus Torvalds help 771da177e4SLinus Torvalds MicroChannel Architecture is found in some IBM PS/2 machines and 781da177e4SLinus Torvalds laptops. It is a bus system similar to PCI or ISA. See 791da177e4SLinus Torvalds <file:Documentation/mca.txt> (and especially the web page given 801da177e4SLinus Torvalds there) before attempting to build an MCA bus kernel. 811da177e4SLinus Torvalds 824a2581a0SThomas Gleixnerconfig GENERIC_HARDIRQS 834a2581a0SThomas Gleixner bool 844a2581a0SThomas Gleixner default y 854a2581a0SThomas Gleixner 86f16fb1ecSRussell Kingconfig STACKTRACE_SUPPORT 87f16fb1ecSRussell King bool 88f16fb1ecSRussell King default y 89f16fb1ecSRussell King 90f76e9154SNicolas Pitreconfig HAVE_LATENCYTOP_SUPPORT 91f76e9154SNicolas Pitre bool 92f76e9154SNicolas Pitre depends on !SMP 93f76e9154SNicolas Pitre default y 94f76e9154SNicolas Pitre 95f16fb1ecSRussell Kingconfig LOCKDEP_SUPPORT 96f16fb1ecSRussell King bool 97f16fb1ecSRussell King default y 98f16fb1ecSRussell King 997ad1bcb2SRussell Kingconfig TRACE_IRQFLAGS_SUPPORT 1007ad1bcb2SRussell King bool 1017ad1bcb2SRussell King default y 1027ad1bcb2SRussell King 1034a2581a0SThomas Gleixnerconfig HARDIRQS_SW_RESEND 1044a2581a0SThomas Gleixner bool 1054a2581a0SThomas Gleixner default y 1064a2581a0SThomas Gleixner 1074a2581a0SThomas Gleixnerconfig GENERIC_IRQ_PROBE 1084a2581a0SThomas Gleixner bool 1094a2581a0SThomas Gleixner default y 1104a2581a0SThomas Gleixner 11195c354feSNick Pigginconfig GENERIC_LOCKBREAK 11295c354feSNick Piggin bool 11395c354feSNick Piggin default y 11495c354feSNick Piggin depends on SMP && PREEMPT 11595c354feSNick Piggin 1161da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK 1171da177e4SLinus Torvalds bool 1181da177e4SLinus Torvalds default y 1191da177e4SLinus Torvalds 1201da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM 1211da177e4SLinus Torvalds bool 1221da177e4SLinus Torvalds 123f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32 124f0d1b0b3SDavid Howells bool 125f0d1b0b3SDavid Howells 126f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64 127f0d1b0b3SDavid Howells bool 128f0d1b0b3SDavid Howells 129b89c3b16SAkinobu Mitaconfig GENERIC_HWEIGHT 130b89c3b16SAkinobu Mita bool 131b89c3b16SAkinobu Mita default y 132b89c3b16SAkinobu Mita 1331da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY 1341da177e4SLinus Torvalds bool 1351da177e4SLinus Torvalds default y 1361da177e4SLinus Torvalds 137a08b6b79Sviro@ZenIV.linux.org.ukconfig ARCH_MAY_HAVE_PC_FDC 138a08b6b79Sviro@ZenIV.linux.org.uk bool 139a08b6b79Sviro@ZenIV.linux.org.uk 1405ac6da66SChristoph Lameterconfig ZONE_DMA 1415ac6da66SChristoph Lameter bool 1425ac6da66SChristoph Lameter 1431da177e4SLinus Torvaldsconfig GENERIC_ISA_DMA 1441da177e4SLinus Torvalds bool 1451da177e4SLinus Torvalds 1461da177e4SLinus Torvaldsconfig FIQ 1471da177e4SLinus Torvalds bool 1481da177e4SLinus Torvalds 149034d2f5aSAl Viroconfig ARCH_MTD_XIP 150034d2f5aSAl Viro bool 151034d2f5aSAl Viro 15260a752efSPaulius Zaleckasconfig GENERIC_HARDIRQS_NO__DO_IRQ 15360a752efSPaulius Zaleckas def_bool y 15460a752efSPaulius Zaleckas 155c0ffa3a9SMathieu Desnoyersif OPROFILE 156c0ffa3a9SMathieu Desnoyers 157c0ffa3a9SMathieu Desnoyersconfig OPROFILE_ARMV6 158c0ffa3a9SMathieu Desnoyers def_bool y 159c0ffa3a9SMathieu Desnoyers depends on CPU_V6 && !SMP 160c0ffa3a9SMathieu Desnoyers select OPROFILE_ARM11_CORE 161c0ffa3a9SMathieu Desnoyers 162c0ffa3a9SMathieu Desnoyersconfig OPROFILE_MPCORE 163c0ffa3a9SMathieu Desnoyers def_bool y 164c0ffa3a9SMathieu Desnoyers depends on CPU_V6 && SMP 165c0ffa3a9SMathieu Desnoyers select OPROFILE_ARM11_CORE 166c0ffa3a9SMathieu Desnoyers 167c0ffa3a9SMathieu Desnoyersconfig OPROFILE_ARM11_CORE 168c0ffa3a9SMathieu Desnoyers bool 169c0ffa3a9SMathieu Desnoyers 170d7ac4e28SJean PIHETconfig OPROFILE_ARMV7 171d7ac4e28SJean PIHET def_bool y 172d7ac4e28SJean PIHET depends on CPU_V7 && !SMP 173d7ac4e28SJean PIHET bool 174d7ac4e28SJean PIHET 175c0ffa3a9SMathieu Desnoyersendif 176c0ffa3a9SMathieu Desnoyers 177c760fc19SHyok S. Choiconfig VECTORS_BASE 178c760fc19SHyok S. Choi hex 1796afd6faeSHyok S. Choi default 0xffff0000 if MMU || CPU_HIGH_VECTOR 180c760fc19SHyok S. Choi default DRAM_BASE if REMAP_VECTORS_TO_RAM 181c760fc19SHyok S. Choi default 0x00000000 182c760fc19SHyok S. Choi help 183c760fc19SHyok S. Choi The base address of exception vectors. 184c760fc19SHyok S. Choi 1851da177e4SLinus Torvaldssource "init/Kconfig" 1861da177e4SLinus Torvalds 187dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer" 188dc52ddc0SMatt Helsley 1891da177e4SLinus Torvaldsmenu "System Type" 1901da177e4SLinus Torvalds 1911da177e4SLinus Torvaldschoice 1921da177e4SLinus Torvalds prompt "ARM system type" 1936a0e2430SCatalin Marinas default ARCH_VERSATILE 1941da177e4SLinus Torvalds 1954af6fee1SDeepak Saxenaconfig ARCH_AAEC2000 1964af6fee1SDeepak Saxena bool "Agilent AAEC-2000 based" 197c750815eSRussell King select CPU_ARM920T 1984af6fee1SDeepak Saxena select ARM_AMBA 1999483a578SDavid Brownell select HAVE_CLK 2004af6fee1SDeepak Saxena help 2014af6fee1SDeepak Saxena This enables support for systems based on the Agilent AAEC-2000 2024af6fee1SDeepak Saxena 2034af6fee1SDeepak Saxenaconfig ARCH_INTEGRATOR 2044af6fee1SDeepak Saxena bool "ARM Ltd. Integrator family" 2054af6fee1SDeepak Saxena select ARM_AMBA 2069483a578SDavid Brownell select HAVE_CLK 207d72fbdf0SRussell King select COMMON_CLKDEV 2084af6fee1SDeepak Saxena select ICST525 2094af6fee1SDeepak Saxena help 2104af6fee1SDeepak Saxena Support for ARM's Integrator platform. 2114af6fee1SDeepak Saxena 2124af6fee1SDeepak Saxenaconfig ARCH_REALVIEW 2134af6fee1SDeepak Saxena bool "ARM Ltd. RealView family" 2144af6fee1SDeepak Saxena select ARM_AMBA 2159483a578SDavid Brownell select HAVE_CLK 216cf30fb4aSRussell King select COMMON_CLKDEV 2174af6fee1SDeepak Saxena select ICST307 21885802afeSCatalin Marinas select GENERIC_TIME 219ae30ceacSCatalin Marinas select GENERIC_CLOCKEVENTS 2204af6fee1SDeepak Saxena help 2214af6fee1SDeepak Saxena This enables support for ARM Ltd RealView boards. 2224af6fee1SDeepak Saxena 2234af6fee1SDeepak Saxenaconfig ARCH_VERSATILE 2244af6fee1SDeepak Saxena bool "ARM Ltd. Versatile family" 2254af6fee1SDeepak Saxena select ARM_AMBA 2264af6fee1SDeepak Saxena select ARM_VIC 2279483a578SDavid Brownell select HAVE_CLK 22871a06da0SRussell King select COMMON_CLKDEV 2294af6fee1SDeepak Saxena select ICST307 230b49c87c2SKevin Hilman select GENERIC_TIME 23189df1272SKevin Hilman select GENERIC_CLOCKEVENTS 2324af6fee1SDeepak Saxena help 2334af6fee1SDeepak Saxena This enables support for ARM Ltd Versatile board. 2344af6fee1SDeepak Saxena 2358fc5ffa0SAndrew Victorconfig ARCH_AT91 2368fc5ffa0SAndrew Victor bool "Atmel AT91" 2370a938b97SDavid Brownell select GENERIC_GPIO 238f373e8c0SRyan Mallon select ARCH_REQUIRE_GPIOLIB 23993686ae8SDavid Brownell select HAVE_CLK 2404af6fee1SDeepak Saxena help 2412b3b3516SAndrew Victor This enables support for systems based on the Atmel AT91RM9200, 2422b3b3516SAndrew Victor AT91SAM9 and AT91CAP9 processors. 2434af6fee1SDeepak Saxena 2441da177e4SLinus Torvaldsconfig ARCH_CLPS711X 2454af6fee1SDeepak Saxena bool "Cirrus Logic CLPS711x/EP721x-based" 246c750815eSRussell King select CPU_ARM720T 247f999b8bdSMartin Michlmayr help 248f999b8bdSMartin Michlmayr Support for Cirrus Logic 711x/721x based boards. 2491da177e4SLinus Torvalds 250788c9700SRussell Kingconfig ARCH_GEMINI 251788c9700SRussell King bool "Cortina Systems Gemini" 252788c9700SRussell King select CPU_FA526 253788c9700SRussell King select GENERIC_GPIO 254788c9700SRussell King select ARCH_REQUIRE_GPIOLIB 255788c9700SRussell King help 256788c9700SRussell King Support for the Cortina Systems Gemini family SoCs 257788c9700SRussell King 2581da177e4SLinus Torvaldsconfig ARCH_EBSA110 2591da177e4SLinus Torvalds bool "EBSA-110" 260c750815eSRussell King select CPU_SA110 261f7e68bbfSRussell King select ISA 262c5eb2a2bSRussell King select NO_IOPORT 2631da177e4SLinus Torvalds help 2641da177e4SLinus Torvalds This is an evaluation board for the StrongARM processor available 265f6c8965aSMartin Michlmayr from Digital. It has limited hardware on-board, including an 2661da177e4SLinus Torvalds Ethernet interface, two PCMCIA sockets, two serial ports and a 2671da177e4SLinus Torvalds parallel port. 2681da177e4SLinus Torvalds 269e7736d47SLennert Buytenhekconfig ARCH_EP93XX 270e7736d47SLennert Buytenhek bool "EP93xx-based" 271c750815eSRussell King select CPU_ARM920T 272e7736d47SLennert Buytenhek select ARM_AMBA 273e7736d47SLennert Buytenhek select ARM_VIC 2744e9f9fd5SHerbert Valerio Riedel select GENERIC_GPIO 2759483a578SDavid Brownell select HAVE_CLK 276ae696fd5SRussell King select COMMON_CLKDEV 2777444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 278eb33575cSMel Gorman select ARCH_HAS_HOLES_MEMORYMODEL 279e7736d47SLennert Buytenhek help 280e7736d47SLennert Buytenhek This enables support for the Cirrus EP93xx series of CPUs. 281e7736d47SLennert Buytenhek 2821da177e4SLinus Torvaldsconfig ARCH_FOOTBRIDGE 2831da177e4SLinus Torvalds bool "FootBridge" 284c750815eSRussell King select CPU_SA110 2851da177e4SLinus Torvalds select FOOTBRIDGE 286f999b8bdSMartin Michlmayr help 287f999b8bdSMartin Michlmayr Support for systems based on the DC21285 companion chip 288f999b8bdSMartin Michlmayr ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder. 2891da177e4SLinus Torvalds 290788c9700SRussell Kingconfig ARCH_MXC 291788c9700SRussell King bool "Freescale MXC/iMX-based" 292788c9700SRussell King select GENERIC_TIME 293788c9700SRussell King select GENERIC_CLOCKEVENTS 294788c9700SRussell King select ARCH_MTD_XIP 295788c9700SRussell King select GENERIC_GPIO 296788c9700SRussell King select ARCH_REQUIRE_GPIOLIB 297a2ab67faSRussell King select HAVE_CLK 298788c9700SRussell King help 299788c9700SRussell King Support for Freescale MXC/iMX-based family of processors 300788c9700SRussell King 3017bd0f2f5Sdmitry pervushinconfig ARCH_STMP3XXX 3027bd0f2f5Sdmitry pervushin bool "Freescale STMP3xxx" 3037bd0f2f5Sdmitry pervushin select CPU_ARM926T 3047bd0f2f5Sdmitry pervushin select HAVE_CLK 3057bd0f2f5Sdmitry pervushin select COMMON_CLKDEV 3067bd0f2f5Sdmitry pervushin select ARCH_REQUIRE_GPIOLIB 3077bd0f2f5Sdmitry pervushin select GENERIC_TIME 3087bd0f2f5Sdmitry pervushin select GENERIC_CLOCKEVENTS 3097bd0f2f5Sdmitry pervushin select GENERIC_GPIO 3107bd0f2f5Sdmitry pervushin select USB_ARCH_HAS_EHCI 3117bd0f2f5Sdmitry pervushin help 3127bd0f2f5Sdmitry pervushin Support for systems based on the Freescale 3xxx CPUs. 3137bd0f2f5Sdmitry pervushin 3144af6fee1SDeepak Saxenaconfig ARCH_NETX 3154af6fee1SDeepak Saxena bool "Hilscher NetX based" 316c750815eSRussell King select CPU_ARM926T 3174af6fee1SDeepak Saxena select ARM_VIC 3182fcfe6b8SUwe Kleine-König select GENERIC_CLOCKEVENTS 31921edecd3SUwe Kleine-König select GENERIC_TIME 320f999b8bdSMartin Michlmayr help 3214af6fee1SDeepak Saxena This enables support for systems based on the Hilscher NetX Soc 3224af6fee1SDeepak Saxena 3234af6fee1SDeepak Saxenaconfig ARCH_H720X 3244af6fee1SDeepak Saxena bool "Hynix HMS720x-based" 325c750815eSRussell King select CPU_ARM720T 3264af6fee1SDeepak Saxena select ISA_DMA_API 3274af6fee1SDeepak Saxena help 3284af6fee1SDeepak Saxena This enables support for systems based on the Hynix HMS720x 3294af6fee1SDeepak Saxena 3303b938be6SRussell Kingconfig ARCH_IOP13XX 3313b938be6SRussell King bool "IOP13xx-based" 3323b938be6SRussell King depends on MMU 333c750815eSRussell King select CPU_XSC3 3343b938be6SRussell King select PLAT_IOP 3353b938be6SRussell King select PCI 3363b938be6SRussell King select ARCH_SUPPORTS_MSI 3378d5796d2SLennert Buytenhek select VMSPLIT_1G 3383b938be6SRussell King help 3393b938be6SRussell King Support for Intel's IOP13XX (XScale) family of processors. 3403b938be6SRussell King 3413f7e5815SLennert Buytenhekconfig ARCH_IOP32X 3423f7e5815SLennert Buytenhek bool "IOP32x-based" 343a4f7e763SRussell King depends on MMU 344c750815eSRussell King select CPU_XSCALE 3457ae1f7ecSLennert Buytenhek select PLAT_IOP 346f7e68bbfSRussell King select PCI 34763f385cdSArnaud Patard select GENERIC_GPIO 348bb2b180cSRussell King select ARCH_REQUIRE_GPIOLIB 349f999b8bdSMartin Michlmayr help 3503f7e5815SLennert Buytenhek Support for Intel's 80219 and IOP32X (XScale) family of 3513f7e5815SLennert Buytenhek processors. 3523f7e5815SLennert Buytenhek 3533f7e5815SLennert Buytenhekconfig ARCH_IOP33X 3543f7e5815SLennert Buytenhek bool "IOP33x-based" 3553f7e5815SLennert Buytenhek depends on MMU 356c750815eSRussell King select CPU_XSCALE 3577ae1f7ecSLennert Buytenhek select PLAT_IOP 3583f7e5815SLennert Buytenhek select PCI 35963f385cdSArnaud Patard select GENERIC_GPIO 360bb2b180cSRussell King select ARCH_REQUIRE_GPIOLIB 3613f7e5815SLennert Buytenhek help 3623f7e5815SLennert Buytenhek Support for Intel's IOP33X (XScale) family of processors. 3631da177e4SLinus Torvalds 3643b938be6SRussell Kingconfig ARCH_IXP23XX 3653b938be6SRussell King bool "IXP23XX-based" 366588ef769SDan Williams depends on MMU 367c750815eSRussell King select CPU_XSC3 368285f5fa7SDan Williams select PCI 369285f5fa7SDan Williams help 3703b938be6SRussell King Support for Intel's IXP23xx (XScale) family of processors. 3711da177e4SLinus Torvalds 3721da177e4SLinus Torvaldsconfig ARCH_IXP2000 3731da177e4SLinus Torvalds bool "IXP2400/2800-based" 374a4f7e763SRussell King depends on MMU 375c750815eSRussell King select CPU_XSCALE 376f7e68bbfSRussell King select PCI 377f999b8bdSMartin Michlmayr help 378f999b8bdSMartin Michlmayr Support for Intel's IXP2400/2800 (XScale) family of processors. 3791da177e4SLinus Torvalds 3803b938be6SRussell Kingconfig ARCH_IXP4XX 3813b938be6SRussell King bool "IXP4xx-based" 382a4f7e763SRussell King depends on MMU 383c750815eSRussell King select CPU_XSCALE 3848858e9afSMilan Svoboda select GENERIC_GPIO 3853b938be6SRussell King select GENERIC_TIME 3863b938be6SRussell King select GENERIC_CLOCKEVENTS 387485bdde7SRussell King select DMABOUNCE if PCI 388c4713074SLennert Buytenhek help 3893b938be6SRussell King Support for Intel's IXP4XX (XScale) family of processors. 390c4713074SLennert Buytenhek 3911da177e4SLinus Torvaldsconfig ARCH_L7200 3921da177e4SLinus Torvalds bool "LinkUp-L7200" 393c750815eSRussell King select CPU_ARM720T 3941da177e4SLinus Torvalds select FIQ 3951da177e4SLinus Torvalds help 3961da177e4SLinus Torvalds Say Y here if you intend to run this kernel on a LinkUp Systems 3971da177e4SLinus Torvalds L7200 Software Development Board which uses an ARM720T processor. 3981da177e4SLinus Torvalds Information on this board can be obtained at: 3991da177e4SLinus Torvalds 4001da177e4SLinus Torvalds <http://www.linkupsys.com/> 4011da177e4SLinus Torvalds 4021da177e4SLinus Torvalds If you have any questions or comments about the Linux kernel port 4031da177e4SLinus Torvalds to this board, send e-mail to <sjhill@cotw.com>. 4041da177e4SLinus Torvalds 405651c74c7SSaeed Bisharaconfig ARCH_KIRKWOOD 406651c74c7SSaeed Bishara bool "Marvell Kirkwood" 407c750815eSRussell King select CPU_FEROCEON 408651c74c7SSaeed Bishara select PCI 4094c213430SLennert Buytenhek select GENERIC_GPIO 410a8865655SErik Benada select ARCH_REQUIRE_GPIOLIB 411651c74c7SSaeed Bishara select GENERIC_TIME 412651c74c7SSaeed Bishara select GENERIC_CLOCKEVENTS 413651c74c7SSaeed Bishara select PLAT_ORION 414651c74c7SSaeed Bishara help 415651c74c7SSaeed Bishara Support for the following Marvell Kirkwood series SoCs: 416651c74c7SSaeed Bishara 88F6180, 88F6192 and 88F6281. 417651c74c7SSaeed Bishara 418788c9700SRussell Kingconfig ARCH_LOKI 419788c9700SRussell King bool "Marvell Loki (88RC8480)" 420788c9700SRussell King select CPU_FEROCEON 421788c9700SRussell King select GENERIC_TIME 422788c9700SRussell King select GENERIC_CLOCKEVENTS 423788c9700SRussell King select PLAT_ORION 424788c9700SRussell King help 425788c9700SRussell King Support for the Marvell Loki (88RC8480) SoC. 426788c9700SRussell King 427788c9700SRussell Kingconfig ARCH_MV78XX0 428788c9700SRussell King bool "Marvell MV78xx0" 429788c9700SRussell King select CPU_FEROCEON 430788c9700SRussell King select PCI 431788c9700SRussell King select GENERIC_GPIO 432a8865655SErik Benada select ARCH_REQUIRE_GPIOLIB 433788c9700SRussell King select GENERIC_TIME 434788c9700SRussell King select GENERIC_CLOCKEVENTS 435788c9700SRussell King select PLAT_ORION 436788c9700SRussell King help 437788c9700SRussell King Support for the following Marvell MV78xx0 series SoCs: 438788c9700SRussell King MV781x0, MV782x0. 439788c9700SRussell King 440788c9700SRussell Kingconfig ARCH_ORION5X 441788c9700SRussell King bool "Marvell Orion" 442788c9700SRussell King depends on MMU 443788c9700SRussell King select CPU_FEROCEON 444788c9700SRussell King select PCI 445788c9700SRussell King select GENERIC_GPIO 446a8865655SErik Benada select ARCH_REQUIRE_GPIOLIB 447788c9700SRussell King select GENERIC_TIME 448788c9700SRussell King select GENERIC_CLOCKEVENTS 449788c9700SRussell King select PLAT_ORION 450788c9700SRussell King help 451788c9700SRussell King Support for the following Marvell Orion 5x series SoCs: 452788c9700SRussell King Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182), 453788c9700SRussell King Orion-2 (5281), Orion-1-90 (6183). 454788c9700SRussell King 455788c9700SRussell Kingconfig ARCH_MMP 456788c9700SRussell King bool "Marvell PXA168/910" 457788c9700SRussell King depends on MMU 458788c9700SRussell King select GENERIC_GPIO 459788c9700SRussell King select ARCH_REQUIRE_GPIOLIB 460788c9700SRussell King select HAVE_CLK 461788c9700SRussell King select COMMON_CLKDEV 462788c9700SRussell King select GENERIC_TIME 463788c9700SRussell King select GENERIC_CLOCKEVENTS 464788c9700SRussell King select TICK_ONESHOT 465788c9700SRussell King select PLAT_PXA 466788c9700SRussell King help 467788c9700SRussell King Support for Marvell's PXA168/910 processor line. 468788c9700SRussell King 469c53c9cf6SAndrew Victorconfig ARCH_KS8695 470c53c9cf6SAndrew Victor bool "Micrel/Kendin KS8695" 471c750815eSRussell King select CPU_ARM922T 4728a87a996SAndrew Victor select GENERIC_GPIO 47372880ad8SDaniel Silverstone select ARCH_REQUIRE_GPIOLIB 474c53c9cf6SAndrew Victor help 475c53c9cf6SAndrew Victor Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based 476c53c9cf6SAndrew Victor System-on-Chip devices. 477c53c9cf6SAndrew Victor 4789918cda5SUwe Kleine-Königconfig ARCH_NS9XXX 4799918cda5SUwe Kleine-König bool "NetSilicon NS9xxx" 480c750815eSRussell King select CPU_ARM926T 481689f2a01SUwe Kleine-König select GENERIC_GPIO 482cef5975dSUwe Kleine-König select GENERIC_TIME 483c0bb87f7SUwe Kleine-König select GENERIC_CLOCKEVENTS 4849483a578SDavid Brownell select HAVE_CLK 4859918cda5SUwe Kleine-König help 4869918cda5SUwe Kleine-König Say Y here if you intend to run this kernel on a NetSilicon NS9xxx 4879918cda5SUwe Kleine-König System. 4889918cda5SUwe Kleine-König 4899918cda5SUwe Kleine-König <http://www.digi.com/products/microprocessors/index.jsp> 4909918cda5SUwe Kleine-König 491788c9700SRussell Kingconfig ARCH_W90X900 492788c9700SRussell King bool "Nuvoton W90X900 CPU" 493788c9700SRussell King select CPU_ARM926T 494c52d3d68Swanzongshun select ARCH_REQUIRE_GPIOLIB 495c52d3d68Swanzongshun select GENERIC_GPIO 4960e4a34bbSwanzongshun select COMMON_CLKDEV 497777f9bebSLennert Buytenhek help 498788c9700SRussell King Support for Nuvoton (Winbond logic dept.) ARM9 processor,You 499788c9700SRussell King can login www.mcuos.com or www.nuvoton.com to know more. 500585cf175STzachi Perelstein 5014af6fee1SDeepak Saxenaconfig ARCH_PNX4008 5024af6fee1SDeepak Saxena bool "Philips Nexperia PNX4008 Mobile" 503c750815eSRussell King select CPU_ARM926T 5049483a578SDavid Brownell select HAVE_CLK 5054af6fee1SDeepak Saxena help 5064af6fee1SDeepak Saxena This enables support for Philips PNX4008 mobile platform. 5074af6fee1SDeepak Saxena 5081da177e4SLinus Torvaldsconfig ARCH_PXA 5092c8086a5Seric miao bool "PXA2xx/PXA3xx-based" 510a4f7e763SRussell King depends on MMU 511034d2f5aSAl Viro select ARCH_MTD_XIP 5120a938b97SDavid Brownell select GENERIC_GPIO 5139483a578SDavid Brownell select HAVE_CLK 5148c3abc7dSRussell King select COMMON_CLKDEV 5157444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 51645cf5eefSNicolas Pitre select GENERIC_TIME 517981d0f39SEric Miao select GENERIC_CLOCKEVENTS 518a88264c2SRussell King select TICK_ONESHOT 519bd5ce433SEric Miao select PLAT_PXA 520f999b8bdSMartin Michlmayr help 5212c8086a5Seric miao Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 5221da177e4SLinus Torvalds 523788c9700SRussell Kingconfig ARCH_MSM 524788c9700SRussell King bool "Qualcomm MSM" 525788c9700SRussell King select CPU_V6 52649cbe786SEric Miao select GENERIC_TIME 52749cbe786SEric Miao select GENERIC_CLOCKEVENTS 52849cbe786SEric Miao help 529788c9700SRussell King Support for Qualcomm MSM7K based systems. This runs on the ARM11 530788c9700SRussell King apps processor of the MSM7K and depends on a shared memory 531788c9700SRussell King interface to the ARM9 modem processor which runs the baseband stack 532788c9700SRussell King and controls some vital subsystems (clock and power control, etc). 53349cbe786SEric Miao 5341da177e4SLinus Torvaldsconfig ARCH_RPC 5351da177e4SLinus Torvalds bool "RiscPC" 5361da177e4SLinus Torvalds select ARCH_ACORN 5371da177e4SLinus Torvalds select FIQ 5381da177e4SLinus Torvalds select TIMER_ACORN 539a08b6b79Sviro@ZenIV.linux.org.uk select ARCH_MAY_HAVE_PC_FDC 540341eb781SBen Dooks select HAVE_PATA_PLATFORM 541065909b9SRussell King select ISA_DMA_API 5425ea81769SAl Viro select NO_IOPORT 54307f841b7SRussell King select ARCH_SPARSEMEM_ENABLE 5441da177e4SLinus Torvalds help 5451da177e4SLinus Torvalds On the Acorn Risc-PC, Linux can support the internal IDE disk and 5461da177e4SLinus Torvalds CD-ROM interface, serial and parallel port, and the floppy drive. 5471da177e4SLinus Torvalds 5481da177e4SLinus Torvaldsconfig ARCH_SA1100 5491da177e4SLinus Torvalds bool "SA1100-based" 550c750815eSRussell King select CPU_SA1100 551f7e68bbfSRussell King select ISA 55205944d74SRussell King select ARCH_SPARSEMEM_ENABLE 553034d2f5aSAl Viro select ARCH_MTD_XIP 5540a938b97SDavid Brownell select GENERIC_GPIO 555d142b6e7SRussell King select GENERIC_TIME 5563e238be2SRussell King select GENERIC_CLOCKEVENTS 5579483a578SDavid Brownell select HAVE_CLK 5583e238be2SRussell King select TICK_ONESHOT 5597444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 560f999b8bdSMartin Michlmayr help 561f999b8bdSMartin Michlmayr Support for StrongARM 11x0 based boards. 5621da177e4SLinus Torvalds 5631da177e4SLinus Torvaldsconfig ARCH_S3C2410 564e4d06e39SBen Dooks bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443" 5650a938b97SDavid Brownell select GENERIC_GPIO 5669483a578SDavid Brownell select HAVE_CLK 5671da177e4SLinus Torvalds help 5681da177e4SLinus Torvalds Samsung S3C2410X CPU based systems, such as the Simtec Electronics 5691da177e4SLinus Torvalds BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or 570f6c8965aSMartin Michlmayr the Samsung SMDK2410 development board (and derivatives). 5711da177e4SLinus Torvalds 572a08ab637SBen Dooksconfig ARCH_S3C64XX 573a08ab637SBen Dooks bool "Samsung S3C64XX" 574a08ab637SBen Dooks select GENERIC_GPIO 575a08ab637SBen Dooks select HAVE_CLK 576a08ab637SBen Dooks help 577a08ab637SBen Dooks Samsung S3C64XX series based systems 578a08ab637SBen Dooks 5791da177e4SLinus Torvaldsconfig ARCH_SHARK 5801da177e4SLinus Torvalds bool "Shark" 581c750815eSRussell King select CPU_SA110 582f7e68bbfSRussell King select ISA 583f7e68bbfSRussell King select ISA_DMA 5843bca103aSNicolas Pitre select ZONE_DMA 585f7e68bbfSRussell King select PCI 586f999b8bdSMartin Michlmayr help 587f999b8bdSMartin Michlmayr Support for the StrongARM based Digital DNARD machine, also known 588f999b8bdSMartin Michlmayr as "Shark" (<http://www.shark-linux.de/shark.html>). 5891da177e4SLinus Torvalds 5901da177e4SLinus Torvaldsconfig ARCH_LH7A40X 5911da177e4SLinus Torvalds bool "Sharp LH7A40X" 592c750815eSRussell King select CPU_ARM922T 5934ba3f7c5SRussell King select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM 5944ba3f7c5SRussell King select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM 5951da177e4SLinus Torvalds help 5961da177e4SLinus Torvalds Say Y here for systems based on one of the Sharp LH7A40X 5971da177e4SLinus Torvalds System on a Chip processors. These CPUs include an ARM922T 5981da177e4SLinus Torvalds core with a wide array of integrated devices for 5991da177e4SLinus Torvalds hand-held and low-power applications. 6001da177e4SLinus Torvalds 601d98aac75SLinus Walleijconfig ARCH_U300 602d98aac75SLinus Walleij bool "ST-Ericsson U300 Series" 603d98aac75SLinus Walleij depends on MMU 604d98aac75SLinus Walleij select CPU_ARM926T 605d98aac75SLinus Walleij select ARM_AMBA 606d98aac75SLinus Walleij select ARM_VIC 607d98aac75SLinus Walleij select GENERIC_TIME 608d98aac75SLinus Walleij select GENERIC_CLOCKEVENTS 609d98aac75SLinus Walleij select HAVE_CLK 610d98aac75SLinus Walleij select COMMON_CLKDEV 611d98aac75SLinus Walleij select GENERIC_GPIO 612d98aac75SLinus Walleij help 613d98aac75SLinus Walleij Support for ST-Ericsson U300 series mobile platforms. 614d98aac75SLinus Walleij 6157c6337e2SKevin Hilmanconfig ARCH_DAVINCI 6167c6337e2SKevin Hilman bool "TI DaVinci" 617c750815eSRussell King select CPU_ARM926T 6187c6337e2SKevin Hilman select GENERIC_TIME 6197c6337e2SKevin Hilman select GENERIC_CLOCKEVENTS 6203d9edf09SVladimir Barinov select GENERIC_GPIO 621dce1115bSDavid Brownell select ARCH_REQUIRE_GPIOLIB 6229483a578SDavid Brownell select HAVE_CLK 6233bca103aSNicolas Pitre select ZONE_DMA 6249232fcc9SKevin Hilman select HAVE_IDE 625c5b736d0SKevin Hilman select COMMON_CLKDEV 62620e9969bSDavid Brownell select GENERIC_ALLOCATOR 6277c6337e2SKevin Hilman help 6287c6337e2SKevin Hilman Support for TI's DaVinci platform. 6297c6337e2SKevin Hilman 6303b938be6SRussell Kingconfig ARCH_OMAP 6313b938be6SRussell King bool "TI OMAP" 6323b938be6SRussell King select GENERIC_GPIO 6339483a578SDavid Brownell select HAVE_CLK 6347444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 6353b938be6SRussell King select GENERIC_TIME 63606cad098SKevin Hilman select GENERIC_CLOCKEVENTS 6373b938be6SRussell King help 6383b938be6SRussell King Support for TI's OMAP platform (OMAP1 and OMAP2). 6393b938be6SRussell King 6401da177e4SLinus Torvaldsendchoice 6411da177e4SLinus Torvalds 6421da177e4SLinus Torvaldssource "arch/arm/mach-clps711x/Kconfig" 6431da177e4SLinus Torvalds 644e7736d47SLennert Buytenheksource "arch/arm/mach-ep93xx/Kconfig" 645e7736d47SLennert Buytenhek 6461da177e4SLinus Torvaldssource "arch/arm/mach-footbridge/Kconfig" 6471da177e4SLinus Torvalds 64859d3a193SPaulius Zaleckassource "arch/arm/mach-gemini/Kconfig" 64959d3a193SPaulius Zaleckas 6501da177e4SLinus Torvaldssource "arch/arm/mach-integrator/Kconfig" 6511da177e4SLinus Torvalds 6523f7e5815SLennert Buytenheksource "arch/arm/mach-iop32x/Kconfig" 6533f7e5815SLennert Buytenhek 6543f7e5815SLennert Buytenheksource "arch/arm/mach-iop33x/Kconfig" 6551da177e4SLinus Torvalds 656285f5fa7SDan Williamssource "arch/arm/mach-iop13xx/Kconfig" 657285f5fa7SDan Williams 6581da177e4SLinus Torvaldssource "arch/arm/mach-ixp4xx/Kconfig" 6591da177e4SLinus Torvalds 6601da177e4SLinus Torvaldssource "arch/arm/mach-ixp2000/Kconfig" 6611da177e4SLinus Torvalds 662c4713074SLennert Buytenheksource "arch/arm/mach-ixp23xx/Kconfig" 663c4713074SLennert Buytenhek 664777f9bebSLennert Buytenheksource "arch/arm/mach-loki/Kconfig" 665777f9bebSLennert Buytenhek 666794d15b2SStanislav Samsonovsource "arch/arm/mach-mv78xx0/Kconfig" 667794d15b2SStanislav Samsonov 6681da177e4SLinus Torvaldssource "arch/arm/mach-pxa/Kconfig" 669bd5ce433SEric Miaosource "arch/arm/plat-pxa/Kconfig" 6701da177e4SLinus Torvalds 67149cbe786SEric Miaosource "arch/arm/mach-mmp/Kconfig" 67249cbe786SEric Miao 6731da177e4SLinus Torvaldssource "arch/arm/mach-sa1100/Kconfig" 6741da177e4SLinus Torvalds 675d48af15eSTony Lindgrensource "arch/arm/plat-omap/Kconfig" 676d48af15eSTony Lindgren 677d48af15eSTony Lindgrensource "arch/arm/mach-omap1/Kconfig" 6781da177e4SLinus Torvalds 6791dbae815STony Lindgrensource "arch/arm/mach-omap2/Kconfig" 6801dbae815STony Lindgren 6819dd0b194SLennert Buytenheksource "arch/arm/mach-orion5x/Kconfig" 682585cf175STzachi Perelstein 683651c74c7SSaeed Bisharasource "arch/arm/mach-kirkwood/Kconfig" 6841da177e4SLinus Torvalds 685a21765a7SBen Dookssource "arch/arm/plat-s3c24xx/Kconfig" 686a08ab637SBen Dookssource "arch/arm/plat-s3c64xx/Kconfig" 687d58153d8SBen Dookssource "arch/arm/plat-s3c/Kconfig" 688a21765a7SBen Dooks 689a21765a7SBen Dooksif ARCH_S3C2410 690a21765a7SBen Dookssource "arch/arm/mach-s3c2400/Kconfig" 6911da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig" 692a21765a7SBen Dookssource "arch/arm/mach-s3c2412/Kconfig" 693a21765a7SBen Dookssource "arch/arm/mach-s3c2440/Kconfig" 694a21765a7SBen Dookssource "arch/arm/mach-s3c2442/Kconfig" 695e4d06e39SBen Dookssource "arch/arm/mach-s3c2443/Kconfig" 696a21765a7SBen Dooksendif 6971da177e4SLinus Torvalds 698a08ab637SBen Dooksif ARCH_S3C64XX 699a08ab637SBen Dookssource "arch/arm/mach-s3c6400/Kconfig" 700a08ab637SBen Dookssource "arch/arm/mach-s3c6410/Kconfig" 701a08ab637SBen Dooksendif 702a08ab637SBen Dooks 7037bd0f2f5Sdmitry pervushinsource "arch/arm/plat-stmp3xxx/Kconfig" 7047bd0f2f5Sdmitry pervushin 7051da177e4SLinus Torvaldssource "arch/arm/mach-lh7a40x/Kconfig" 7061da177e4SLinus Torvalds 7071da177e4SLinus Torvaldssource "arch/arm/mach-h720x/Kconfig" 7081da177e4SLinus Torvalds 7091da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig" 7101da177e4SLinus Torvalds 711038c5b60SBellido Nicolassource "arch/arm/mach-aaec2000/Kconfig" 712038c5b60SBellido Nicolas 7138ad68bbfSCatalin Marinassource "arch/arm/mach-realview/Kconfig" 7148ad68bbfSCatalin Marinas 7159d041268SAndrew Victorsource "arch/arm/mach-at91/Kconfig" 71673a59c1cSSAN People 71752c543f9SQuinn Jensensource "arch/arm/plat-mxc/Kconfig" 71852c543f9SQuinn Jensen 719bb6d8c88SSascha Hauersource "arch/arm/mach-netx/Kconfig" 720bb6d8c88SSascha Hauer 7219918cda5SUwe Kleine-Königsource "arch/arm/mach-ns9xxx/Kconfig" 7229918cda5SUwe Kleine-König 7237c6337e2SKevin Hilmansource "arch/arm/mach-davinci/Kconfig" 7247c6337e2SKevin Hilman 725c53c9cf6SAndrew Victorsource "arch/arm/mach-ks8695/Kconfig" 726c53c9cf6SAndrew Victor 7279e73c84cSBrian Swetlandsource "arch/arm/mach-msm/Kconfig" 7289e73c84cSBrian Swetland 729d98aac75SLinus Walleijsource "arch/arm/mach-u300/Kconfig" 730d98aac75SLinus Walleij 7317ec80ddfSwanzongshunsource "arch/arm/mach-w90x900/Kconfig" 7327ec80ddfSwanzongshun 7331da177e4SLinus Torvalds# Definitions to make life easier 7341da177e4SLinus Torvaldsconfig ARCH_ACORN 7351da177e4SLinus Torvalds bool 7361da177e4SLinus Torvalds 7377ae1f7ecSLennert Buytenhekconfig PLAT_IOP 7387ae1f7ecSLennert Buytenhek bool 7397ae1f7ecSLennert Buytenhek 74069b02f6aSLennert Buytenhekconfig PLAT_ORION 74169b02f6aSLennert Buytenhek bool 74269b02f6aSLennert Buytenhek 743bd5ce433SEric Miaoconfig PLAT_PXA 744bd5ce433SEric Miao bool 745bd5ce433SEric Miao 7461da177e4SLinus Torvaldssource arch/arm/mm/Kconfig 7471da177e4SLinus Torvalds 748afe4b25eSLennert Buytenhekconfig IWMMXT 749afe4b25eSLennert Buytenhek bool "Enable iWMMXt support" 75040305a58SEric Miao depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK 75140305a58SEric Miao default y if PXA27x || PXA3xx || ARCH_MMP 752afe4b25eSLennert Buytenhek help 753afe4b25eSLennert Buytenhek Enable support for iWMMXt context switching at run time if 754afe4b25eSLennert Buytenhek running on a CPU that supports it. 755afe4b25eSLennert Buytenhek 7561da177e4SLinus Torvalds# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER 7571da177e4SLinus Torvaldsconfig XSCALE_PMU 7581da177e4SLinus Torvalds bool 7591da177e4SLinus Torvalds depends on CPU_XSCALE && !XSCALE_PMU_TIMER 7601da177e4SLinus Torvalds default y 7611da177e4SLinus Torvalds 7623b93e7b0SHyok S. Choiif !MMU 7633b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu" 7643b93e7b0SHyok S. Choiendif 7653b93e7b0SHyok S. Choi 7669cba3cccSCatalin Marinasconfig ARM_ERRATA_411920 7679cba3cccSCatalin Marinas bool "ARM errata: Invalidation of the Instruction Cache operation can fail" 7689cba3cccSCatalin Marinas depends on CPU_V6 && !SMP 7699cba3cccSCatalin Marinas help 7709cba3cccSCatalin Marinas Invalidation of the Instruction Cache operation can 7719cba3cccSCatalin Marinas fail. This erratum is present in 1136 (before r1p4), 1156 and 1176. 7729cba3cccSCatalin Marinas It does not affect the MPCore. This option enables the ARM Ltd. 7739cba3cccSCatalin Marinas recommended workaround. 7749cba3cccSCatalin Marinas 7757ce236fcSCatalin Marinasconfig ARM_ERRATA_430973 7767ce236fcSCatalin Marinas bool "ARM errata: Stale prediction on replaced interworking branch" 7777ce236fcSCatalin Marinas depends on CPU_V7 7787ce236fcSCatalin Marinas help 7797ce236fcSCatalin Marinas This option enables the workaround for the 430973 Cortex-A8 7807ce236fcSCatalin Marinas (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb 7817ce236fcSCatalin Marinas interworking branch is replaced with another code sequence at the 7827ce236fcSCatalin Marinas same virtual address, whether due to self-modifying code or virtual 7837ce236fcSCatalin Marinas to physical address re-mapping, Cortex-A8 does not recover from the 7847ce236fcSCatalin Marinas stale interworking branch prediction. This results in Cortex-A8 7857ce236fcSCatalin Marinas executing the new code sequence in the incorrect ARM or Thumb state. 7867ce236fcSCatalin Marinas The workaround enables the BTB/BTAC operations by setting ACTLR.IBE 7877ce236fcSCatalin Marinas and also flushes the branch target cache at every context switch. 7887ce236fcSCatalin Marinas Note that setting specific bits in the ACTLR register may not be 7897ce236fcSCatalin Marinas available in non-secure mode. 7907ce236fcSCatalin Marinas 791855c551fSCatalin Marinasconfig ARM_ERRATA_458693 792855c551fSCatalin Marinas bool "ARM errata: Processor deadlock when a false hazard is created" 793855c551fSCatalin Marinas depends on CPU_V7 794855c551fSCatalin Marinas help 795855c551fSCatalin Marinas This option enables the workaround for the 458693 Cortex-A8 (r2p0) 796855c551fSCatalin Marinas erratum. For very specific sequences of memory operations, it is 797855c551fSCatalin Marinas possible for a hazard condition intended for a cache line to instead 798855c551fSCatalin Marinas be incorrectly associated with a different cache line. This false 799855c551fSCatalin Marinas hazard might then cause a processor deadlock. The workaround enables 800855c551fSCatalin Marinas the L1 caching of the NEON accesses and disables the PLD instruction 801855c551fSCatalin Marinas in the ACTLR register. Note that setting specific bits in the ACTLR 802855c551fSCatalin Marinas register may not be available in non-secure mode. 803855c551fSCatalin Marinas 8040516e464SCatalin Marinasconfig ARM_ERRATA_460075 8050516e464SCatalin Marinas bool "ARM errata: Data written to the L2 cache can be overwritten with stale data" 8060516e464SCatalin Marinas depends on CPU_V7 8070516e464SCatalin Marinas help 8080516e464SCatalin Marinas This option enables the workaround for the 460075 Cortex-A8 (r2p0) 8090516e464SCatalin Marinas erratum. Any asynchronous access to the L2 cache may encounter a 8100516e464SCatalin Marinas situation in which recent store transactions to the L2 cache are lost 8110516e464SCatalin Marinas and overwritten with stale memory contents from external memory. The 8120516e464SCatalin Marinas workaround disables the write-allocate mode for the L2 cache via the 8130516e464SCatalin Marinas ACTLR register. Note that setting specific bits in the ACTLR register 8140516e464SCatalin Marinas may not be available in non-secure mode. 8150516e464SCatalin Marinas 8161da177e4SLinus Torvaldsendmenu 8171da177e4SLinus Torvalds 8181da177e4SLinus Torvaldssource "arch/arm/common/Kconfig" 8191da177e4SLinus Torvalds 8201da177e4SLinus Torvaldsconfig FORCE_MAX_ZONEORDER 8211da177e4SLinus Torvalds int 8221da177e4SLinus Torvalds depends on SA1111 8231da177e4SLinus Torvalds default "9" 8241da177e4SLinus Torvalds 8251da177e4SLinus Torvaldsmenu "Bus support" 8261da177e4SLinus Torvalds 8271da177e4SLinus Torvaldsconfig ARM_AMBA 8281da177e4SLinus Torvalds bool 8291da177e4SLinus Torvalds 8301da177e4SLinus Torvaldsconfig ISA 8311da177e4SLinus Torvalds bool 8321da177e4SLinus Torvalds help 8331da177e4SLinus Torvalds Find out whether you have ISA slots on your motherboard. ISA is the 8341da177e4SLinus Torvalds name of a bus system, i.e. the way the CPU talks to the other stuff 8351da177e4SLinus Torvalds inside your box. Other bus systems are PCI, EISA, MicroChannel 8361da177e4SLinus Torvalds (MCA) or VESA. ISA is an older system, now being displaced by PCI; 8371da177e4SLinus Torvalds newer boards don't support it. If you have ISA, say Y, otherwise N. 8381da177e4SLinus Torvalds 839065909b9SRussell King# Select ISA DMA controller support 8401da177e4SLinus Torvaldsconfig ISA_DMA 8411da177e4SLinus Torvalds bool 842065909b9SRussell King select ISA_DMA_API 8431da177e4SLinus Torvalds 844065909b9SRussell King# Select ISA DMA interface 8455cae841bSAl Viroconfig ISA_DMA_API 8465cae841bSAl Viro bool 8475cae841bSAl Viro 8481da177e4SLinus Torvaldsconfig PCI 849a0113a99SMike Rapoport bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE 8501da177e4SLinus Torvalds help 8511da177e4SLinus Torvalds Find out whether you have a PCI motherboard. PCI is the name of a 8521da177e4SLinus Torvalds bus system, i.e. the way the CPU talks to the other stuff inside 8531da177e4SLinus Torvalds your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 8541da177e4SLinus Torvalds VESA. If you have PCI, say Y, otherwise N. 8551da177e4SLinus Torvalds 85636e23590SMatthew Wilcoxconfig PCI_SYSCALL 85736e23590SMatthew Wilcox def_bool PCI 85836e23590SMatthew Wilcox 8591da177e4SLinus Torvalds# Select the host bridge type 8601da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505 8611da177e4SLinus Torvalds bool 8621da177e4SLinus Torvalds depends on PCI && ARCH_SHARK 8631da177e4SLinus Torvalds default y 8641da177e4SLinus Torvalds 865a0113a99SMike Rapoportconfig PCI_HOST_ITE8152 866a0113a99SMike Rapoport bool 867a0113a99SMike Rapoport depends on PCI && MACH_ARMCORE 868a0113a99SMike Rapoport default y 869a0113a99SMike Rapoport select DMABOUNCE 870a0113a99SMike Rapoport 8711da177e4SLinus Torvaldssource "drivers/pci/Kconfig" 8721da177e4SLinus Torvalds 8731da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig" 8741da177e4SLinus Torvalds 8751da177e4SLinus Torvaldsendmenu 8761da177e4SLinus Torvalds 8771da177e4SLinus Torvaldsmenu "Kernel Features" 8781da177e4SLinus Torvalds 8790567a0c0SKevin Hilmansource "kernel/time/Kconfig" 8800567a0c0SKevin Hilman 8811da177e4SLinus Torvaldsconfig SMP 8821da177e4SLinus Torvalds bool "Symmetric Multi-Processing (EXPERIMENTAL)" 88342578c82SRussell King depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\ 88442578c82SRussell King MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4) 885bc28248eSRussell King depends on GENERIC_CLOCKEVENTS 886f6dd9fa5SJens Axboe select USE_GENERIC_SMP_HELPERS 887934f8be7SSantosh Shilimkar select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4) 8881da177e4SLinus Torvalds help 8891da177e4SLinus Torvalds This enables support for systems with more than one CPU. If you have 8901da177e4SLinus Torvalds a system with only one CPU, like most personal computers, say N. If 8911da177e4SLinus Torvalds you have a system with more than one CPU, say Y. 8921da177e4SLinus Torvalds 8931da177e4SLinus Torvalds If you say N here, the kernel will run on single and multiprocessor 8941da177e4SLinus Torvalds machines, but will use only one CPU of a multiprocessor machine. If 8951da177e4SLinus Torvalds you say Y here, the kernel will run on many, but not all, single 8961da177e4SLinus Torvalds processor machines. On a single processor machine, the kernel will 8971da177e4SLinus Torvalds run faster if you say N here. 8981da177e4SLinus Torvalds 89903502faaSAdrian Bunk See also <file:Documentation/i386/IO-APIC.txt>, 9001da177e4SLinus Torvalds <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 9011da177e4SLinus Torvalds <http://www.linuxdoc.org/docs.html#howto>. 9021da177e4SLinus Torvalds 9031da177e4SLinus Torvalds If you don't know what to do here, say N. 9041da177e4SLinus Torvalds 905a8cbcd92SRussell Kingconfig HAVE_ARM_SCU 906a8cbcd92SRussell King bool 907a8cbcd92SRussell King depends on SMP 908a8cbcd92SRussell King help 909a8cbcd92SRussell King This option enables support for the ARM system coherency unit 910a8cbcd92SRussell King 911f32f4ce2SRussell Kingconfig HAVE_ARM_TWD 912f32f4ce2SRussell King bool 913f32f4ce2SRussell King depends on SMP 914f32f4ce2SRussell King help 915f32f4ce2SRussell King This options enables support for the ARM timer and watchdog unit 916f32f4ce2SRussell King 9178d5796d2SLennert Buytenhekchoice 9188d5796d2SLennert Buytenhek prompt "Memory split" 9198d5796d2SLennert Buytenhek default VMSPLIT_3G 9208d5796d2SLennert Buytenhek help 9218d5796d2SLennert Buytenhek Select the desired split between kernel and user memory. 9228d5796d2SLennert Buytenhek 9238d5796d2SLennert Buytenhek If you are not absolutely sure what you are doing, leave this 9248d5796d2SLennert Buytenhek option alone! 9258d5796d2SLennert Buytenhek 9268d5796d2SLennert Buytenhek config VMSPLIT_3G 9278d5796d2SLennert Buytenhek bool "3G/1G user/kernel split" 9288d5796d2SLennert Buytenhek config VMSPLIT_2G 9298d5796d2SLennert Buytenhek bool "2G/2G user/kernel split" 9308d5796d2SLennert Buytenhek config VMSPLIT_1G 9318d5796d2SLennert Buytenhek bool "1G/3G user/kernel split" 9328d5796d2SLennert Buytenhekendchoice 9338d5796d2SLennert Buytenhek 9348d5796d2SLennert Buytenhekconfig PAGE_OFFSET 9358d5796d2SLennert Buytenhek hex 9368d5796d2SLennert Buytenhek default 0x40000000 if VMSPLIT_1G 9378d5796d2SLennert Buytenhek default 0x80000000 if VMSPLIT_2G 9388d5796d2SLennert Buytenhek default 0xC0000000 9398d5796d2SLennert Buytenhek 9401da177e4SLinus Torvaldsconfig NR_CPUS 9411da177e4SLinus Torvalds int "Maximum number of CPUs (2-32)" 9421da177e4SLinus Torvalds range 2 32 9431da177e4SLinus Torvalds depends on SMP 9441da177e4SLinus Torvalds default "4" 9451da177e4SLinus Torvalds 946a054a811SRussell Kingconfig HOTPLUG_CPU 947a054a811SRussell King bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 948a054a811SRussell King depends on SMP && HOTPLUG && EXPERIMENTAL 949a054a811SRussell King help 950a054a811SRussell King Say Y here to experiment with turning CPUs off and on. CPUs 951a054a811SRussell King can be controlled through /sys/devices/system/cpu. 952a054a811SRussell King 95337ee16aeSRussell Kingconfig LOCAL_TIMERS 95437ee16aeSRussell King bool "Use local timer interrupts" 95542578c82SRussell King depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \ 95642578c82SRussell King REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4) 95737ee16aeSRussell King default y 958934f8be7SSantosh Shilimkar select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4) 95937ee16aeSRussell King help 96037ee16aeSRussell King Enable support for local timers on SMP platforms, rather then the 96137ee16aeSRussell King legacy IPI broadcast method. Local timers allows the system 96237ee16aeSRussell King accounting to be spread across the timer interval, preventing a 96337ee16aeSRussell King "thundering herd" at every timer tick. 96437ee16aeSRussell King 9651da177e4SLinus Torvaldsconfig PREEMPT 9661da177e4SLinus Torvalds bool "Preemptible Kernel (EXPERIMENTAL)" 9671da177e4SLinus Torvalds depends on EXPERIMENTAL 9681da177e4SLinus Torvalds help 9691da177e4SLinus Torvalds This option reduces the latency of the kernel when reacting to 9701da177e4SLinus Torvalds real-time or interactive events by allowing a low priority process to 9711da177e4SLinus Torvalds be preempted even if it is in kernel mode executing a system call. 9721da177e4SLinus Torvalds This allows applications to run more reliably even when the system is 9731da177e4SLinus Torvalds under load. 9741da177e4SLinus Torvalds 9751da177e4SLinus Torvalds Say Y here if you are building a kernel for a desktop, embedded 9761da177e4SLinus Torvalds or real-time system. Say N if you are unsure. 9771da177e4SLinus Torvalds 978f8065813SRussell Kingconfig HZ 979f8065813SRussell King int 980f8065813SRussell King default 128 if ARCH_L7200 981f8065813SRussell King default 200 if ARCH_EBSA110 || ARCH_S3C2410 982bfe65704SRussell King default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER 9835248c657SDavid Brownell default AT91_TIMER_HZ if ARCH_AT91 984f8065813SRussell King default 100 985f8065813SRussell King 986*0becb088SCatalin Marinasconfig ARM_ASM_UNIFIED 987*0becb088SCatalin Marinas bool 988*0becb088SCatalin Marinas 989704bdda0SNicolas Pitreconfig AEABI 990704bdda0SNicolas Pitre bool "Use the ARM EABI to compile the kernel" 991704bdda0SNicolas Pitre help 992704bdda0SNicolas Pitre This option allows for the kernel to be compiled using the latest 993704bdda0SNicolas Pitre ARM ABI (aka EABI). This is only useful if you are using a user 994704bdda0SNicolas Pitre space environment that is also compiled with EABI. 995704bdda0SNicolas Pitre 996704bdda0SNicolas Pitre Since there are major incompatibilities between the legacy ABI and 997704bdda0SNicolas Pitre EABI, especially with regard to structure member alignment, this 998704bdda0SNicolas Pitre option also changes the kernel syscall calling convention to 999704bdda0SNicolas Pitre disambiguate both ABIs and allow for backward compatibility support 1000704bdda0SNicolas Pitre (selected with CONFIG_OABI_COMPAT). 1001704bdda0SNicolas Pitre 1002704bdda0SNicolas Pitre To use this you need GCC version 4.0.0 or later. 1003704bdda0SNicolas Pitre 10046c90c872SNicolas Pitreconfig OABI_COMPAT 1005a73a3ff1SRussell King bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)" 100661c484d4SNicolas Pitre depends on AEABI && EXPERIMENTAL 10076c90c872SNicolas Pitre default y 10086c90c872SNicolas Pitre help 10096c90c872SNicolas Pitre This option preserves the old syscall interface along with the 10106c90c872SNicolas Pitre new (ARM EABI) one. It also provides a compatibility layer to 10116c90c872SNicolas Pitre intercept syscalls that have structure arguments which layout 10126c90c872SNicolas Pitre in memory differs between the legacy ABI and the new ARM EABI 10136c90c872SNicolas Pitre (only for non "thumb" binaries). This option adds a tiny 10146c90c872SNicolas Pitre overhead to all syscalls and produces a slightly larger kernel. 10156c90c872SNicolas Pitre If you know you'll be using only pure EABI user space then you 10166c90c872SNicolas Pitre can say N here. If this option is not selected and you attempt 10176c90c872SNicolas Pitre to execute a legacy ABI binary then the result will be 10186c90c872SNicolas Pitre UNPREDICTABLE (in fact it can be predicted that it won't work 10196c90c872SNicolas Pitre at all). If in doubt say Y. 10206c90c872SNicolas Pitre 1021eb33575cSMel Gormanconfig ARCH_HAS_HOLES_MEMORYMODEL 1022e80d6a24SMel Gorman bool 1023e80d6a24SMel Gorman 102407a2f737SRussell King# Discontigmem is deprecated 10253f22ab27SDave Hansenconfig ARCH_DISCONTIGMEM_ENABLE 10261da177e4SLinus Torvalds bool 10271da177e4SLinus Torvalds 102805944d74SRussell Kingconfig ARCH_SPARSEMEM_ENABLE 102905944d74SRussell King bool 103005944d74SRussell King 103107a2f737SRussell Kingconfig ARCH_SPARSEMEM_DEFAULT 103207a2f737SRussell King def_bool ARCH_SPARSEMEM_ENABLE 103307a2f737SRussell King 103405944d74SRussell Kingconfig ARCH_SELECT_MEMORY_MODEL 103507a2f737SRussell King def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE 103605944d74SRussell King 1037c80d79d7SYasunori Gotoconfig NODES_SHIFT 1038c80d79d7SYasunori Goto int 1039c80d79d7SYasunori Goto default "4" if ARCH_LH7A40X 1040c80d79d7SYasunori Goto default "2" 1041c80d79d7SYasunori Goto depends on NEED_MULTIPLE_NODES 1042c80d79d7SYasunori Goto 1043053a96caSNicolas Pitreconfig HIGHMEM 1044053a96caSNicolas Pitre bool "High Memory Support (EXPERIMENTAL)" 1045053a96caSNicolas Pitre depends on MMU && EXPERIMENTAL 1046053a96caSNicolas Pitre help 1047053a96caSNicolas Pitre The address space of ARM processors is only 4 Gigabytes large 1048053a96caSNicolas Pitre and it has to accommodate user address space, kernel address 1049053a96caSNicolas Pitre space as well as some memory mapped IO. That means that, if you 1050053a96caSNicolas Pitre have a large amount of physical memory and/or IO, not all of the 1051053a96caSNicolas Pitre memory can be "permanently mapped" by the kernel. The physical 1052053a96caSNicolas Pitre memory that is not permanently mapped is called "high memory". 1053053a96caSNicolas Pitre 1054053a96caSNicolas Pitre Depending on the selected kernel/user memory split, minimum 1055053a96caSNicolas Pitre vmalloc space and actual amount of RAM, you may not need this 1056053a96caSNicolas Pitre option which should result in a slightly faster kernel. 1057053a96caSNicolas Pitre 1058053a96caSNicolas Pitre If unsure, say n. 1059053a96caSNicolas Pitre 10603f22ab27SDave Hansensource "mm/Kconfig" 10613f22ab27SDave Hansen 10621da177e4SLinus Torvaldsconfig LEDS 10631da177e4SLinus Torvalds bool "Timer and CPU usage LEDs" 1064e055d5bfSAdrian Bunk depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 10658c8fdbc9SSascha Hauer ARCH_EBSA285 || ARCH_INTEGRATOR || \ 10661da177e4SLinus Torvalds ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 10671da177e4SLinus Torvalds ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 106873a59c1cSSAN People ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ 106925329671SJürgen Schindele ARCH_AT91 || ARCH_DAVINCI || \ 1070ff3042fbSColin Tuckley ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW 10711da177e4SLinus Torvalds help 10721da177e4SLinus Torvalds If you say Y here, the LEDs on your machine will be used 10731da177e4SLinus Torvalds to provide useful information about your current system status. 10741da177e4SLinus Torvalds 10751da177e4SLinus Torvalds If you are compiling a kernel for a NetWinder or EBSA-285, you will 10761da177e4SLinus Torvalds be able to select which LEDs are active using the options below. If 10771da177e4SLinus Torvalds you are compiling a kernel for the EBSA-110 or the LART however, the 10781da177e4SLinus Torvalds red LED will simply flash regularly to indicate that the system is 10791da177e4SLinus Torvalds still functional. It is safe to say Y here if you have a CATS 10801da177e4SLinus Torvalds system, but the driver will do nothing. 10811da177e4SLinus Torvalds 10821da177e4SLinus Torvaldsconfig LEDS_TIMER 10831da177e4SLinus Torvalds bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ 1084eebdf7d7SDavid Brownell OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1085eebdf7d7SDavid Brownell || MACH_OMAP_PERSEUS2 10861da177e4SLinus Torvalds depends on LEDS 10870567a0c0SKevin Hilman depends on !GENERIC_CLOCKEVENTS 10881da177e4SLinus Torvalds default y if ARCH_EBSA110 10891da177e4SLinus Torvalds help 10901da177e4SLinus Torvalds If you say Y here, one of the system LEDs (the green one on the 10911da177e4SLinus Torvalds NetWinder, the amber one on the EBSA285, or the red one on the LART) 10921da177e4SLinus Torvalds will flash regularly to indicate that the system is still 10931da177e4SLinus Torvalds operational. This is mainly useful to kernel hackers who are 10941da177e4SLinus Torvalds debugging unstable kernels. 10951da177e4SLinus Torvalds 10961da177e4SLinus Torvalds The LART uses the same LED for both Timer LED and CPU usage LED 10971da177e4SLinus Torvalds functions. You may choose to use both, but the Timer LED function 10981da177e4SLinus Torvalds will overrule the CPU usage LED. 10991da177e4SLinus Torvalds 11001da177e4SLinus Torvaldsconfig LEDS_CPU 11011da177e4SLinus Torvalds bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ 1102eebdf7d7SDavid Brownell !ARCH_OMAP) \ 1103eebdf7d7SDavid Brownell || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1104eebdf7d7SDavid Brownell || MACH_OMAP_PERSEUS2 11051da177e4SLinus Torvalds depends on LEDS 11061da177e4SLinus Torvalds help 11071da177e4SLinus Torvalds If you say Y here, the red LED will be used to give a good real 11081da177e4SLinus Torvalds time indication of CPU usage, by lighting whenever the idle task 11091da177e4SLinus Torvalds is not currently executing. 11101da177e4SLinus Torvalds 11111da177e4SLinus Torvalds The LART uses the same LED for both Timer LED and CPU usage LED 11121da177e4SLinus Torvalds functions. You may choose to use both, but the Timer LED function 11131da177e4SLinus Torvalds will overrule the CPU usage LED. 11141da177e4SLinus Torvalds 11151da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP 11161da177e4SLinus Torvalds bool 1117f12d0d7cSHyok S. Choi depends on CPU_CP15_MMU 11181da177e4SLinus Torvalds default y if !ARCH_EBSA110 11191da177e4SLinus Torvalds help 11201da177e4SLinus Torvalds ARM processors cannot fetch/store information which is not 11211da177e4SLinus Torvalds naturally aligned on the bus, i.e., a 4 byte fetch must start at an 11221da177e4SLinus Torvalds address divisible by 4. On 32-bit ARM processors, these non-aligned 11231da177e4SLinus Torvalds fetch/store instructions will be emulated in software if you say 11241da177e4SLinus Torvalds here, which has a severe performance impact. This is necessary for 11251da177e4SLinus Torvalds correct operation of some network protocols. With an IP-only 11261da177e4SLinus Torvalds configuration it is safe to say N, otherwise say Y. 11271da177e4SLinus Torvalds 112839ec58f3SLennert Buytenhekconfig UACCESS_WITH_MEMCPY 112939ec58f3SLennert Buytenhek bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)" 113039ec58f3SLennert Buytenhek depends on MMU && EXPERIMENTAL 113139ec58f3SLennert Buytenhek default y if CPU_FEROCEON 113239ec58f3SLennert Buytenhek help 113339ec58f3SLennert Buytenhek Implement faster copy_to_user and clear_user methods for CPU 113439ec58f3SLennert Buytenhek cores where a 8-word STM instruction give significantly higher 113539ec58f3SLennert Buytenhek memory write throughput than a sequence of individual 32bit stores. 113639ec58f3SLennert Buytenhek 113739ec58f3SLennert Buytenhek A possible side effect is a slight increase in scheduling latency 113839ec58f3SLennert Buytenhek between threads sharing the same address space if they invoke 113939ec58f3SLennert Buytenhek such copy operations with large buffers. 114039ec58f3SLennert Buytenhek 114139ec58f3SLennert Buytenhek However, if the CPU data cache is using a write-allocate mode, 114239ec58f3SLennert Buytenhek this option is unlikely to provide any performance gain. 114339ec58f3SLennert Buytenhek 11441da177e4SLinus Torvaldsendmenu 11451da177e4SLinus Torvalds 11461da177e4SLinus Torvaldsmenu "Boot options" 11471da177e4SLinus Torvalds 11481da177e4SLinus Torvalds# Compressed boot loader in ROM. Yes, we really want to ask about 11491da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files. 11501da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT 11511da177e4SLinus Torvalds hex "Compressed ROM boot loader base address" 11521da177e4SLinus Torvalds default "0" 11531da177e4SLinus Torvalds help 11541da177e4SLinus Torvalds The physical address at which the ROM-able zImage is to be 11551da177e4SLinus Torvalds placed in the target. Platforms which normally make use of 11561da177e4SLinus Torvalds ROM-able zImage formats normally set this to a suitable 11571da177e4SLinus Torvalds value in their defconfig file. 11581da177e4SLinus Torvalds 11591da177e4SLinus Torvalds If ZBOOT_ROM is not enabled, this has no effect. 11601da177e4SLinus Torvalds 11611da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS 11621da177e4SLinus Torvalds hex "Compressed ROM boot loader BSS address" 11631da177e4SLinus Torvalds default "0" 11641da177e4SLinus Torvalds help 1165f8c440b2SDan Fandrich The base address of an area of read/write memory in the target 1166f8c440b2SDan Fandrich for the ROM-able zImage which must be available while the 1167f8c440b2SDan Fandrich decompressor is running. It must be large enough to hold the 1168f8c440b2SDan Fandrich entire decompressed kernel plus an additional 128 KiB. 1169f8c440b2SDan Fandrich Platforms which normally make use of ROM-able zImage formats 1170f8c440b2SDan Fandrich normally set this to a suitable value in their defconfig file. 11711da177e4SLinus Torvalds 11721da177e4SLinus Torvalds If ZBOOT_ROM is not enabled, this has no effect. 11731da177e4SLinus Torvalds 11741da177e4SLinus Torvaldsconfig ZBOOT_ROM 11751da177e4SLinus Torvalds bool "Compressed boot loader in ROM/flash" 11761da177e4SLinus Torvalds depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS 11771da177e4SLinus Torvalds help 11781da177e4SLinus Torvalds Say Y here if you intend to execute your compressed kernel image 11791da177e4SLinus Torvalds (zImage) directly from ROM or flash. If unsure, say N. 11801da177e4SLinus Torvalds 11811da177e4SLinus Torvaldsconfig CMDLINE 11821da177e4SLinus Torvalds string "Default kernel command string" 11831da177e4SLinus Torvalds default "" 11841da177e4SLinus Torvalds help 11851da177e4SLinus Torvalds On some architectures (EBSA110 and CATS), there is currently no way 11861da177e4SLinus Torvalds for the boot loader to pass arguments to the kernel. For these 11871da177e4SLinus Torvalds architectures, you should supply some command-line options at build 11881da177e4SLinus Torvalds time by entering them here. As a minimum, you should specify the 11891da177e4SLinus Torvalds memory size and the root device (e.g., mem=64M root=/dev/nfs). 11901da177e4SLinus Torvalds 11911da177e4SLinus Torvaldsconfig XIP_KERNEL 11921da177e4SLinus Torvalds bool "Kernel Execute-In-Place from ROM" 11931da177e4SLinus Torvalds depends on !ZBOOT_ROM 11941da177e4SLinus Torvalds help 11951da177e4SLinus Torvalds Execute-In-Place allows the kernel to run from non-volatile storage 11961da177e4SLinus Torvalds directly addressable by the CPU, such as NOR flash. This saves RAM 11971da177e4SLinus Torvalds space since the text section of the kernel is not loaded from flash 11981da177e4SLinus Torvalds to RAM. Read-write sections, such as the data section and stack, 11991da177e4SLinus Torvalds are still copied to RAM. The XIP kernel is not compressed since 12001da177e4SLinus Torvalds it has to run directly from flash, so it will take more space to 12011da177e4SLinus Torvalds store it. The flash address used to link the kernel object files, 12021da177e4SLinus Torvalds and for storing it, is configuration dependent. Therefore, if you 12031da177e4SLinus Torvalds say Y here, you must know the proper physical address where to 12041da177e4SLinus Torvalds store the kernel image depending on your own flash memory usage. 12051da177e4SLinus Torvalds 12061da177e4SLinus Torvalds Also note that the make target becomes "make xipImage" rather than 12071da177e4SLinus Torvalds "make zImage" or "make Image". The final kernel binary to put in 12081da177e4SLinus Torvalds ROM memory will be arch/arm/boot/xipImage. 12091da177e4SLinus Torvalds 12101da177e4SLinus Torvalds If unsure, say N. 12111da177e4SLinus Torvalds 12121da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR 12131da177e4SLinus Torvalds hex "XIP Kernel Physical Location" 12141da177e4SLinus Torvalds depends on XIP_KERNEL 12151da177e4SLinus Torvalds default "0x00080000" 12161da177e4SLinus Torvalds help 12171da177e4SLinus Torvalds This is the physical address in your flash memory the kernel will 12181da177e4SLinus Torvalds be linked for and stored to. This address is dependent on your 12191da177e4SLinus Torvalds own flash usage. 12201da177e4SLinus Torvalds 1221c587e4a6SRichard Purdieconfig KEXEC 1222c587e4a6SRichard Purdie bool "Kexec system call (EXPERIMENTAL)" 1223c587e4a6SRichard Purdie depends on EXPERIMENTAL 1224c587e4a6SRichard Purdie help 1225c587e4a6SRichard Purdie kexec is a system call that implements the ability to shutdown your 1226c587e4a6SRichard Purdie current kernel, and to start another kernel. It is like a reboot 122701dd2fbfSMatt LaPlante but it is independent of the system firmware. And like a reboot 1228c587e4a6SRichard Purdie you can start any kernel with it, not just Linux. 1229c587e4a6SRichard Purdie 1230c587e4a6SRichard Purdie It is an ongoing process to be certain the hardware in a machine 1231c587e4a6SRichard Purdie is properly shutdown, so do not be surprised if this code does not 1232c587e4a6SRichard Purdie initially work for you. It may help to enable device hotplugging 1233c587e4a6SRichard Purdie support. 1234c587e4a6SRichard Purdie 12354cd9d6f7SRichard Purdieconfig ATAGS_PROC 12364cd9d6f7SRichard Purdie bool "Export atags in procfs" 1237b98d7291SUli Luckas depends on KEXEC 1238b98d7291SUli Luckas default y 12394cd9d6f7SRichard Purdie help 12404cd9d6f7SRichard Purdie Should the atags used to boot the kernel be exported in an "atags" 12414cd9d6f7SRichard Purdie file in procfs. Useful with kexec. 12424cd9d6f7SRichard Purdie 12431da177e4SLinus Torvaldsendmenu 12441da177e4SLinus Torvalds 1245ac9d7efcSRussell Kingmenu "CPU Power Management" 12461da177e4SLinus Torvalds 1247b3748dddSMark Brownif (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_PXA || ARCH_S3C64XX) 12481da177e4SLinus Torvalds 12491da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig" 12501da177e4SLinus Torvalds 12511da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100 12521da177e4SLinus Torvalds bool 12537bc35b56SDmitry Artamonow depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT) 12541da177e4SLinus Torvalds default y 12551da177e4SLinus Torvalds 12561da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110 12571da177e4SLinus Torvalds bool 12581da177e4SLinus Torvalds depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3) 12591da177e4SLinus Torvalds default y 12601da177e4SLinus Torvalds 12611da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR 12621da177e4SLinus Torvalds tristate "CPUfreq driver for ARM Integrator CPUs" 12631da177e4SLinus Torvalds depends on ARCH_INTEGRATOR && CPU_FREQ 12641da177e4SLinus Torvalds default y 12651da177e4SLinus Torvalds help 12661da177e4SLinus Torvalds This enables the CPUfreq driver for ARM Integrator CPUs. 12671da177e4SLinus Torvalds 12681da177e4SLinus Torvalds For details, take a look at <file:Documentation/cpu-freq>. 12691da177e4SLinus Torvalds 12701da177e4SLinus Torvalds If in doubt, say Y. 12711da177e4SLinus Torvalds 12729e2697ffSRussell Kingconfig CPU_FREQ_PXA 12739e2697ffSRussell King bool 12749e2697ffSRussell King depends on CPU_FREQ && ARCH_PXA && PXA25x 12759e2697ffSRussell King default y 12769e2697ffSRussell King select CPU_FREQ_DEFAULT_GOV_USERSPACE 12779e2697ffSRussell King 1278b3748dddSMark Brownconfig CPU_FREQ_S3C64XX 1279b3748dddSMark Brown bool "CPUfreq support for Samsung S3C64XX CPUs" 1280b3748dddSMark Brown depends on CPU_FREQ && CPU_S3C6410 1281b3748dddSMark Brown 12821da177e4SLinus Torvaldsendif 12831da177e4SLinus Torvalds 1284ac9d7efcSRussell Kingsource "drivers/cpuidle/Kconfig" 1285ac9d7efcSRussell King 1286ac9d7efcSRussell Kingendmenu 1287ac9d7efcSRussell King 12881da177e4SLinus Torvaldsmenu "Floating point emulation" 12891da177e4SLinus Torvalds 12901da177e4SLinus Torvaldscomment "At least one emulation must be selected" 12911da177e4SLinus Torvalds 12921da177e4SLinus Torvaldsconfig FPE_NWFPE 12931da177e4SLinus Torvalds bool "NWFPE math emulation" 12948993a44cSNicolas Pitre depends on !AEABI || OABI_COMPAT 12951da177e4SLinus Torvalds ---help--- 12961da177e4SLinus Torvalds Say Y to include the NWFPE floating point emulator in the kernel. 12971da177e4SLinus Torvalds This is necessary to run most binaries. Linux does not currently 12981da177e4SLinus Torvalds support floating point hardware so you need to say Y here even if 12991da177e4SLinus Torvalds your machine has an FPA or floating point co-processor podule. 13001da177e4SLinus Torvalds 13011da177e4SLinus Torvalds You may say N here if you are going to load the Acorn FPEmulator 13021da177e4SLinus Torvalds early in the bootup. 13031da177e4SLinus Torvalds 13041da177e4SLinus Torvaldsconfig FPE_NWFPE_XP 13051da177e4SLinus Torvalds bool "Support extended precision" 1306bedf142bSLennert Buytenhek depends on FPE_NWFPE 13071da177e4SLinus Torvalds help 13081da177e4SLinus Torvalds Say Y to include 80-bit support in the kernel floating-point 13091da177e4SLinus Torvalds emulator. Otherwise, only 32 and 64-bit support is compiled in. 13101da177e4SLinus Torvalds Note that gcc does not generate 80-bit operations by default, 13111da177e4SLinus Torvalds so in most cases this option only enlarges the size of the 13121da177e4SLinus Torvalds floating point emulator without any good reason. 13131da177e4SLinus Torvalds 13141da177e4SLinus Torvalds You almost surely want to say N here. 13151da177e4SLinus Torvalds 13161da177e4SLinus Torvaldsconfig FPE_FASTFPE 13171da177e4SLinus Torvalds bool "FastFPE math emulation (EXPERIMENTAL)" 13188993a44cSNicolas Pitre depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL 13191da177e4SLinus Torvalds ---help--- 13201da177e4SLinus Torvalds Say Y here to include the FAST floating point emulator in the kernel. 13211da177e4SLinus Torvalds This is an experimental much faster emulator which now also has full 13221da177e4SLinus Torvalds precision for the mantissa. It does not support any exceptions. 13231da177e4SLinus Torvalds It is very simple, and approximately 3-6 times faster than NWFPE. 13241da177e4SLinus Torvalds 13251da177e4SLinus Torvalds It should be sufficient for most programs. It may be not suitable 13261da177e4SLinus Torvalds for scientific calculations, but you have to check this for yourself. 13271da177e4SLinus Torvalds If you do not feel you need a faster FP emulation you should better 13281da177e4SLinus Torvalds choose NWFPE. 13291da177e4SLinus Torvalds 13301da177e4SLinus Torvaldsconfig VFP 13311da177e4SLinus Torvalds bool "VFP-format floating point maths" 1332c00d4ffdSRussell King depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON 13331da177e4SLinus Torvalds help 13341da177e4SLinus Torvalds Say Y to include VFP support code in the kernel. This is needed 13351da177e4SLinus Torvalds if your hardware includes a VFP unit. 13361da177e4SLinus Torvalds 13371da177e4SLinus Torvalds Please see <file:Documentation/arm/VFP/release-notes.txt> for 13381da177e4SLinus Torvalds release notes and additional status information. 13391da177e4SLinus Torvalds 13401da177e4SLinus Torvalds Say N if your target does not have VFP hardware. 13411da177e4SLinus Torvalds 134225ebee02SCatalin Marinasconfig VFPv3 134325ebee02SCatalin Marinas bool 134425ebee02SCatalin Marinas depends on VFP 134525ebee02SCatalin Marinas default y if CPU_V7 134625ebee02SCatalin Marinas 1347b5872db4SCatalin Marinasconfig NEON 1348b5872db4SCatalin Marinas bool "Advanced SIMD (NEON) Extension support" 1349b5872db4SCatalin Marinas depends on VFPv3 && CPU_V7 1350b5872db4SCatalin Marinas help 1351b5872db4SCatalin Marinas Say Y to include support code for NEON, the ARMv7 Advanced SIMD 1352b5872db4SCatalin Marinas Extension. 1353b5872db4SCatalin Marinas 13541da177e4SLinus Torvaldsendmenu 13551da177e4SLinus Torvalds 13561da177e4SLinus Torvaldsmenu "Userspace binary formats" 13571da177e4SLinus Torvalds 13581da177e4SLinus Torvaldssource "fs/Kconfig.binfmt" 13591da177e4SLinus Torvalds 13601da177e4SLinus Torvaldsconfig ARTHUR 13611da177e4SLinus Torvalds tristate "RISC OS personality" 1362704bdda0SNicolas Pitre depends on !AEABI 13631da177e4SLinus Torvalds help 13641da177e4SLinus Torvalds Say Y here to include the kernel code necessary if you want to run 13651da177e4SLinus Torvalds Acorn RISC OS/Arthur binaries under Linux. This code is still very 13661da177e4SLinus Torvalds experimental; if this sounds frightening, say N and sleep in peace. 13671da177e4SLinus Torvalds You can also say M here to compile this support as a module (which 13681da177e4SLinus Torvalds will be called arthur). 13691da177e4SLinus Torvalds 13701da177e4SLinus Torvaldsendmenu 13711da177e4SLinus Torvalds 13721da177e4SLinus Torvaldsmenu "Power management options" 13731da177e4SLinus Torvalds 1374eceab4acSRussell Kingsource "kernel/power/Kconfig" 13751da177e4SLinus Torvalds 1376f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE 1377f4cb5700SJohannes Berg def_bool y 1378f4cb5700SJohannes Berg 13791da177e4SLinus Torvaldsendmenu 13801da177e4SLinus Torvalds 1381d5950b43SSam Ravnborgsource "net/Kconfig" 1382d5950b43SSam Ravnborg 13831da177e4SLinus Torvaldsmenu "Device Drivers" 13841da177e4SLinus Torvalds 13851da177e4SLinus Torvaldssource "drivers/base/Kconfig" 13861da177e4SLinus Torvalds 1387c35bf4a5SPavel Macheksource "drivers/connector/Kconfig" 1388c35bf4a5SPavel Machek 1389f12d0d7cSHyok S. Choiif ALIGNMENT_TRAP || !CPU_CP15_MMU 13901da177e4SLinus Torvaldssource "drivers/mtd/Kconfig" 13911da177e4SLinus Torvaldsendif 13921da177e4SLinus Torvalds 13931da177e4SLinus Torvaldssource "drivers/parport/Kconfig" 13941da177e4SLinus Torvalds 13951da177e4SLinus Torvaldssource "drivers/pnp/Kconfig" 13961da177e4SLinus Torvalds 13971da177e4SLinus Torvaldssource "drivers/block/Kconfig" 13981da177e4SLinus Torvalds 139958273e55SRussell King# misc before ide - BLK_DEV_SGIIOC4 depends on SGI_IOC4 140058273e55SRussell King 140158273e55SRussell Kingsource "drivers/misc/Kconfig" 140258273e55SRussell King 14031da177e4SLinus Torvaldssource "drivers/ide/Kconfig" 14041da177e4SLinus Torvalds 14051da177e4SLinus Torvaldssource "drivers/scsi/Kconfig" 14061da177e4SLinus Torvalds 1407eb370f0bSMartin Michlmayrsource "drivers/ata/Kconfig" 1408eb370f0bSMartin Michlmayr 14091da177e4SLinus Torvaldssource "drivers/md/Kconfig" 14101da177e4SLinus Torvalds 14111da177e4SLinus Torvaldssource "drivers/message/fusion/Kconfig" 14121da177e4SLinus Torvalds 14131da177e4SLinus Torvaldssource "drivers/ieee1394/Kconfig" 14141da177e4SLinus Torvalds 14151da177e4SLinus Torvaldssource "drivers/message/i2o/Kconfig" 14161da177e4SLinus Torvalds 1417d5950b43SSam Ravnborgsource "drivers/net/Kconfig" 14181da177e4SLinus Torvalds 14191da177e4SLinus Torvaldssource "drivers/isdn/Kconfig" 14201da177e4SLinus Torvalds 14211da177e4SLinus Torvalds# input before char - char/joystick depends on it. As does USB. 14221da177e4SLinus Torvalds 14231da177e4SLinus Torvaldssource "drivers/input/Kconfig" 14241da177e4SLinus Torvalds 14251da177e4SLinus Torvaldssource "drivers/char/Kconfig" 14261da177e4SLinus Torvalds 14271da177e4SLinus Torvaldssource "drivers/i2c/Kconfig" 14281da177e4SLinus Torvalds 14298ae12a0dSDavid Brownellsource "drivers/spi/Kconfig" 14308ae12a0dSDavid Brownell 1431a9c5fff5SDavid Brownellsource "drivers/gpio/Kconfig" 1432a9c5fff5SDavid Brownell 143304916c0eSAlessandro Zummosource "drivers/w1/Kconfig" 143404916c0eSAlessandro Zummo 143558273e55SRussell Kingsource "drivers/power/Kconfig" 143658273e55SRussell King 1437ad2f931dSJean Delvaresource "drivers/hwmon/Kconfig" 1438ad2f931dSJean Delvare 1439ac9d7efcSRussell Kingsource "drivers/thermal/Kconfig" 1440ac9d7efcSRussell King 144170dfa3f8SRussell Kingsource "drivers/watchdog/Kconfig" 144270dfa3f8SRussell King 144358273e55SRussell Kingsource "drivers/ssb/Kconfig" 144458273e55SRussell King 14451da177e4SLinus Torvalds#source "drivers/l3/Kconfig" 14461da177e4SLinus Torvalds 1447a4e137abSRussell Kingsource "drivers/mfd/Kconfig" 1448a4e137abSRussell King 14491da177e4SLinus Torvaldssource "drivers/media/Kconfig" 14501da177e4SLinus Torvalds 14511da177e4SLinus Torvaldssource "drivers/video/Kconfig" 14521da177e4SLinus Torvalds 14531da177e4SLinus Torvaldssource "sound/Kconfig" 14541da177e4SLinus Torvalds 1455c2dade51SSascha Hauersource "drivers/hid/Kconfig" 1456c2dade51SSascha Hauer 14571da177e4SLinus Torvaldssource "drivers/usb/Kconfig" 14581da177e4SLinus Torvalds 14592f86c3e6SGreg Kroah-Hartmansource "drivers/uwb/Kconfig" 14602f86c3e6SGreg Kroah-Hartman 14611da177e4SLinus Torvaldssource "drivers/mmc/Kconfig" 14621da177e4SLinus Torvalds 1463ac9d7efcSRussell Kingsource "drivers/memstick/Kconfig" 1464ac9d7efcSRussell King 1465ac9d7efcSRussell Kingsource "drivers/accessibility/Kconfig" 1466ac9d7efcSRussell King 146758273e55SRussell Kingsource "drivers/leds/Kconfig" 146858273e55SRussell King 146912b824fbSAlessandro Zummosource "drivers/rtc/Kconfig" 147012b824fbSAlessandro Zummo 14715816815fSDan Williamssource "drivers/dma/Kconfig" 14725816815fSDan Williams 1473abf07b19SDan Williamssource "drivers/dca/Kconfig" 1474abf07b19SDan Williams 1475ac9d7efcSRussell Kingsource "drivers/auxdisplay/Kconfig" 1476ac9d7efcSRussell King 1477ba7e4763SLiam Girdwoodsource "drivers/regulator/Kconfig" 1478ba7e4763SLiam Girdwood 14792dc034a8SHans-Jürgen Kochsource "drivers/uio/Kconfig" 14802dc034a8SHans-Jürgen Koch 14816e38a2baSF. Duncan M. Haldanesource "drivers/staging/Kconfig" 14826e38a2baSF. Duncan M. Haldane 14831da177e4SLinus Torvaldsendmenu 14841da177e4SLinus Torvalds 14851da177e4SLinus Torvaldssource "fs/Kconfig" 14861da177e4SLinus Torvalds 14871da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug" 14881da177e4SLinus Torvalds 14891da177e4SLinus Torvaldssource "security/Kconfig" 14901da177e4SLinus Torvalds 14911da177e4SLinus Torvaldssource "crypto/Kconfig" 14921da177e4SLinus Torvalds 14931da177e4SLinus Torvaldssource "lib/Kconfig" 1494