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 496d2c24195Swanzongshun select HAVE_CLK 4970e4a34bbSwanzongshun select COMMON_CLKDEV 49858b5369eSwanzongshun select GENERIC_TIME 49958b5369eSwanzongshun select GENERIC_CLOCKEVENTS 500777f9bebSLennert Buytenhek help 501*a8bc4eadSwanzongshun Support for Nuvoton (Winbond logic dept.) ARM9 processor, 502*a8bc4eadSwanzongshun At present, the w90x900 has been renamed nuc900, regarding 503*a8bc4eadSwanzongshun the ARM series product line, you can login the following 504*a8bc4eadSwanzongshun link address to know more. 505*a8bc4eadSwanzongshun 506*a8bc4eadSwanzongshun <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/ 507*a8bc4eadSwanzongshun ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller> 508585cf175STzachi Perelstein 5094af6fee1SDeepak Saxenaconfig ARCH_PNX4008 5104af6fee1SDeepak Saxena bool "Philips Nexperia PNX4008 Mobile" 511c750815eSRussell King select CPU_ARM926T 5129483a578SDavid Brownell select HAVE_CLK 5134af6fee1SDeepak Saxena help 5144af6fee1SDeepak Saxena This enables support for Philips PNX4008 mobile platform. 5154af6fee1SDeepak Saxena 5161da177e4SLinus Torvaldsconfig ARCH_PXA 5172c8086a5Seric miao bool "PXA2xx/PXA3xx-based" 518a4f7e763SRussell King depends on MMU 519034d2f5aSAl Viro select ARCH_MTD_XIP 5200a938b97SDavid Brownell select GENERIC_GPIO 5219483a578SDavid Brownell select HAVE_CLK 5228c3abc7dSRussell King select COMMON_CLKDEV 5237444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 52445cf5eefSNicolas Pitre select GENERIC_TIME 525981d0f39SEric Miao select GENERIC_CLOCKEVENTS 526a88264c2SRussell King select TICK_ONESHOT 527bd5ce433SEric Miao select PLAT_PXA 528f999b8bdSMartin Michlmayr help 5292c8086a5Seric miao Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 5301da177e4SLinus Torvalds 531788c9700SRussell Kingconfig ARCH_MSM 532788c9700SRussell King bool "Qualcomm MSM" 533788c9700SRussell King select CPU_V6 53449cbe786SEric Miao select GENERIC_TIME 53549cbe786SEric Miao select GENERIC_CLOCKEVENTS 53649cbe786SEric Miao help 537788c9700SRussell King Support for Qualcomm MSM7K based systems. This runs on the ARM11 538788c9700SRussell King apps processor of the MSM7K and depends on a shared memory 539788c9700SRussell King interface to the ARM9 modem processor which runs the baseband stack 540788c9700SRussell King and controls some vital subsystems (clock and power control, etc). 54149cbe786SEric Miao 5421da177e4SLinus Torvaldsconfig ARCH_RPC 5431da177e4SLinus Torvalds bool "RiscPC" 5441da177e4SLinus Torvalds select ARCH_ACORN 5451da177e4SLinus Torvalds select FIQ 5461da177e4SLinus Torvalds select TIMER_ACORN 547a08b6b79Sviro@ZenIV.linux.org.uk select ARCH_MAY_HAVE_PC_FDC 548341eb781SBen Dooks select HAVE_PATA_PLATFORM 549065909b9SRussell King select ISA_DMA_API 5505ea81769SAl Viro select NO_IOPORT 55107f841b7SRussell King select ARCH_SPARSEMEM_ENABLE 5521da177e4SLinus Torvalds help 5531da177e4SLinus Torvalds On the Acorn Risc-PC, Linux can support the internal IDE disk and 5541da177e4SLinus Torvalds CD-ROM interface, serial and parallel port, and the floppy drive. 5551da177e4SLinus Torvalds 5561da177e4SLinus Torvaldsconfig ARCH_SA1100 5571da177e4SLinus Torvalds bool "SA1100-based" 558c750815eSRussell King select CPU_SA1100 559f7e68bbfSRussell King select ISA 56005944d74SRussell King select ARCH_SPARSEMEM_ENABLE 561034d2f5aSAl Viro select ARCH_MTD_XIP 5620a938b97SDavid Brownell select GENERIC_GPIO 563d142b6e7SRussell King select GENERIC_TIME 5643e238be2SRussell King select GENERIC_CLOCKEVENTS 5659483a578SDavid Brownell select HAVE_CLK 5663e238be2SRussell King select TICK_ONESHOT 5677444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 568f999b8bdSMartin Michlmayr help 569f999b8bdSMartin Michlmayr Support for StrongARM 11x0 based boards. 5701da177e4SLinus Torvalds 5711da177e4SLinus Torvaldsconfig ARCH_S3C2410 572e4d06e39SBen Dooks bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443" 5730a938b97SDavid Brownell select GENERIC_GPIO 5749483a578SDavid Brownell select HAVE_CLK 5751da177e4SLinus Torvalds help 5761da177e4SLinus Torvalds Samsung S3C2410X CPU based systems, such as the Simtec Electronics 5771da177e4SLinus Torvalds BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or 578f6c8965aSMartin Michlmayr the Samsung SMDK2410 development board (and derivatives). 5791da177e4SLinus Torvalds 580a08ab637SBen Dooksconfig ARCH_S3C64XX 581a08ab637SBen Dooks bool "Samsung S3C64XX" 582a08ab637SBen Dooks select GENERIC_GPIO 583a08ab637SBen Dooks select HAVE_CLK 584a08ab637SBen Dooks help 585a08ab637SBen Dooks Samsung S3C64XX series based systems 586a08ab637SBen Dooks 5871da177e4SLinus Torvaldsconfig ARCH_SHARK 5881da177e4SLinus Torvalds bool "Shark" 589c750815eSRussell King select CPU_SA110 590f7e68bbfSRussell King select ISA 591f7e68bbfSRussell King select ISA_DMA 5923bca103aSNicolas Pitre select ZONE_DMA 593f7e68bbfSRussell King select PCI 594f999b8bdSMartin Michlmayr help 595f999b8bdSMartin Michlmayr Support for the StrongARM based Digital DNARD machine, also known 596f999b8bdSMartin Michlmayr as "Shark" (<http://www.shark-linux.de/shark.html>). 5971da177e4SLinus Torvalds 5981da177e4SLinus Torvaldsconfig ARCH_LH7A40X 5991da177e4SLinus Torvalds bool "Sharp LH7A40X" 600c750815eSRussell King select CPU_ARM922T 6014ba3f7c5SRussell King select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM 6024ba3f7c5SRussell King select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM 6031da177e4SLinus Torvalds help 6041da177e4SLinus Torvalds Say Y here for systems based on one of the Sharp LH7A40X 6051da177e4SLinus Torvalds System on a Chip processors. These CPUs include an ARM922T 6061da177e4SLinus Torvalds core with a wide array of integrated devices for 6071da177e4SLinus Torvalds hand-held and low-power applications. 6081da177e4SLinus Torvalds 609d98aac75SLinus Walleijconfig ARCH_U300 610d98aac75SLinus Walleij bool "ST-Ericsson U300 Series" 611d98aac75SLinus Walleij depends on MMU 612d98aac75SLinus Walleij select CPU_ARM926T 613d98aac75SLinus Walleij select ARM_AMBA 614d98aac75SLinus Walleij select ARM_VIC 615d98aac75SLinus Walleij select GENERIC_TIME 616d98aac75SLinus Walleij select GENERIC_CLOCKEVENTS 617d98aac75SLinus Walleij select HAVE_CLK 618d98aac75SLinus Walleij select COMMON_CLKDEV 619d98aac75SLinus Walleij select GENERIC_GPIO 620d98aac75SLinus Walleij help 621d98aac75SLinus Walleij Support for ST-Ericsson U300 series mobile platforms. 622d98aac75SLinus Walleij 6237c6337e2SKevin Hilmanconfig ARCH_DAVINCI 6247c6337e2SKevin Hilman bool "TI DaVinci" 625c750815eSRussell King select CPU_ARM926T 6267c6337e2SKevin Hilman select GENERIC_TIME 6277c6337e2SKevin Hilman select GENERIC_CLOCKEVENTS 6283d9edf09SVladimir Barinov select GENERIC_GPIO 629dce1115bSDavid Brownell select ARCH_REQUIRE_GPIOLIB 6309483a578SDavid Brownell select HAVE_CLK 6313bca103aSNicolas Pitre select ZONE_DMA 6329232fcc9SKevin Hilman select HAVE_IDE 633c5b736d0SKevin Hilman select COMMON_CLKDEV 63420e9969bSDavid Brownell select GENERIC_ALLOCATOR 6357c6337e2SKevin Hilman help 6367c6337e2SKevin Hilman Support for TI's DaVinci platform. 6377c6337e2SKevin Hilman 6383b938be6SRussell Kingconfig ARCH_OMAP 6393b938be6SRussell King bool "TI OMAP" 6403b938be6SRussell King select GENERIC_GPIO 6419483a578SDavid Brownell select HAVE_CLK 6427444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 6433b938be6SRussell King select GENERIC_TIME 64406cad098SKevin Hilman select GENERIC_CLOCKEVENTS 6453b938be6SRussell King help 6463b938be6SRussell King Support for TI's OMAP platform (OMAP1 and OMAP2). 6473b938be6SRussell King 6481da177e4SLinus Torvaldsendchoice 6491da177e4SLinus Torvalds 6501da177e4SLinus Torvaldssource "arch/arm/mach-clps711x/Kconfig" 6511da177e4SLinus Torvalds 652e7736d47SLennert Buytenheksource "arch/arm/mach-ep93xx/Kconfig" 653e7736d47SLennert Buytenhek 6541da177e4SLinus Torvaldssource "arch/arm/mach-footbridge/Kconfig" 6551da177e4SLinus Torvalds 65659d3a193SPaulius Zaleckassource "arch/arm/mach-gemini/Kconfig" 65759d3a193SPaulius Zaleckas 6581da177e4SLinus Torvaldssource "arch/arm/mach-integrator/Kconfig" 6591da177e4SLinus Torvalds 6603f7e5815SLennert Buytenheksource "arch/arm/mach-iop32x/Kconfig" 6613f7e5815SLennert Buytenhek 6623f7e5815SLennert Buytenheksource "arch/arm/mach-iop33x/Kconfig" 6631da177e4SLinus Torvalds 664285f5fa7SDan Williamssource "arch/arm/mach-iop13xx/Kconfig" 665285f5fa7SDan Williams 6661da177e4SLinus Torvaldssource "arch/arm/mach-ixp4xx/Kconfig" 6671da177e4SLinus Torvalds 6681da177e4SLinus Torvaldssource "arch/arm/mach-ixp2000/Kconfig" 6691da177e4SLinus Torvalds 670c4713074SLennert Buytenheksource "arch/arm/mach-ixp23xx/Kconfig" 671c4713074SLennert Buytenhek 672777f9bebSLennert Buytenheksource "arch/arm/mach-loki/Kconfig" 673777f9bebSLennert Buytenhek 674794d15b2SStanislav Samsonovsource "arch/arm/mach-mv78xx0/Kconfig" 675794d15b2SStanislav Samsonov 6761da177e4SLinus Torvaldssource "arch/arm/mach-pxa/Kconfig" 677bd5ce433SEric Miaosource "arch/arm/plat-pxa/Kconfig" 6781da177e4SLinus Torvalds 67949cbe786SEric Miaosource "arch/arm/mach-mmp/Kconfig" 68049cbe786SEric Miao 6811da177e4SLinus Torvaldssource "arch/arm/mach-sa1100/Kconfig" 6821da177e4SLinus Torvalds 683d48af15eSTony Lindgrensource "arch/arm/plat-omap/Kconfig" 684d48af15eSTony Lindgren 685d48af15eSTony Lindgrensource "arch/arm/mach-omap1/Kconfig" 6861da177e4SLinus Torvalds 6871dbae815STony Lindgrensource "arch/arm/mach-omap2/Kconfig" 6881dbae815STony Lindgren 6899dd0b194SLennert Buytenheksource "arch/arm/mach-orion5x/Kconfig" 690585cf175STzachi Perelstein 691651c74c7SSaeed Bisharasource "arch/arm/mach-kirkwood/Kconfig" 6921da177e4SLinus Torvalds 693a21765a7SBen Dookssource "arch/arm/plat-s3c24xx/Kconfig" 694a08ab637SBen Dookssource "arch/arm/plat-s3c64xx/Kconfig" 695d58153d8SBen Dookssource "arch/arm/plat-s3c/Kconfig" 696a21765a7SBen Dooks 697a21765a7SBen Dooksif ARCH_S3C2410 698a21765a7SBen Dookssource "arch/arm/mach-s3c2400/Kconfig" 6991da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig" 700a21765a7SBen Dookssource "arch/arm/mach-s3c2412/Kconfig" 701a21765a7SBen Dookssource "arch/arm/mach-s3c2440/Kconfig" 702a21765a7SBen Dookssource "arch/arm/mach-s3c2442/Kconfig" 703e4d06e39SBen Dookssource "arch/arm/mach-s3c2443/Kconfig" 704a21765a7SBen Dooksendif 7051da177e4SLinus Torvalds 706a08ab637SBen Dooksif ARCH_S3C64XX 707a08ab637SBen Dookssource "arch/arm/mach-s3c6400/Kconfig" 708a08ab637SBen Dookssource "arch/arm/mach-s3c6410/Kconfig" 709a08ab637SBen Dooksendif 710a08ab637SBen Dooks 7117bd0f2f5Sdmitry pervushinsource "arch/arm/plat-stmp3xxx/Kconfig" 7127bd0f2f5Sdmitry pervushin 7131da177e4SLinus Torvaldssource "arch/arm/mach-lh7a40x/Kconfig" 7141da177e4SLinus Torvalds 7151da177e4SLinus Torvaldssource "arch/arm/mach-h720x/Kconfig" 7161da177e4SLinus Torvalds 7171da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig" 7181da177e4SLinus Torvalds 719038c5b60SBellido Nicolassource "arch/arm/mach-aaec2000/Kconfig" 720038c5b60SBellido Nicolas 7218ad68bbfSCatalin Marinassource "arch/arm/mach-realview/Kconfig" 7228ad68bbfSCatalin Marinas 7239d041268SAndrew Victorsource "arch/arm/mach-at91/Kconfig" 72473a59c1cSSAN People 72552c543f9SQuinn Jensensource "arch/arm/plat-mxc/Kconfig" 72652c543f9SQuinn Jensen 727bb6d8c88SSascha Hauersource "arch/arm/mach-netx/Kconfig" 728bb6d8c88SSascha Hauer 7299918cda5SUwe Kleine-Königsource "arch/arm/mach-ns9xxx/Kconfig" 7309918cda5SUwe Kleine-König 7317c6337e2SKevin Hilmansource "arch/arm/mach-davinci/Kconfig" 7327c6337e2SKevin Hilman 733c53c9cf6SAndrew Victorsource "arch/arm/mach-ks8695/Kconfig" 734c53c9cf6SAndrew Victor 7359e73c84cSBrian Swetlandsource "arch/arm/mach-msm/Kconfig" 7369e73c84cSBrian Swetland 737d98aac75SLinus Walleijsource "arch/arm/mach-u300/Kconfig" 738d98aac75SLinus Walleij 7397ec80ddfSwanzongshunsource "arch/arm/mach-w90x900/Kconfig" 7407ec80ddfSwanzongshun 7411da177e4SLinus Torvalds# Definitions to make life easier 7421da177e4SLinus Torvaldsconfig ARCH_ACORN 7431da177e4SLinus Torvalds bool 7441da177e4SLinus Torvalds 7457ae1f7ecSLennert Buytenhekconfig PLAT_IOP 7467ae1f7ecSLennert Buytenhek bool 7477ae1f7ecSLennert Buytenhek 74869b02f6aSLennert Buytenhekconfig PLAT_ORION 74969b02f6aSLennert Buytenhek bool 75069b02f6aSLennert Buytenhek 751bd5ce433SEric Miaoconfig PLAT_PXA 752bd5ce433SEric Miao bool 753bd5ce433SEric Miao 7541da177e4SLinus Torvaldssource arch/arm/mm/Kconfig 7551da177e4SLinus Torvalds 756afe4b25eSLennert Buytenhekconfig IWMMXT 757afe4b25eSLennert Buytenhek bool "Enable iWMMXt support" 75840305a58SEric Miao depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK 75940305a58SEric Miao default y if PXA27x || PXA3xx || ARCH_MMP 760afe4b25eSLennert Buytenhek help 761afe4b25eSLennert Buytenhek Enable support for iWMMXt context switching at run time if 762afe4b25eSLennert Buytenhek running on a CPU that supports it. 763afe4b25eSLennert Buytenhek 7641da177e4SLinus Torvalds# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER 7651da177e4SLinus Torvaldsconfig XSCALE_PMU 7661da177e4SLinus Torvalds bool 7671da177e4SLinus Torvalds depends on CPU_XSCALE && !XSCALE_PMU_TIMER 7681da177e4SLinus Torvalds default y 7691da177e4SLinus Torvalds 7703b93e7b0SHyok S. Choiif !MMU 7713b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu" 7723b93e7b0SHyok S. Choiendif 7733b93e7b0SHyok S. Choi 7749cba3cccSCatalin Marinasconfig ARM_ERRATA_411920 7759cba3cccSCatalin Marinas bool "ARM errata: Invalidation of the Instruction Cache operation can fail" 7769cba3cccSCatalin Marinas depends on CPU_V6 && !SMP 7779cba3cccSCatalin Marinas help 7789cba3cccSCatalin Marinas Invalidation of the Instruction Cache operation can 7799cba3cccSCatalin Marinas fail. This erratum is present in 1136 (before r1p4), 1156 and 1176. 7809cba3cccSCatalin Marinas It does not affect the MPCore. This option enables the ARM Ltd. 7819cba3cccSCatalin Marinas recommended workaround. 7829cba3cccSCatalin Marinas 7837ce236fcSCatalin Marinasconfig ARM_ERRATA_430973 7847ce236fcSCatalin Marinas bool "ARM errata: Stale prediction on replaced interworking branch" 7857ce236fcSCatalin Marinas depends on CPU_V7 7867ce236fcSCatalin Marinas help 7877ce236fcSCatalin Marinas This option enables the workaround for the 430973 Cortex-A8 7887ce236fcSCatalin Marinas (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb 7897ce236fcSCatalin Marinas interworking branch is replaced with another code sequence at the 7907ce236fcSCatalin Marinas same virtual address, whether due to self-modifying code or virtual 7917ce236fcSCatalin Marinas to physical address re-mapping, Cortex-A8 does not recover from the 7927ce236fcSCatalin Marinas stale interworking branch prediction. This results in Cortex-A8 7937ce236fcSCatalin Marinas executing the new code sequence in the incorrect ARM or Thumb state. 7947ce236fcSCatalin Marinas The workaround enables the BTB/BTAC operations by setting ACTLR.IBE 7957ce236fcSCatalin Marinas and also flushes the branch target cache at every context switch. 7967ce236fcSCatalin Marinas Note that setting specific bits in the ACTLR register may not be 7977ce236fcSCatalin Marinas available in non-secure mode. 7987ce236fcSCatalin Marinas 799855c551fSCatalin Marinasconfig ARM_ERRATA_458693 800855c551fSCatalin Marinas bool "ARM errata: Processor deadlock when a false hazard is created" 801855c551fSCatalin Marinas depends on CPU_V7 802855c551fSCatalin Marinas help 803855c551fSCatalin Marinas This option enables the workaround for the 458693 Cortex-A8 (r2p0) 804855c551fSCatalin Marinas erratum. For very specific sequences of memory operations, it is 805855c551fSCatalin Marinas possible for a hazard condition intended for a cache line to instead 806855c551fSCatalin Marinas be incorrectly associated with a different cache line. This false 807855c551fSCatalin Marinas hazard might then cause a processor deadlock. The workaround enables 808855c551fSCatalin Marinas the L1 caching of the NEON accesses and disables the PLD instruction 809855c551fSCatalin Marinas in the ACTLR register. Note that setting specific bits in the ACTLR 810855c551fSCatalin Marinas register may not be available in non-secure mode. 811855c551fSCatalin Marinas 8120516e464SCatalin Marinasconfig ARM_ERRATA_460075 8130516e464SCatalin Marinas bool "ARM errata: Data written to the L2 cache can be overwritten with stale data" 8140516e464SCatalin Marinas depends on CPU_V7 8150516e464SCatalin Marinas help 8160516e464SCatalin Marinas This option enables the workaround for the 460075 Cortex-A8 (r2p0) 8170516e464SCatalin Marinas erratum. Any asynchronous access to the L2 cache may encounter a 8180516e464SCatalin Marinas situation in which recent store transactions to the L2 cache are lost 8190516e464SCatalin Marinas and overwritten with stale memory contents from external memory. The 8200516e464SCatalin Marinas workaround disables the write-allocate mode for the L2 cache via the 8210516e464SCatalin Marinas ACTLR register. Note that setting specific bits in the ACTLR register 8220516e464SCatalin Marinas may not be available in non-secure mode. 8230516e464SCatalin Marinas 8241da177e4SLinus Torvaldsendmenu 8251da177e4SLinus Torvalds 8261da177e4SLinus Torvaldssource "arch/arm/common/Kconfig" 8271da177e4SLinus Torvalds 8281da177e4SLinus Torvaldsconfig FORCE_MAX_ZONEORDER 8291da177e4SLinus Torvalds int 8301da177e4SLinus Torvalds depends on SA1111 8311da177e4SLinus Torvalds default "9" 8321da177e4SLinus Torvalds 8331da177e4SLinus Torvaldsmenu "Bus support" 8341da177e4SLinus Torvalds 8351da177e4SLinus Torvaldsconfig ARM_AMBA 8361da177e4SLinus Torvalds bool 8371da177e4SLinus Torvalds 8381da177e4SLinus Torvaldsconfig ISA 8391da177e4SLinus Torvalds bool 8401da177e4SLinus Torvalds help 8411da177e4SLinus Torvalds Find out whether you have ISA slots on your motherboard. ISA is the 8421da177e4SLinus Torvalds name of a bus system, i.e. the way the CPU talks to the other stuff 8431da177e4SLinus Torvalds inside your box. Other bus systems are PCI, EISA, MicroChannel 8441da177e4SLinus Torvalds (MCA) or VESA. ISA is an older system, now being displaced by PCI; 8451da177e4SLinus Torvalds newer boards don't support it. If you have ISA, say Y, otherwise N. 8461da177e4SLinus Torvalds 847065909b9SRussell King# Select ISA DMA controller support 8481da177e4SLinus Torvaldsconfig ISA_DMA 8491da177e4SLinus Torvalds bool 850065909b9SRussell King select ISA_DMA_API 8511da177e4SLinus Torvalds 852065909b9SRussell King# Select ISA DMA interface 8535cae841bSAl Viroconfig ISA_DMA_API 8545cae841bSAl Viro bool 8555cae841bSAl Viro 8561da177e4SLinus Torvaldsconfig PCI 857a0113a99SMike Rapoport bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE 8581da177e4SLinus Torvalds help 8591da177e4SLinus Torvalds Find out whether you have a PCI motherboard. PCI is the name of a 8601da177e4SLinus Torvalds bus system, i.e. the way the CPU talks to the other stuff inside 8611da177e4SLinus Torvalds your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 8621da177e4SLinus Torvalds VESA. If you have PCI, say Y, otherwise N. 8631da177e4SLinus Torvalds 86436e23590SMatthew Wilcoxconfig PCI_SYSCALL 86536e23590SMatthew Wilcox def_bool PCI 86636e23590SMatthew Wilcox 8671da177e4SLinus Torvalds# Select the host bridge type 8681da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505 8691da177e4SLinus Torvalds bool 8701da177e4SLinus Torvalds depends on PCI && ARCH_SHARK 8711da177e4SLinus Torvalds default y 8721da177e4SLinus Torvalds 873a0113a99SMike Rapoportconfig PCI_HOST_ITE8152 874a0113a99SMike Rapoport bool 875a0113a99SMike Rapoport depends on PCI && MACH_ARMCORE 876a0113a99SMike Rapoport default y 877a0113a99SMike Rapoport select DMABOUNCE 878a0113a99SMike Rapoport 8791da177e4SLinus Torvaldssource "drivers/pci/Kconfig" 8801da177e4SLinus Torvalds 8811da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig" 8821da177e4SLinus Torvalds 8831da177e4SLinus Torvaldsendmenu 8841da177e4SLinus Torvalds 8851da177e4SLinus Torvaldsmenu "Kernel Features" 8861da177e4SLinus Torvalds 8870567a0c0SKevin Hilmansource "kernel/time/Kconfig" 8880567a0c0SKevin Hilman 8891da177e4SLinus Torvaldsconfig SMP 8901da177e4SLinus Torvalds bool "Symmetric Multi-Processing (EXPERIMENTAL)" 89142578c82SRussell King depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\ 89242578c82SRussell King MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4) 893bc28248eSRussell King depends on GENERIC_CLOCKEVENTS 894f6dd9fa5SJens Axboe select USE_GENERIC_SMP_HELPERS 895934f8be7SSantosh Shilimkar select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4) 8961da177e4SLinus Torvalds help 8971da177e4SLinus Torvalds This enables support for systems with more than one CPU. If you have 8981da177e4SLinus Torvalds a system with only one CPU, like most personal computers, say N. If 8991da177e4SLinus Torvalds you have a system with more than one CPU, say Y. 9001da177e4SLinus Torvalds 9011da177e4SLinus Torvalds If you say N here, the kernel will run on single and multiprocessor 9021da177e4SLinus Torvalds machines, but will use only one CPU of a multiprocessor machine. If 9031da177e4SLinus Torvalds you say Y here, the kernel will run on many, but not all, single 9041da177e4SLinus Torvalds processor machines. On a single processor machine, the kernel will 9051da177e4SLinus Torvalds run faster if you say N here. 9061da177e4SLinus Torvalds 90703502faaSAdrian Bunk See also <file:Documentation/i386/IO-APIC.txt>, 9081da177e4SLinus Torvalds <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 9091da177e4SLinus Torvalds <http://www.linuxdoc.org/docs.html#howto>. 9101da177e4SLinus Torvalds 9111da177e4SLinus Torvalds If you don't know what to do here, say N. 9121da177e4SLinus Torvalds 913a8cbcd92SRussell Kingconfig HAVE_ARM_SCU 914a8cbcd92SRussell King bool 915a8cbcd92SRussell King depends on SMP 916a8cbcd92SRussell King help 917a8cbcd92SRussell King This option enables support for the ARM system coherency unit 918a8cbcd92SRussell King 919f32f4ce2SRussell Kingconfig HAVE_ARM_TWD 920f32f4ce2SRussell King bool 921f32f4ce2SRussell King depends on SMP 922f32f4ce2SRussell King help 923f32f4ce2SRussell King This options enables support for the ARM timer and watchdog unit 924f32f4ce2SRussell King 9258d5796d2SLennert Buytenhekchoice 9268d5796d2SLennert Buytenhek prompt "Memory split" 9278d5796d2SLennert Buytenhek default VMSPLIT_3G 9288d5796d2SLennert Buytenhek help 9298d5796d2SLennert Buytenhek Select the desired split between kernel and user memory. 9308d5796d2SLennert Buytenhek 9318d5796d2SLennert Buytenhek If you are not absolutely sure what you are doing, leave this 9328d5796d2SLennert Buytenhek option alone! 9338d5796d2SLennert Buytenhek 9348d5796d2SLennert Buytenhek config VMSPLIT_3G 9358d5796d2SLennert Buytenhek bool "3G/1G user/kernel split" 9368d5796d2SLennert Buytenhek config VMSPLIT_2G 9378d5796d2SLennert Buytenhek bool "2G/2G user/kernel split" 9388d5796d2SLennert Buytenhek config VMSPLIT_1G 9398d5796d2SLennert Buytenhek bool "1G/3G user/kernel split" 9408d5796d2SLennert Buytenhekendchoice 9418d5796d2SLennert Buytenhek 9428d5796d2SLennert Buytenhekconfig PAGE_OFFSET 9438d5796d2SLennert Buytenhek hex 9448d5796d2SLennert Buytenhek default 0x40000000 if VMSPLIT_1G 9458d5796d2SLennert Buytenhek default 0x80000000 if VMSPLIT_2G 9468d5796d2SLennert Buytenhek default 0xC0000000 9478d5796d2SLennert Buytenhek 9481da177e4SLinus Torvaldsconfig NR_CPUS 9491da177e4SLinus Torvalds int "Maximum number of CPUs (2-32)" 9501da177e4SLinus Torvalds range 2 32 9511da177e4SLinus Torvalds depends on SMP 9521da177e4SLinus Torvalds default "4" 9531da177e4SLinus Torvalds 954a054a811SRussell Kingconfig HOTPLUG_CPU 955a054a811SRussell King bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 956a054a811SRussell King depends on SMP && HOTPLUG && EXPERIMENTAL 957a054a811SRussell King help 958a054a811SRussell King Say Y here to experiment with turning CPUs off and on. CPUs 959a054a811SRussell King can be controlled through /sys/devices/system/cpu. 960a054a811SRussell King 96137ee16aeSRussell Kingconfig LOCAL_TIMERS 96237ee16aeSRussell King bool "Use local timer interrupts" 96342578c82SRussell King depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \ 96442578c82SRussell King REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4) 96537ee16aeSRussell King default y 966934f8be7SSantosh Shilimkar select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4) 96737ee16aeSRussell King help 96837ee16aeSRussell King Enable support for local timers on SMP platforms, rather then the 96937ee16aeSRussell King legacy IPI broadcast method. Local timers allows the system 97037ee16aeSRussell King accounting to be spread across the timer interval, preventing a 97137ee16aeSRussell King "thundering herd" at every timer tick. 97237ee16aeSRussell King 9731da177e4SLinus Torvaldsconfig PREEMPT 9741da177e4SLinus Torvalds bool "Preemptible Kernel (EXPERIMENTAL)" 9751da177e4SLinus Torvalds depends on EXPERIMENTAL 9761da177e4SLinus Torvalds help 9771da177e4SLinus Torvalds This option reduces the latency of the kernel when reacting to 9781da177e4SLinus Torvalds real-time or interactive events by allowing a low priority process to 9791da177e4SLinus Torvalds be preempted even if it is in kernel mode executing a system call. 9801da177e4SLinus Torvalds This allows applications to run more reliably even when the system is 9811da177e4SLinus Torvalds under load. 9821da177e4SLinus Torvalds 9831da177e4SLinus Torvalds Say Y here if you are building a kernel for a desktop, embedded 9841da177e4SLinus Torvalds or real-time system. Say N if you are unsure. 9851da177e4SLinus Torvalds 986f8065813SRussell Kingconfig HZ 987f8065813SRussell King int 988f8065813SRussell King default 128 if ARCH_L7200 989f8065813SRussell King default 200 if ARCH_EBSA110 || ARCH_S3C2410 990bfe65704SRussell King default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER 9915248c657SDavid Brownell default AT91_TIMER_HZ if ARCH_AT91 992f8065813SRussell King default 100 993f8065813SRussell King 994704bdda0SNicolas Pitreconfig AEABI 995704bdda0SNicolas Pitre bool "Use the ARM EABI to compile the kernel" 996704bdda0SNicolas Pitre help 997704bdda0SNicolas Pitre This option allows for the kernel to be compiled using the latest 998704bdda0SNicolas Pitre ARM ABI (aka EABI). This is only useful if you are using a user 999704bdda0SNicolas Pitre space environment that is also compiled with EABI. 1000704bdda0SNicolas Pitre 1001704bdda0SNicolas Pitre Since there are major incompatibilities between the legacy ABI and 1002704bdda0SNicolas Pitre EABI, especially with regard to structure member alignment, this 1003704bdda0SNicolas Pitre option also changes the kernel syscall calling convention to 1004704bdda0SNicolas Pitre disambiguate both ABIs and allow for backward compatibility support 1005704bdda0SNicolas Pitre (selected with CONFIG_OABI_COMPAT). 1006704bdda0SNicolas Pitre 1007704bdda0SNicolas Pitre To use this you need GCC version 4.0.0 or later. 1008704bdda0SNicolas Pitre 10096c90c872SNicolas Pitreconfig OABI_COMPAT 1010a73a3ff1SRussell King bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)" 101161c484d4SNicolas Pitre depends on AEABI && EXPERIMENTAL 10126c90c872SNicolas Pitre default y 10136c90c872SNicolas Pitre help 10146c90c872SNicolas Pitre This option preserves the old syscall interface along with the 10156c90c872SNicolas Pitre new (ARM EABI) one. It also provides a compatibility layer to 10166c90c872SNicolas Pitre intercept syscalls that have structure arguments which layout 10176c90c872SNicolas Pitre in memory differs between the legacy ABI and the new ARM EABI 10186c90c872SNicolas Pitre (only for non "thumb" binaries). This option adds a tiny 10196c90c872SNicolas Pitre overhead to all syscalls and produces a slightly larger kernel. 10206c90c872SNicolas Pitre If you know you'll be using only pure EABI user space then you 10216c90c872SNicolas Pitre can say N here. If this option is not selected and you attempt 10226c90c872SNicolas Pitre to execute a legacy ABI binary then the result will be 10236c90c872SNicolas Pitre UNPREDICTABLE (in fact it can be predicted that it won't work 10246c90c872SNicolas Pitre at all). If in doubt say Y. 10256c90c872SNicolas Pitre 1026eb33575cSMel Gormanconfig ARCH_HAS_HOLES_MEMORYMODEL 1027e80d6a24SMel Gorman bool 1028e80d6a24SMel Gorman 102907a2f737SRussell King# Discontigmem is deprecated 10303f22ab27SDave Hansenconfig ARCH_DISCONTIGMEM_ENABLE 10311da177e4SLinus Torvalds bool 10321da177e4SLinus Torvalds 103305944d74SRussell Kingconfig ARCH_SPARSEMEM_ENABLE 103405944d74SRussell King bool 103505944d74SRussell King 103607a2f737SRussell Kingconfig ARCH_SPARSEMEM_DEFAULT 103707a2f737SRussell King def_bool ARCH_SPARSEMEM_ENABLE 103807a2f737SRussell King 103905944d74SRussell Kingconfig ARCH_SELECT_MEMORY_MODEL 104007a2f737SRussell King def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE 104105944d74SRussell King 1042c80d79d7SYasunori Gotoconfig NODES_SHIFT 1043c80d79d7SYasunori Goto int 1044c80d79d7SYasunori Goto default "4" if ARCH_LH7A40X 1045c80d79d7SYasunori Goto default "2" 1046c80d79d7SYasunori Goto depends on NEED_MULTIPLE_NODES 1047c80d79d7SYasunori Goto 1048053a96caSNicolas Pitreconfig HIGHMEM 1049053a96caSNicolas Pitre bool "High Memory Support (EXPERIMENTAL)" 1050053a96caSNicolas Pitre depends on MMU && EXPERIMENTAL 1051053a96caSNicolas Pitre help 1052053a96caSNicolas Pitre The address space of ARM processors is only 4 Gigabytes large 1053053a96caSNicolas Pitre and it has to accommodate user address space, kernel address 1054053a96caSNicolas Pitre space as well as some memory mapped IO. That means that, if you 1055053a96caSNicolas Pitre have a large amount of physical memory and/or IO, not all of the 1056053a96caSNicolas Pitre memory can be "permanently mapped" by the kernel. The physical 1057053a96caSNicolas Pitre memory that is not permanently mapped is called "high memory". 1058053a96caSNicolas Pitre 1059053a96caSNicolas Pitre Depending on the selected kernel/user memory split, minimum 1060053a96caSNicolas Pitre vmalloc space and actual amount of RAM, you may not need this 1061053a96caSNicolas Pitre option which should result in a slightly faster kernel. 1062053a96caSNicolas Pitre 1063053a96caSNicolas Pitre If unsure, say n. 1064053a96caSNicolas Pitre 10653f22ab27SDave Hansensource "mm/Kconfig" 10663f22ab27SDave Hansen 10671da177e4SLinus Torvaldsconfig LEDS 10681da177e4SLinus Torvalds bool "Timer and CPU usage LEDs" 1069e055d5bfSAdrian Bunk depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 10708c8fdbc9SSascha Hauer ARCH_EBSA285 || ARCH_INTEGRATOR || \ 10711da177e4SLinus Torvalds ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 10721da177e4SLinus Torvalds ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 107373a59c1cSSAN People ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ 107425329671SJürgen Schindele ARCH_AT91 || ARCH_DAVINCI || \ 1075ff3042fbSColin Tuckley ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW 10761da177e4SLinus Torvalds help 10771da177e4SLinus Torvalds If you say Y here, the LEDs on your machine will be used 10781da177e4SLinus Torvalds to provide useful information about your current system status. 10791da177e4SLinus Torvalds 10801da177e4SLinus Torvalds If you are compiling a kernel for a NetWinder or EBSA-285, you will 10811da177e4SLinus Torvalds be able to select which LEDs are active using the options below. If 10821da177e4SLinus Torvalds you are compiling a kernel for the EBSA-110 or the LART however, the 10831da177e4SLinus Torvalds red LED will simply flash regularly to indicate that the system is 10841da177e4SLinus Torvalds still functional. It is safe to say Y here if you have a CATS 10851da177e4SLinus Torvalds system, but the driver will do nothing. 10861da177e4SLinus Torvalds 10871da177e4SLinus Torvaldsconfig LEDS_TIMER 10881da177e4SLinus Torvalds bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ 1089eebdf7d7SDavid Brownell OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1090eebdf7d7SDavid Brownell || MACH_OMAP_PERSEUS2 10911da177e4SLinus Torvalds depends on LEDS 10920567a0c0SKevin Hilman depends on !GENERIC_CLOCKEVENTS 10931da177e4SLinus Torvalds default y if ARCH_EBSA110 10941da177e4SLinus Torvalds help 10951da177e4SLinus Torvalds If you say Y here, one of the system LEDs (the green one on the 10961da177e4SLinus Torvalds NetWinder, the amber one on the EBSA285, or the red one on the LART) 10971da177e4SLinus Torvalds will flash regularly to indicate that the system is still 10981da177e4SLinus Torvalds operational. This is mainly useful to kernel hackers who are 10991da177e4SLinus Torvalds debugging unstable kernels. 11001da177e4SLinus Torvalds 11011da177e4SLinus Torvalds The LART uses the same LED for both Timer LED and CPU usage LED 11021da177e4SLinus Torvalds functions. You may choose to use both, but the Timer LED function 11031da177e4SLinus Torvalds will overrule the CPU usage LED. 11041da177e4SLinus Torvalds 11051da177e4SLinus Torvaldsconfig LEDS_CPU 11061da177e4SLinus Torvalds bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ 1107eebdf7d7SDavid Brownell !ARCH_OMAP) \ 1108eebdf7d7SDavid Brownell || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1109eebdf7d7SDavid Brownell || MACH_OMAP_PERSEUS2 11101da177e4SLinus Torvalds depends on LEDS 11111da177e4SLinus Torvalds help 11121da177e4SLinus Torvalds If you say Y here, the red LED will be used to give a good real 11131da177e4SLinus Torvalds time indication of CPU usage, by lighting whenever the idle task 11141da177e4SLinus Torvalds is not currently executing. 11151da177e4SLinus Torvalds 11161da177e4SLinus Torvalds The LART uses the same LED for both Timer LED and CPU usage LED 11171da177e4SLinus Torvalds functions. You may choose to use both, but the Timer LED function 11181da177e4SLinus Torvalds will overrule the CPU usage LED. 11191da177e4SLinus Torvalds 11201da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP 11211da177e4SLinus Torvalds bool 1122f12d0d7cSHyok S. Choi depends on CPU_CP15_MMU 11231da177e4SLinus Torvalds default y if !ARCH_EBSA110 11241da177e4SLinus Torvalds help 11251da177e4SLinus Torvalds ARM processors cannot fetch/store information which is not 11261da177e4SLinus Torvalds naturally aligned on the bus, i.e., a 4 byte fetch must start at an 11271da177e4SLinus Torvalds address divisible by 4. On 32-bit ARM processors, these non-aligned 11281da177e4SLinus Torvalds fetch/store instructions will be emulated in software if you say 11291da177e4SLinus Torvalds here, which has a severe performance impact. This is necessary for 11301da177e4SLinus Torvalds correct operation of some network protocols. With an IP-only 11311da177e4SLinus Torvalds configuration it is safe to say N, otherwise say Y. 11321da177e4SLinus Torvalds 113339ec58f3SLennert Buytenhekconfig UACCESS_WITH_MEMCPY 113439ec58f3SLennert Buytenhek bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)" 113539ec58f3SLennert Buytenhek depends on MMU && EXPERIMENTAL 113639ec58f3SLennert Buytenhek default y if CPU_FEROCEON 113739ec58f3SLennert Buytenhek help 113839ec58f3SLennert Buytenhek Implement faster copy_to_user and clear_user methods for CPU 113939ec58f3SLennert Buytenhek cores where a 8-word STM instruction give significantly higher 114039ec58f3SLennert Buytenhek memory write throughput than a sequence of individual 32bit stores. 114139ec58f3SLennert Buytenhek 114239ec58f3SLennert Buytenhek A possible side effect is a slight increase in scheduling latency 114339ec58f3SLennert Buytenhek between threads sharing the same address space if they invoke 114439ec58f3SLennert Buytenhek such copy operations with large buffers. 114539ec58f3SLennert Buytenhek 114639ec58f3SLennert Buytenhek However, if the CPU data cache is using a write-allocate mode, 114739ec58f3SLennert Buytenhek this option is unlikely to provide any performance gain. 114839ec58f3SLennert Buytenhek 11491da177e4SLinus Torvaldsendmenu 11501da177e4SLinus Torvalds 11511da177e4SLinus Torvaldsmenu "Boot options" 11521da177e4SLinus Torvalds 11531da177e4SLinus Torvalds# Compressed boot loader in ROM. Yes, we really want to ask about 11541da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files. 11551da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT 11561da177e4SLinus Torvalds hex "Compressed ROM boot loader base address" 11571da177e4SLinus Torvalds default "0" 11581da177e4SLinus Torvalds help 11591da177e4SLinus Torvalds The physical address at which the ROM-able zImage is to be 11601da177e4SLinus Torvalds placed in the target. Platforms which normally make use of 11611da177e4SLinus Torvalds ROM-able zImage formats normally set this to a suitable 11621da177e4SLinus Torvalds value in their defconfig file. 11631da177e4SLinus Torvalds 11641da177e4SLinus Torvalds If ZBOOT_ROM is not enabled, this has no effect. 11651da177e4SLinus Torvalds 11661da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS 11671da177e4SLinus Torvalds hex "Compressed ROM boot loader BSS address" 11681da177e4SLinus Torvalds default "0" 11691da177e4SLinus Torvalds help 1170f8c440b2SDan Fandrich The base address of an area of read/write memory in the target 1171f8c440b2SDan Fandrich for the ROM-able zImage which must be available while the 1172f8c440b2SDan Fandrich decompressor is running. It must be large enough to hold the 1173f8c440b2SDan Fandrich entire decompressed kernel plus an additional 128 KiB. 1174f8c440b2SDan Fandrich Platforms which normally make use of ROM-able zImage formats 1175f8c440b2SDan Fandrich normally set this to a suitable value in their defconfig file. 11761da177e4SLinus Torvalds 11771da177e4SLinus Torvalds If ZBOOT_ROM is not enabled, this has no effect. 11781da177e4SLinus Torvalds 11791da177e4SLinus Torvaldsconfig ZBOOT_ROM 11801da177e4SLinus Torvalds bool "Compressed boot loader in ROM/flash" 11811da177e4SLinus Torvalds depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS 11821da177e4SLinus Torvalds help 11831da177e4SLinus Torvalds Say Y here if you intend to execute your compressed kernel image 11841da177e4SLinus Torvalds (zImage) directly from ROM or flash. If unsure, say N. 11851da177e4SLinus Torvalds 11861da177e4SLinus Torvaldsconfig CMDLINE 11871da177e4SLinus Torvalds string "Default kernel command string" 11881da177e4SLinus Torvalds default "" 11891da177e4SLinus Torvalds help 11901da177e4SLinus Torvalds On some architectures (EBSA110 and CATS), there is currently no way 11911da177e4SLinus Torvalds for the boot loader to pass arguments to the kernel. For these 11921da177e4SLinus Torvalds architectures, you should supply some command-line options at build 11931da177e4SLinus Torvalds time by entering them here. As a minimum, you should specify the 11941da177e4SLinus Torvalds memory size and the root device (e.g., mem=64M root=/dev/nfs). 11951da177e4SLinus Torvalds 11961da177e4SLinus Torvaldsconfig XIP_KERNEL 11971da177e4SLinus Torvalds bool "Kernel Execute-In-Place from ROM" 11981da177e4SLinus Torvalds depends on !ZBOOT_ROM 11991da177e4SLinus Torvalds help 12001da177e4SLinus Torvalds Execute-In-Place allows the kernel to run from non-volatile storage 12011da177e4SLinus Torvalds directly addressable by the CPU, such as NOR flash. This saves RAM 12021da177e4SLinus Torvalds space since the text section of the kernel is not loaded from flash 12031da177e4SLinus Torvalds to RAM. Read-write sections, such as the data section and stack, 12041da177e4SLinus Torvalds are still copied to RAM. The XIP kernel is not compressed since 12051da177e4SLinus Torvalds it has to run directly from flash, so it will take more space to 12061da177e4SLinus Torvalds store it. The flash address used to link the kernel object files, 12071da177e4SLinus Torvalds and for storing it, is configuration dependent. Therefore, if you 12081da177e4SLinus Torvalds say Y here, you must know the proper physical address where to 12091da177e4SLinus Torvalds store the kernel image depending on your own flash memory usage. 12101da177e4SLinus Torvalds 12111da177e4SLinus Torvalds Also note that the make target becomes "make xipImage" rather than 12121da177e4SLinus Torvalds "make zImage" or "make Image". The final kernel binary to put in 12131da177e4SLinus Torvalds ROM memory will be arch/arm/boot/xipImage. 12141da177e4SLinus Torvalds 12151da177e4SLinus Torvalds If unsure, say N. 12161da177e4SLinus Torvalds 12171da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR 12181da177e4SLinus Torvalds hex "XIP Kernel Physical Location" 12191da177e4SLinus Torvalds depends on XIP_KERNEL 12201da177e4SLinus Torvalds default "0x00080000" 12211da177e4SLinus Torvalds help 12221da177e4SLinus Torvalds This is the physical address in your flash memory the kernel will 12231da177e4SLinus Torvalds be linked for and stored to. This address is dependent on your 12241da177e4SLinus Torvalds own flash usage. 12251da177e4SLinus Torvalds 1226c587e4a6SRichard Purdieconfig KEXEC 1227c587e4a6SRichard Purdie bool "Kexec system call (EXPERIMENTAL)" 1228c587e4a6SRichard Purdie depends on EXPERIMENTAL 1229c587e4a6SRichard Purdie help 1230c587e4a6SRichard Purdie kexec is a system call that implements the ability to shutdown your 1231c587e4a6SRichard Purdie current kernel, and to start another kernel. It is like a reboot 123201dd2fbfSMatt LaPlante but it is independent of the system firmware. And like a reboot 1233c587e4a6SRichard Purdie you can start any kernel with it, not just Linux. 1234c587e4a6SRichard Purdie 1235c587e4a6SRichard Purdie It is an ongoing process to be certain the hardware in a machine 1236c587e4a6SRichard Purdie is properly shutdown, so do not be surprised if this code does not 1237c587e4a6SRichard Purdie initially work for you. It may help to enable device hotplugging 1238c587e4a6SRichard Purdie support. 1239c587e4a6SRichard Purdie 12404cd9d6f7SRichard Purdieconfig ATAGS_PROC 12414cd9d6f7SRichard Purdie bool "Export atags in procfs" 1242b98d7291SUli Luckas depends on KEXEC 1243b98d7291SUli Luckas default y 12444cd9d6f7SRichard Purdie help 12454cd9d6f7SRichard Purdie Should the atags used to boot the kernel be exported in an "atags" 12464cd9d6f7SRichard Purdie file in procfs. Useful with kexec. 12474cd9d6f7SRichard Purdie 12481da177e4SLinus Torvaldsendmenu 12491da177e4SLinus Torvalds 1250ac9d7efcSRussell Kingmenu "CPU Power Management" 12511da177e4SLinus Torvalds 1252b3748dddSMark Brownif (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_PXA || ARCH_S3C64XX) 12531da177e4SLinus Torvalds 12541da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig" 12551da177e4SLinus Torvalds 12561da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100 12571da177e4SLinus Torvalds bool 12587bc35b56SDmitry Artamonow depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT) 12591da177e4SLinus Torvalds default y 12601da177e4SLinus Torvalds 12611da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110 12621da177e4SLinus Torvalds bool 12631da177e4SLinus Torvalds depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3) 12641da177e4SLinus Torvalds default y 12651da177e4SLinus Torvalds 12661da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR 12671da177e4SLinus Torvalds tristate "CPUfreq driver for ARM Integrator CPUs" 12681da177e4SLinus Torvalds depends on ARCH_INTEGRATOR && CPU_FREQ 12691da177e4SLinus Torvalds default y 12701da177e4SLinus Torvalds help 12711da177e4SLinus Torvalds This enables the CPUfreq driver for ARM Integrator CPUs. 12721da177e4SLinus Torvalds 12731da177e4SLinus Torvalds For details, take a look at <file:Documentation/cpu-freq>. 12741da177e4SLinus Torvalds 12751da177e4SLinus Torvalds If in doubt, say Y. 12761da177e4SLinus Torvalds 12779e2697ffSRussell Kingconfig CPU_FREQ_PXA 12789e2697ffSRussell King bool 12799e2697ffSRussell King depends on CPU_FREQ && ARCH_PXA && PXA25x 12809e2697ffSRussell King default y 12819e2697ffSRussell King select CPU_FREQ_DEFAULT_GOV_USERSPACE 12829e2697ffSRussell King 1283b3748dddSMark Brownconfig CPU_FREQ_S3C64XX 1284b3748dddSMark Brown bool "CPUfreq support for Samsung S3C64XX CPUs" 1285b3748dddSMark Brown depends on CPU_FREQ && CPU_S3C6410 1286b3748dddSMark Brown 12871da177e4SLinus Torvaldsendif 12881da177e4SLinus Torvalds 1289ac9d7efcSRussell Kingsource "drivers/cpuidle/Kconfig" 1290ac9d7efcSRussell King 1291ac9d7efcSRussell Kingendmenu 1292ac9d7efcSRussell King 12931da177e4SLinus Torvaldsmenu "Floating point emulation" 12941da177e4SLinus Torvalds 12951da177e4SLinus Torvaldscomment "At least one emulation must be selected" 12961da177e4SLinus Torvalds 12971da177e4SLinus Torvaldsconfig FPE_NWFPE 12981da177e4SLinus Torvalds bool "NWFPE math emulation" 12998993a44cSNicolas Pitre depends on !AEABI || OABI_COMPAT 13001da177e4SLinus Torvalds ---help--- 13011da177e4SLinus Torvalds Say Y to include the NWFPE floating point emulator in the kernel. 13021da177e4SLinus Torvalds This is necessary to run most binaries. Linux does not currently 13031da177e4SLinus Torvalds support floating point hardware so you need to say Y here even if 13041da177e4SLinus Torvalds your machine has an FPA or floating point co-processor podule. 13051da177e4SLinus Torvalds 13061da177e4SLinus Torvalds You may say N here if you are going to load the Acorn FPEmulator 13071da177e4SLinus Torvalds early in the bootup. 13081da177e4SLinus Torvalds 13091da177e4SLinus Torvaldsconfig FPE_NWFPE_XP 13101da177e4SLinus Torvalds bool "Support extended precision" 1311bedf142bSLennert Buytenhek depends on FPE_NWFPE 13121da177e4SLinus Torvalds help 13131da177e4SLinus Torvalds Say Y to include 80-bit support in the kernel floating-point 13141da177e4SLinus Torvalds emulator. Otherwise, only 32 and 64-bit support is compiled in. 13151da177e4SLinus Torvalds Note that gcc does not generate 80-bit operations by default, 13161da177e4SLinus Torvalds so in most cases this option only enlarges the size of the 13171da177e4SLinus Torvalds floating point emulator without any good reason. 13181da177e4SLinus Torvalds 13191da177e4SLinus Torvalds You almost surely want to say N here. 13201da177e4SLinus Torvalds 13211da177e4SLinus Torvaldsconfig FPE_FASTFPE 13221da177e4SLinus Torvalds bool "FastFPE math emulation (EXPERIMENTAL)" 13238993a44cSNicolas Pitre depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL 13241da177e4SLinus Torvalds ---help--- 13251da177e4SLinus Torvalds Say Y here to include the FAST floating point emulator in the kernel. 13261da177e4SLinus Torvalds This is an experimental much faster emulator which now also has full 13271da177e4SLinus Torvalds precision for the mantissa. It does not support any exceptions. 13281da177e4SLinus Torvalds It is very simple, and approximately 3-6 times faster than NWFPE. 13291da177e4SLinus Torvalds 13301da177e4SLinus Torvalds It should be sufficient for most programs. It may be not suitable 13311da177e4SLinus Torvalds for scientific calculations, but you have to check this for yourself. 13321da177e4SLinus Torvalds If you do not feel you need a faster FP emulation you should better 13331da177e4SLinus Torvalds choose NWFPE. 13341da177e4SLinus Torvalds 13351da177e4SLinus Torvaldsconfig VFP 13361da177e4SLinus Torvalds bool "VFP-format floating point maths" 1337c00d4ffdSRussell King depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON 13381da177e4SLinus Torvalds help 13391da177e4SLinus Torvalds Say Y to include VFP support code in the kernel. This is needed 13401da177e4SLinus Torvalds if your hardware includes a VFP unit. 13411da177e4SLinus Torvalds 13421da177e4SLinus Torvalds Please see <file:Documentation/arm/VFP/release-notes.txt> for 13431da177e4SLinus Torvalds release notes and additional status information. 13441da177e4SLinus Torvalds 13451da177e4SLinus Torvalds Say N if your target does not have VFP hardware. 13461da177e4SLinus Torvalds 134725ebee02SCatalin Marinasconfig VFPv3 134825ebee02SCatalin Marinas bool 134925ebee02SCatalin Marinas depends on VFP 135025ebee02SCatalin Marinas default y if CPU_V7 135125ebee02SCatalin Marinas 1352b5872db4SCatalin Marinasconfig NEON 1353b5872db4SCatalin Marinas bool "Advanced SIMD (NEON) Extension support" 1354b5872db4SCatalin Marinas depends on VFPv3 && CPU_V7 1355b5872db4SCatalin Marinas help 1356b5872db4SCatalin Marinas Say Y to include support code for NEON, the ARMv7 Advanced SIMD 1357b5872db4SCatalin Marinas Extension. 1358b5872db4SCatalin Marinas 13591da177e4SLinus Torvaldsendmenu 13601da177e4SLinus Torvalds 13611da177e4SLinus Torvaldsmenu "Userspace binary formats" 13621da177e4SLinus Torvalds 13631da177e4SLinus Torvaldssource "fs/Kconfig.binfmt" 13641da177e4SLinus Torvalds 13651da177e4SLinus Torvaldsconfig ARTHUR 13661da177e4SLinus Torvalds tristate "RISC OS personality" 1367704bdda0SNicolas Pitre depends on !AEABI 13681da177e4SLinus Torvalds help 13691da177e4SLinus Torvalds Say Y here to include the kernel code necessary if you want to run 13701da177e4SLinus Torvalds Acorn RISC OS/Arthur binaries under Linux. This code is still very 13711da177e4SLinus Torvalds experimental; if this sounds frightening, say N and sleep in peace. 13721da177e4SLinus Torvalds You can also say M here to compile this support as a module (which 13731da177e4SLinus Torvalds will be called arthur). 13741da177e4SLinus Torvalds 13751da177e4SLinus Torvaldsendmenu 13761da177e4SLinus Torvalds 13771da177e4SLinus Torvaldsmenu "Power management options" 13781da177e4SLinus Torvalds 1379eceab4acSRussell Kingsource "kernel/power/Kconfig" 13801da177e4SLinus Torvalds 1381f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE 1382f4cb5700SJohannes Berg def_bool y 1383f4cb5700SJohannes Berg 13841da177e4SLinus Torvaldsendmenu 13851da177e4SLinus Torvalds 1386d5950b43SSam Ravnborgsource "net/Kconfig" 1387d5950b43SSam Ravnborg 13881da177e4SLinus Torvaldsmenu "Device Drivers" 13891da177e4SLinus Torvalds 13901da177e4SLinus Torvaldssource "drivers/base/Kconfig" 13911da177e4SLinus Torvalds 1392c35bf4a5SPavel Macheksource "drivers/connector/Kconfig" 1393c35bf4a5SPavel Machek 1394f12d0d7cSHyok S. Choiif ALIGNMENT_TRAP || !CPU_CP15_MMU 13951da177e4SLinus Torvaldssource "drivers/mtd/Kconfig" 13961da177e4SLinus Torvaldsendif 13971da177e4SLinus Torvalds 13981da177e4SLinus Torvaldssource "drivers/parport/Kconfig" 13991da177e4SLinus Torvalds 14001da177e4SLinus Torvaldssource "drivers/pnp/Kconfig" 14011da177e4SLinus Torvalds 14021da177e4SLinus Torvaldssource "drivers/block/Kconfig" 14031da177e4SLinus Torvalds 140458273e55SRussell King# misc before ide - BLK_DEV_SGIIOC4 depends on SGI_IOC4 140558273e55SRussell King 140658273e55SRussell Kingsource "drivers/misc/Kconfig" 140758273e55SRussell King 14081da177e4SLinus Torvaldssource "drivers/ide/Kconfig" 14091da177e4SLinus Torvalds 14101da177e4SLinus Torvaldssource "drivers/scsi/Kconfig" 14111da177e4SLinus Torvalds 1412eb370f0bSMartin Michlmayrsource "drivers/ata/Kconfig" 1413eb370f0bSMartin Michlmayr 14141da177e4SLinus Torvaldssource "drivers/md/Kconfig" 14151da177e4SLinus Torvalds 14161da177e4SLinus Torvaldssource "drivers/message/fusion/Kconfig" 14171da177e4SLinus Torvalds 14181da177e4SLinus Torvaldssource "drivers/ieee1394/Kconfig" 14191da177e4SLinus Torvalds 14201da177e4SLinus Torvaldssource "drivers/message/i2o/Kconfig" 14211da177e4SLinus Torvalds 1422d5950b43SSam Ravnborgsource "drivers/net/Kconfig" 14231da177e4SLinus Torvalds 14241da177e4SLinus Torvaldssource "drivers/isdn/Kconfig" 14251da177e4SLinus Torvalds 14261da177e4SLinus Torvalds# input before char - char/joystick depends on it. As does USB. 14271da177e4SLinus Torvalds 14281da177e4SLinus Torvaldssource "drivers/input/Kconfig" 14291da177e4SLinus Torvalds 14301da177e4SLinus Torvaldssource "drivers/char/Kconfig" 14311da177e4SLinus Torvalds 14321da177e4SLinus Torvaldssource "drivers/i2c/Kconfig" 14331da177e4SLinus Torvalds 14348ae12a0dSDavid Brownellsource "drivers/spi/Kconfig" 14358ae12a0dSDavid Brownell 1436a9c5fff5SDavid Brownellsource "drivers/gpio/Kconfig" 1437a9c5fff5SDavid Brownell 143804916c0eSAlessandro Zummosource "drivers/w1/Kconfig" 143904916c0eSAlessandro Zummo 144058273e55SRussell Kingsource "drivers/power/Kconfig" 144158273e55SRussell King 1442ad2f931dSJean Delvaresource "drivers/hwmon/Kconfig" 1443ad2f931dSJean Delvare 1444ac9d7efcSRussell Kingsource "drivers/thermal/Kconfig" 1445ac9d7efcSRussell King 144670dfa3f8SRussell Kingsource "drivers/watchdog/Kconfig" 144770dfa3f8SRussell King 144858273e55SRussell Kingsource "drivers/ssb/Kconfig" 144958273e55SRussell King 14501da177e4SLinus Torvalds#source "drivers/l3/Kconfig" 14511da177e4SLinus Torvalds 1452a4e137abSRussell Kingsource "drivers/mfd/Kconfig" 1453a4e137abSRussell King 14541da177e4SLinus Torvaldssource "drivers/media/Kconfig" 14551da177e4SLinus Torvalds 14561da177e4SLinus Torvaldssource "drivers/video/Kconfig" 14571da177e4SLinus Torvalds 14581da177e4SLinus Torvaldssource "sound/Kconfig" 14591da177e4SLinus Torvalds 1460c2dade51SSascha Hauersource "drivers/hid/Kconfig" 1461c2dade51SSascha Hauer 14621da177e4SLinus Torvaldssource "drivers/usb/Kconfig" 14631da177e4SLinus Torvalds 14642f86c3e6SGreg Kroah-Hartmansource "drivers/uwb/Kconfig" 14652f86c3e6SGreg Kroah-Hartman 14661da177e4SLinus Torvaldssource "drivers/mmc/Kconfig" 14671da177e4SLinus Torvalds 1468ac9d7efcSRussell Kingsource "drivers/memstick/Kconfig" 1469ac9d7efcSRussell King 1470ac9d7efcSRussell Kingsource "drivers/accessibility/Kconfig" 1471ac9d7efcSRussell King 147258273e55SRussell Kingsource "drivers/leds/Kconfig" 147358273e55SRussell King 147412b824fbSAlessandro Zummosource "drivers/rtc/Kconfig" 147512b824fbSAlessandro Zummo 14765816815fSDan Williamssource "drivers/dma/Kconfig" 14775816815fSDan Williams 1478abf07b19SDan Williamssource "drivers/dca/Kconfig" 1479abf07b19SDan Williams 1480ac9d7efcSRussell Kingsource "drivers/auxdisplay/Kconfig" 1481ac9d7efcSRussell King 1482ba7e4763SLiam Girdwoodsource "drivers/regulator/Kconfig" 1483ba7e4763SLiam Girdwood 14842dc034a8SHans-Jürgen Kochsource "drivers/uio/Kconfig" 14852dc034a8SHans-Jürgen Koch 14866e38a2baSF. Duncan M. Haldanesource "drivers/staging/Kconfig" 14876e38a2baSF. Duncan M. Haldane 14881da177e4SLinus Torvaldsendmenu 14891da177e4SLinus Torvalds 14901da177e4SLinus Torvaldssource "fs/Kconfig" 14911da177e4SLinus Torvalds 14921da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug" 14931da177e4SLinus Torvalds 14941da177e4SLinus Torvaldssource "security/Kconfig" 14951da177e4SLinus Torvalds 14961da177e4SLinus Torvaldssource "crypto/Kconfig" 14971da177e4SLinus Torvalds 14981da177e4SLinus Torvaldssource "lib/Kconfig" 1499