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 132778f620SRussell King select HAVE_MEMBLOCK 1412b824fbSAlessandro Zummo select RTC_LIB 1575e7153aSRalf Baechle select SYS_SUPPORTS_APM_EMULATION 1624b44a66SWill Deacon select GENERIC_ATOMIC64 if (!CPU_32v6K) 17fe166148SWill Deacon select HAVE_OPROFILE if (HAVE_PERF_EVENTS) 185cbad0ebSJason Wessel select HAVE_ARCH_KGDB 193f550096SMathieu Desnoyers select HAVE_KPROBES if (!XIP_KERNEL) 209edddaa2SAnanth N Mavinakayanahalli select HAVE_KRETPROBES if (HAVE_KPROBES) 21606576ceSSteven Rostedt select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) 221fe53268SDmitry Baryshkov select HAVE_GENERIC_DMA_COHERENT 23e7db7b42SAlbin Tonnerre select HAVE_KERNEL_GZIP 24e7db7b42SAlbin Tonnerre select HAVE_KERNEL_LZO 256e8699f7SAlbin Tonnerre select HAVE_KERNEL_LZMA 267ada189fSJamie Iles select HAVE_PERF_EVENTS 277ada189fSJamie Iles select PERF_USE_VMALLOC 28e513f8bfSWill Deacon select HAVE_REGS_AND_STACK_ACCESS_API 291da177e4SLinus Torvalds help 301da177e4SLinus Torvalds The ARM series is a line of low-power-consumption RISC chip designs 31f6c8965aSMartin Michlmayr licensed by ARM Ltd and targeted at embedded applications and 321da177e4SLinus Torvalds handhelds such as the Compaq IPAQ. ARM-based PCs are no longer 331da177e4SLinus Torvalds manufactured, but legacy ARM-based PC hardware remains popular in 341da177e4SLinus Torvalds Europe. There is an ARM Linux project with a web page at 351da177e4SLinus Torvalds <http://www.arm.linux.org.uk/>. 361da177e4SLinus Torvalds 371a189b97SRussell Kingconfig HAVE_PWM 381a189b97SRussell King bool 391a189b97SRussell King 4075e7153aSRalf Baechleconfig SYS_SUPPORTS_APM_EMULATION 4175e7153aSRalf Baechle bool 4275e7153aSRalf Baechle 430a938b97SDavid Brownellconfig GENERIC_GPIO 440a938b97SDavid Brownell bool 450a938b97SDavid Brownell 46746140c7SKevin Hilmanconfig GENERIC_TIME 47746140c7SKevin Hilman bool 485cfc8ee0SJohn Stultz default y 495cfc8ee0SJohn Stultz 505cfc8ee0SJohn Stultzconfig ARCH_USES_GETTIMEOFFSET 515cfc8ee0SJohn Stultz bool 525cfc8ee0SJohn Stultz default n 53746140c7SKevin Hilman 540567a0c0SKevin Hilmanconfig GENERIC_CLOCKEVENTS 550567a0c0SKevin Hilman bool 560567a0c0SKevin Hilman 57a8655e83SCatalin Marinasconfig GENERIC_CLOCKEVENTS_BROADCAST 58a8655e83SCatalin Marinas bool 59a8655e83SCatalin Marinas depends on GENERIC_CLOCKEVENTS 605388a6b2SRussell King default y if SMP 61a8655e83SCatalin Marinas 62bc581770SLinus Walleijconfig HAVE_TCM 63bc581770SLinus Walleij bool 64bc581770SLinus Walleij select GENERIC_ALLOCATOR 65bc581770SLinus Walleij 66e119bfffSRussell Kingconfig HAVE_PROC_CPU 67e119bfffSRussell King bool 68e119bfffSRussell King 695ea81769SAl Viroconfig NO_IOPORT 705ea81769SAl Viro bool 715ea81769SAl Viro 721da177e4SLinus Torvaldsconfig EISA 731da177e4SLinus Torvalds bool 741da177e4SLinus Torvalds ---help--- 751da177e4SLinus Torvalds The Extended Industry Standard Architecture (EISA) bus was 761da177e4SLinus Torvalds developed as an open alternative to the IBM MicroChannel bus. 771da177e4SLinus Torvalds 781da177e4SLinus Torvalds The EISA bus provided some of the features of the IBM MicroChannel 791da177e4SLinus Torvalds bus while maintaining backward compatibility with cards made for 801da177e4SLinus Torvalds the older ISA bus. The EISA bus saw limited use between 1988 and 811da177e4SLinus Torvalds 1995 when it was made obsolete by the PCI bus. 821da177e4SLinus Torvalds 831da177e4SLinus Torvalds Say Y here if you are building a kernel for an EISA-based machine. 841da177e4SLinus Torvalds 851da177e4SLinus Torvalds Otherwise, say N. 861da177e4SLinus Torvalds 871da177e4SLinus Torvaldsconfig SBUS 881da177e4SLinus Torvalds bool 891da177e4SLinus Torvalds 901da177e4SLinus Torvaldsconfig MCA 911da177e4SLinus Torvalds bool 921da177e4SLinus Torvalds help 931da177e4SLinus Torvalds MicroChannel Architecture is found in some IBM PS/2 machines and 941da177e4SLinus Torvalds laptops. It is a bus system similar to PCI or ISA. See 951da177e4SLinus Torvalds <file:Documentation/mca.txt> (and especially the web page given 961da177e4SLinus Torvalds there) before attempting to build an MCA bus kernel. 971da177e4SLinus Torvalds 984a2581a0SThomas Gleixnerconfig GENERIC_HARDIRQS 994a2581a0SThomas Gleixner bool 1004a2581a0SThomas Gleixner default y 1014a2581a0SThomas Gleixner 102f16fb1ecSRussell Kingconfig STACKTRACE_SUPPORT 103f16fb1ecSRussell King bool 104f16fb1ecSRussell King default y 105f16fb1ecSRussell King 106f76e9154SNicolas Pitreconfig HAVE_LATENCYTOP_SUPPORT 107f76e9154SNicolas Pitre bool 108f76e9154SNicolas Pitre depends on !SMP 109f76e9154SNicolas Pitre default y 110f76e9154SNicolas Pitre 111f16fb1ecSRussell Kingconfig LOCKDEP_SUPPORT 112f16fb1ecSRussell King bool 113f16fb1ecSRussell King default y 114f16fb1ecSRussell King 1157ad1bcb2SRussell Kingconfig TRACE_IRQFLAGS_SUPPORT 1167ad1bcb2SRussell King bool 1177ad1bcb2SRussell King default y 1187ad1bcb2SRussell King 1194a2581a0SThomas Gleixnerconfig HARDIRQS_SW_RESEND 1204a2581a0SThomas Gleixner bool 1214a2581a0SThomas Gleixner default y 1224a2581a0SThomas Gleixner 1234a2581a0SThomas Gleixnerconfig GENERIC_IRQ_PROBE 1244a2581a0SThomas Gleixner bool 1254a2581a0SThomas Gleixner default y 1264a2581a0SThomas Gleixner 12795c354feSNick Pigginconfig GENERIC_LOCKBREAK 12895c354feSNick Piggin bool 12995c354feSNick Piggin default y 13095c354feSNick Piggin depends on SMP && PREEMPT 13195c354feSNick Piggin 1321da177e4SLinus Torvaldsconfig RWSEM_GENERIC_SPINLOCK 1331da177e4SLinus Torvalds bool 1341da177e4SLinus Torvalds default y 1351da177e4SLinus Torvalds 1361da177e4SLinus Torvaldsconfig RWSEM_XCHGADD_ALGORITHM 1371da177e4SLinus Torvalds bool 1381da177e4SLinus Torvalds 139f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32 140f0d1b0b3SDavid Howells bool 141f0d1b0b3SDavid Howells 142f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64 143f0d1b0b3SDavid Howells bool 144f0d1b0b3SDavid Howells 14589c52ed4SBen Dooksconfig ARCH_HAS_CPUFREQ 14689c52ed4SBen Dooks bool 14789c52ed4SBen Dooks help 14889c52ed4SBen Dooks Internal node to signify that the ARCH has CPUFREQ support 14989c52ed4SBen Dooks and that the relevant menu configurations are displayed for 15089c52ed4SBen Dooks it. 15189c52ed4SBen Dooks 152b89c3b16SAkinobu Mitaconfig GENERIC_HWEIGHT 153b89c3b16SAkinobu Mita bool 154b89c3b16SAkinobu Mita default y 155b89c3b16SAkinobu Mita 1561da177e4SLinus Torvaldsconfig GENERIC_CALIBRATE_DELAY 1571da177e4SLinus Torvalds bool 1581da177e4SLinus Torvalds default y 1591da177e4SLinus Torvalds 160a08b6b79Sviro@ZenIV.linux.org.ukconfig ARCH_MAY_HAVE_PC_FDC 161a08b6b79Sviro@ZenIV.linux.org.uk bool 162a08b6b79Sviro@ZenIV.linux.org.uk 1635ac6da66SChristoph Lameterconfig ZONE_DMA 1645ac6da66SChristoph Lameter bool 1655ac6da66SChristoph Lameter 166ccd7ab7fSFUJITA Tomonoriconfig NEED_DMA_MAP_STATE 167ccd7ab7fSFUJITA Tomonori def_bool y 168ccd7ab7fSFUJITA Tomonori 1691da177e4SLinus Torvaldsconfig GENERIC_ISA_DMA 1701da177e4SLinus Torvalds bool 1711da177e4SLinus Torvalds 1721da177e4SLinus Torvaldsconfig FIQ 1731da177e4SLinus Torvalds bool 1741da177e4SLinus Torvalds 175034d2f5aSAl Viroconfig ARCH_MTD_XIP 176034d2f5aSAl Viro bool 177034d2f5aSAl Viro 17860a752efSPaulius Zaleckasconfig GENERIC_HARDIRQS_NO__DO_IRQ 17960a752efSPaulius Zaleckas def_bool y 18060a752efSPaulius Zaleckas 181d6d502faSKukjin Kimconfig ARM_L1_CACHE_SHIFT_6 182d6d502faSKukjin Kim bool 183d6d502faSKukjin Kim help 184d6d502faSKukjin Kim Setting ARM L1 cache line size to 64 Bytes. 185d6d502faSKukjin Kim 186c760fc19SHyok S. Choiconfig VECTORS_BASE 187c760fc19SHyok S. Choi hex 1886afd6faeSHyok S. Choi default 0xffff0000 if MMU || CPU_HIGH_VECTOR 189c760fc19SHyok S. Choi default DRAM_BASE if REMAP_VECTORS_TO_RAM 190c760fc19SHyok S. Choi default 0x00000000 191c760fc19SHyok S. Choi help 192c760fc19SHyok S. Choi The base address of exception vectors. 193c760fc19SHyok S. Choi 1941da177e4SLinus Torvaldssource "init/Kconfig" 1951da177e4SLinus Torvalds 196dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer" 197dc52ddc0SMatt Helsley 1981da177e4SLinus Torvaldsmenu "System Type" 1991da177e4SLinus Torvalds 2003c427975SHyok S. Choiconfig MMU 2013c427975SHyok S. Choi bool "MMU-based Paged Memory Management Support" 2023c427975SHyok S. Choi default y 2033c427975SHyok S. Choi help 2043c427975SHyok S. Choi Select if you want MMU-based virtualised addressing space 2053c427975SHyok S. Choi support by paged memory management. If unsure, say 'Y'. 2063c427975SHyok S. Choi 207ccf50e23SRussell King# 208ccf50e23SRussell King# The "ARM system type" choice list is ordered alphabetically by option 209ccf50e23SRussell King# text. Please add new entries in the option alphabetic order. 210ccf50e23SRussell King# 2111da177e4SLinus Torvaldschoice 2121da177e4SLinus Torvalds prompt "ARM system type" 2136a0e2430SCatalin Marinas default ARCH_VERSATILE 2141da177e4SLinus Torvalds 2154af6fee1SDeepak Saxenaconfig ARCH_AAEC2000 2164af6fee1SDeepak Saxena bool "Agilent AAEC-2000 based" 217c750815eSRussell King select CPU_ARM920T 2184af6fee1SDeepak Saxena select ARM_AMBA 2199483a578SDavid Brownell select HAVE_CLK 2205cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 2214af6fee1SDeepak Saxena help 2224af6fee1SDeepak Saxena This enables support for systems based on the Agilent AAEC-2000 2234af6fee1SDeepak Saxena 2244af6fee1SDeepak Saxenaconfig ARCH_INTEGRATOR 2254af6fee1SDeepak Saxena bool "ARM Ltd. Integrator family" 2264af6fee1SDeepak Saxena select ARM_AMBA 22789c52ed4SBen Dooks select ARCH_HAS_CPUFREQ 228d72fbdf0SRussell King select COMMON_CLKDEV 229c5a0adb5SRussell King select ICST 23013edd86dSRussell King select GENERIC_CLOCKEVENTS 231f4b8b319SRussell King select PLAT_VERSATILE 2324af6fee1SDeepak Saxena help 2334af6fee1SDeepak Saxena Support for ARM's Integrator platform. 2344af6fee1SDeepak Saxena 2354af6fee1SDeepak Saxenaconfig ARCH_REALVIEW 2364af6fee1SDeepak Saxena bool "ARM Ltd. RealView family" 2374af6fee1SDeepak Saxena select ARM_AMBA 238cf30fb4aSRussell King select COMMON_CLKDEV 239c5a0adb5SRussell King select ICST 240ae30ceacSCatalin Marinas select GENERIC_CLOCKEVENTS 241eb7fffa3SRussell King select ARCH_WANT_OPTIONAL_GPIOLIB 242f4b8b319SRussell King select PLAT_VERSATILE 243e3887714SRussell King select ARM_TIMER_SP804 244b56ba8aaSColin Tuckley select GPIO_PL061 if GPIOLIB 2454af6fee1SDeepak Saxena help 2464af6fee1SDeepak Saxena This enables support for ARM Ltd RealView boards. 2474af6fee1SDeepak Saxena 2484af6fee1SDeepak Saxenaconfig ARCH_VERSATILE 2494af6fee1SDeepak Saxena bool "ARM Ltd. Versatile family" 2504af6fee1SDeepak Saxena select ARM_AMBA 2514af6fee1SDeepak Saxena select ARM_VIC 25271a06da0SRussell King select COMMON_CLKDEV 253c5a0adb5SRussell King select ICST 25489df1272SKevin Hilman select GENERIC_CLOCKEVENTS 255bbeddc43SRussell King select ARCH_WANT_OPTIONAL_GPIOLIB 256f4b8b319SRussell King select PLAT_VERSATILE 257e3887714SRussell King select ARM_TIMER_SP804 2584af6fee1SDeepak Saxena help 2594af6fee1SDeepak Saxena This enables support for ARM Ltd Versatile board. 2604af6fee1SDeepak Saxena 261ceade897SRussell Kingconfig ARCH_VEXPRESS 262ceade897SRussell King bool "ARM Ltd. Versatile Express family" 263ceade897SRussell King select ARCH_WANT_OPTIONAL_GPIOLIB 264ceade897SRussell King select ARM_AMBA 265ceade897SRussell King select ARM_TIMER_SP804 266ceade897SRussell King select COMMON_CLKDEV 267ceade897SRussell King select GENERIC_CLOCKEVENTS 268ceade897SRussell King select HAVE_CLK 269ceade897SRussell King select ICST 270ceade897SRussell King select PLAT_VERSATILE 271ceade897SRussell King help 272ceade897SRussell King This enables support for the ARM Ltd Versatile Express boards. 273ceade897SRussell King 2748fc5ffa0SAndrew Victorconfig ARCH_AT91 2758fc5ffa0SAndrew Victor bool "Atmel AT91" 276f373e8c0SRyan Mallon select ARCH_REQUIRE_GPIOLIB 27793686ae8SDavid Brownell select HAVE_CLK 2785cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 2794af6fee1SDeepak Saxena help 2802b3b3516SAndrew Victor This enables support for systems based on the Atmel AT91RM9200, 2812b3b3516SAndrew Victor AT91SAM9 and AT91CAP9 processors. 2824af6fee1SDeepak Saxena 283ccf50e23SRussell Kingconfig ARCH_BCMRING 284ccf50e23SRussell King bool "Broadcom BCMRING" 285ccf50e23SRussell King depends on MMU 286ccf50e23SRussell King select CPU_V6 287ccf50e23SRussell King select ARM_AMBA 288ccf50e23SRussell King select COMMON_CLKDEV 289ccf50e23SRussell King select GENERIC_CLOCKEVENTS 290ccf50e23SRussell King select ARCH_WANT_OPTIONAL_GPIOLIB 291ccf50e23SRussell King help 292ccf50e23SRussell King Support for Broadcom's BCMRing platform. 293ccf50e23SRussell King 2941da177e4SLinus Torvaldsconfig ARCH_CLPS711X 2954af6fee1SDeepak Saxena bool "Cirrus Logic CLPS711x/EP721x-based" 296c750815eSRussell King select CPU_ARM720T 2975cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 298f999b8bdSMartin Michlmayr help 299f999b8bdSMartin Michlmayr Support for Cirrus Logic 711x/721x based boards. 3001da177e4SLinus Torvalds 301d94f944eSAnton Vorontsovconfig ARCH_CNS3XXX 302d94f944eSAnton Vorontsov bool "Cavium Networks CNS3XXX family" 303d94f944eSAnton Vorontsov select CPU_V6 304d94f944eSAnton Vorontsov select GENERIC_CLOCKEVENTS 305d94f944eSAnton Vorontsov select ARM_GIC 3065f32f7a0SAnton Vorontsov select PCI_DOMAINS if PCI 307d94f944eSAnton Vorontsov help 308d94f944eSAnton Vorontsov Support for Cavium Networks CNS3XXX platform. 309d94f944eSAnton Vorontsov 310788c9700SRussell Kingconfig ARCH_GEMINI 311788c9700SRussell King bool "Cortina Systems Gemini" 312788c9700SRussell King select CPU_FA526 313788c9700SRussell King select ARCH_REQUIRE_GPIOLIB 3145cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 315788c9700SRussell King help 316788c9700SRussell King Support for the Cortina Systems Gemini family SoCs 317788c9700SRussell King 3181da177e4SLinus Torvaldsconfig ARCH_EBSA110 3191da177e4SLinus Torvalds bool "EBSA-110" 320c750815eSRussell King select CPU_SA110 321f7e68bbfSRussell King select ISA 322c5eb2a2bSRussell King select NO_IOPORT 3235cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 3241da177e4SLinus Torvalds help 3251da177e4SLinus Torvalds This is an evaluation board for the StrongARM processor available 326f6c8965aSMartin Michlmayr from Digital. It has limited hardware on-board, including an 3271da177e4SLinus Torvalds Ethernet interface, two PCMCIA sockets, two serial ports and a 3281da177e4SLinus Torvalds parallel port. 3291da177e4SLinus Torvalds 330e7736d47SLennert Buytenhekconfig ARCH_EP93XX 331e7736d47SLennert Buytenhek bool "EP93xx-based" 332c750815eSRussell King select CPU_ARM920T 333e7736d47SLennert Buytenhek select ARM_AMBA 334e7736d47SLennert Buytenhek select ARM_VIC 335ae696fd5SRussell King select COMMON_CLKDEV 3367444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 337eb33575cSMel Gorman select ARCH_HAS_HOLES_MEMORYMODEL 3385cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 339e7736d47SLennert Buytenhek help 340e7736d47SLennert Buytenhek This enables support for the Cirrus EP93xx series of CPUs. 341e7736d47SLennert Buytenhek 3421da177e4SLinus Torvaldsconfig ARCH_FOOTBRIDGE 3431da177e4SLinus Torvalds bool "FootBridge" 344c750815eSRussell King select CPU_SA110 3451da177e4SLinus Torvalds select FOOTBRIDGE 3465cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 347f999b8bdSMartin Michlmayr help 348f999b8bdSMartin Michlmayr Support for systems based on the DC21285 companion chip 349f999b8bdSMartin Michlmayr ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder. 3501da177e4SLinus Torvalds 351788c9700SRussell Kingconfig ARCH_MXC 352788c9700SRussell King bool "Freescale MXC/iMX-based" 353788c9700SRussell King select GENERIC_CLOCKEVENTS 354788c9700SRussell King select ARCH_REQUIRE_GPIOLIB 35503e09cd8SUwe Kleine-König select COMMON_CLKDEV 356788c9700SRussell King help 357788c9700SRussell King Support for Freescale MXC/iMX-based family of processors 358788c9700SRussell King 3597bd0f2f5Sdmitry pervushinconfig ARCH_STMP3XXX 3607bd0f2f5Sdmitry pervushin bool "Freescale STMP3xxx" 3617bd0f2f5Sdmitry pervushin select CPU_ARM926T 3627bd0f2f5Sdmitry pervushin select COMMON_CLKDEV 3637bd0f2f5Sdmitry pervushin select ARCH_REQUIRE_GPIOLIB 3647bd0f2f5Sdmitry pervushin select GENERIC_CLOCKEVENTS 3657bd0f2f5Sdmitry pervushin select USB_ARCH_HAS_EHCI 3667bd0f2f5Sdmitry pervushin help 3677bd0f2f5Sdmitry pervushin Support for systems based on the Freescale 3xxx CPUs. 3687bd0f2f5Sdmitry pervushin 3694af6fee1SDeepak Saxenaconfig ARCH_NETX 3704af6fee1SDeepak Saxena bool "Hilscher NetX based" 371c750815eSRussell King select CPU_ARM926T 3724af6fee1SDeepak Saxena select ARM_VIC 3732fcfe6b8SUwe Kleine-König select GENERIC_CLOCKEVENTS 374f999b8bdSMartin Michlmayr help 3754af6fee1SDeepak Saxena This enables support for systems based on the Hilscher NetX Soc 3764af6fee1SDeepak Saxena 3774af6fee1SDeepak Saxenaconfig ARCH_H720X 3784af6fee1SDeepak Saxena bool "Hynix HMS720x-based" 379c750815eSRussell King select CPU_ARM720T 3804af6fee1SDeepak Saxena select ISA_DMA_API 3815cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 3824af6fee1SDeepak Saxena help 3834af6fee1SDeepak Saxena This enables support for systems based on the Hynix HMS720x 3844af6fee1SDeepak Saxena 3853b938be6SRussell Kingconfig ARCH_IOP13XX 3863b938be6SRussell King bool "IOP13xx-based" 3873b938be6SRussell King depends on MMU 388c750815eSRussell King select CPU_XSC3 3893b938be6SRussell King select PLAT_IOP 3903b938be6SRussell King select PCI 3913b938be6SRussell King select ARCH_SUPPORTS_MSI 3928d5796d2SLennert Buytenhek select VMSPLIT_1G 3933b938be6SRussell King help 3943b938be6SRussell King Support for Intel's IOP13XX (XScale) family of processors. 3953b938be6SRussell King 3963f7e5815SLennert Buytenhekconfig ARCH_IOP32X 3973f7e5815SLennert Buytenhek bool "IOP32x-based" 398a4f7e763SRussell King depends on MMU 399c750815eSRussell King select CPU_XSCALE 4007ae1f7ecSLennert Buytenhek select PLAT_IOP 401f7e68bbfSRussell King select PCI 402bb2b180cSRussell King select ARCH_REQUIRE_GPIOLIB 403f999b8bdSMartin Michlmayr help 4043f7e5815SLennert Buytenhek Support for Intel's 80219 and IOP32X (XScale) family of 4053f7e5815SLennert Buytenhek processors. 4063f7e5815SLennert Buytenhek 4073f7e5815SLennert Buytenhekconfig ARCH_IOP33X 4083f7e5815SLennert Buytenhek bool "IOP33x-based" 4093f7e5815SLennert Buytenhek depends on MMU 410c750815eSRussell King select CPU_XSCALE 4117ae1f7ecSLennert Buytenhek select PLAT_IOP 4123f7e5815SLennert Buytenhek select PCI 413bb2b180cSRussell King select ARCH_REQUIRE_GPIOLIB 4143f7e5815SLennert Buytenhek help 4153f7e5815SLennert Buytenhek Support for Intel's IOP33X (XScale) family of processors. 4161da177e4SLinus Torvalds 4173b938be6SRussell Kingconfig ARCH_IXP23XX 4183b938be6SRussell King bool "IXP23XX-based" 419588ef769SDan Williams depends on MMU 420c750815eSRussell King select CPU_XSC3 421285f5fa7SDan Williams select PCI 4225cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 423285f5fa7SDan Williams help 4243b938be6SRussell King Support for Intel's IXP23xx (XScale) family of processors. 4251da177e4SLinus Torvalds 4261da177e4SLinus Torvaldsconfig ARCH_IXP2000 4271da177e4SLinus Torvalds bool "IXP2400/2800-based" 428a4f7e763SRussell King depends on MMU 429c750815eSRussell King select CPU_XSCALE 430f7e68bbfSRussell King select PCI 4315cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 432f999b8bdSMartin Michlmayr help 433f999b8bdSMartin Michlmayr Support for Intel's IXP2400/2800 (XScale) family of processors. 4341da177e4SLinus Torvalds 4353b938be6SRussell Kingconfig ARCH_IXP4XX 4363b938be6SRussell King bool "IXP4xx-based" 437a4f7e763SRussell King depends on MMU 438c750815eSRussell King select CPU_XSCALE 4398858e9afSMilan Svoboda select GENERIC_GPIO 4403b938be6SRussell King select GENERIC_CLOCKEVENTS 441485bdde7SRussell King select DMABOUNCE if PCI 442c4713074SLennert Buytenhek help 4433b938be6SRussell King Support for Intel's IXP4XX (XScale) family of processors. 444c4713074SLennert Buytenhek 445edabd38eSSaeed Bisharaconfig ARCH_DOVE 446edabd38eSSaeed Bishara bool "Marvell Dove" 447edabd38eSSaeed Bishara select PCI 448edabd38eSSaeed Bishara select ARCH_REQUIRE_GPIOLIB 449edabd38eSSaeed Bishara select GENERIC_CLOCKEVENTS 450edabd38eSSaeed Bishara select PLAT_ORION 451edabd38eSSaeed Bishara help 452edabd38eSSaeed Bishara Support for the Marvell Dove SoC 88AP510 453edabd38eSSaeed Bishara 454651c74c7SSaeed Bisharaconfig ARCH_KIRKWOOD 455651c74c7SSaeed Bishara bool "Marvell Kirkwood" 456c750815eSRussell King select CPU_FEROCEON 457651c74c7SSaeed Bishara select PCI 458a8865655SErik Benada select ARCH_REQUIRE_GPIOLIB 459651c74c7SSaeed Bishara select GENERIC_CLOCKEVENTS 460651c74c7SSaeed Bishara select PLAT_ORION 461651c74c7SSaeed Bishara help 462651c74c7SSaeed Bishara Support for the following Marvell Kirkwood series SoCs: 463651c74c7SSaeed Bishara 88F6180, 88F6192 and 88F6281. 464651c74c7SSaeed Bishara 465788c9700SRussell Kingconfig ARCH_LOKI 466788c9700SRussell King bool "Marvell Loki (88RC8480)" 467788c9700SRussell King select CPU_FEROCEON 468788c9700SRussell King select GENERIC_CLOCKEVENTS 469788c9700SRussell King select PLAT_ORION 470788c9700SRussell King help 471788c9700SRussell King Support for the Marvell Loki (88RC8480) SoC. 472788c9700SRussell King 47340805949SKevin Wellsconfig ARCH_LPC32XX 47440805949SKevin Wells bool "NXP LPC32XX" 47540805949SKevin Wells select CPU_ARM926T 47640805949SKevin Wells select ARCH_REQUIRE_GPIOLIB 47740805949SKevin Wells select HAVE_IDE 47840805949SKevin Wells select ARM_AMBA 47940805949SKevin Wells select USB_ARCH_HAS_OHCI 48040805949SKevin Wells select COMMON_CLKDEV 48140805949SKevin Wells select GENERIC_TIME 48240805949SKevin Wells select GENERIC_CLOCKEVENTS 48340805949SKevin Wells help 48440805949SKevin Wells Support for the NXP LPC32XX family of processors 48540805949SKevin Wells 486788c9700SRussell Kingconfig ARCH_MV78XX0 487788c9700SRussell King bool "Marvell MV78xx0" 488788c9700SRussell King select CPU_FEROCEON 489788c9700SRussell King select PCI 490a8865655SErik Benada select ARCH_REQUIRE_GPIOLIB 491788c9700SRussell King select GENERIC_CLOCKEVENTS 492788c9700SRussell King select PLAT_ORION 493788c9700SRussell King help 494788c9700SRussell King Support for the following Marvell MV78xx0 series SoCs: 495788c9700SRussell King MV781x0, MV782x0. 496788c9700SRussell King 497788c9700SRussell Kingconfig ARCH_ORION5X 498788c9700SRussell King bool "Marvell Orion" 499788c9700SRussell King depends on MMU 500788c9700SRussell King select CPU_FEROCEON 501788c9700SRussell King select PCI 502a8865655SErik Benada select ARCH_REQUIRE_GPIOLIB 503788c9700SRussell King select GENERIC_CLOCKEVENTS 504788c9700SRussell King select PLAT_ORION 505788c9700SRussell King help 506788c9700SRussell King Support for the following Marvell Orion 5x series SoCs: 507788c9700SRussell King Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182), 508788c9700SRussell King Orion-2 (5281), Orion-1-90 (6183). 509788c9700SRussell King 510788c9700SRussell Kingconfig ARCH_MMP 5112f7e8faeSHaojian Zhuang bool "Marvell PXA168/910/MMP2" 512788c9700SRussell King depends on MMU 513788c9700SRussell King select ARCH_REQUIRE_GPIOLIB 514788c9700SRussell King select COMMON_CLKDEV 515788c9700SRussell King select GENERIC_CLOCKEVENTS 516788c9700SRussell King select TICK_ONESHOT 517788c9700SRussell King select PLAT_PXA 518788c9700SRussell King help 5192f7e8faeSHaojian Zhuang Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line. 520788c9700SRussell King 521c53c9cf6SAndrew Victorconfig ARCH_KS8695 522c53c9cf6SAndrew Victor bool "Micrel/Kendin KS8695" 523c750815eSRussell King select CPU_ARM922T 52472880ad8SDaniel Silverstone select ARCH_REQUIRE_GPIOLIB 5255cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 526c53c9cf6SAndrew Victor help 527c53c9cf6SAndrew Victor Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based 528c53c9cf6SAndrew Victor System-on-Chip devices. 529c53c9cf6SAndrew Victor 5309918cda5SUwe Kleine-Königconfig ARCH_NS9XXX 5319918cda5SUwe Kleine-König bool "NetSilicon NS9xxx" 532c750815eSRussell King select CPU_ARM926T 533689f2a01SUwe Kleine-König select GENERIC_GPIO 534c0bb87f7SUwe Kleine-König select GENERIC_CLOCKEVENTS 5359483a578SDavid Brownell select HAVE_CLK 5369918cda5SUwe Kleine-König help 5379918cda5SUwe Kleine-König Say Y here if you intend to run this kernel on a NetSilicon NS9xxx 5389918cda5SUwe Kleine-König System. 5399918cda5SUwe Kleine-König 5409918cda5SUwe Kleine-König <http://www.digi.com/products/microprocessors/index.jsp> 5419918cda5SUwe Kleine-König 542788c9700SRussell Kingconfig ARCH_W90X900 543788c9700SRussell King bool "Nuvoton W90X900 CPU" 544788c9700SRussell King select CPU_ARM926T 545c52d3d68Swanzongshun select ARCH_REQUIRE_GPIOLIB 5460e4a34bbSwanzongshun select COMMON_CLKDEV 54758b5369eSwanzongshun select GENERIC_CLOCKEVENTS 548777f9bebSLennert Buytenhek help 549a8bc4eadSwanzongshun Support for Nuvoton (Winbond logic dept.) ARM9 processor, 550a8bc4eadSwanzongshun At present, the w90x900 has been renamed nuc900, regarding 551a8bc4eadSwanzongshun the ARM series product line, you can login the following 552a8bc4eadSwanzongshun link address to know more. 553a8bc4eadSwanzongshun 554a8bc4eadSwanzongshun <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/ 555a8bc4eadSwanzongshun ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller> 556585cf175STzachi Perelstein 557a62e9030Swanzongshunconfig ARCH_NUC93X 558a62e9030Swanzongshun bool "Nuvoton NUC93X CPU" 559a62e9030Swanzongshun select CPU_ARM926T 560a62e9030Swanzongshun select COMMON_CLKDEV 561a62e9030Swanzongshun help 562a62e9030Swanzongshun Support for Nuvoton (Winbond logic dept.) NUC93X MCU,The NUC93X is a 563a62e9030Swanzongshun low-power and high performance MPEG-4/JPEG multimedia controller chip. 564a62e9030Swanzongshun 565c5f80065SErik Gillingconfig ARCH_TEGRA 566c5f80065SErik Gilling bool "NVIDIA Tegra" 567c5f80065SErik Gilling select GENERIC_TIME 568c5f80065SErik Gilling select GENERIC_CLOCKEVENTS 569c5f80065SErik Gilling select GENERIC_GPIO 570c5f80065SErik Gilling select HAVE_CLK 571*d8611961SColin Cross select COMMON_CLKDEV 572c5f80065SErik Gilling select ARCH_HAS_BARRIERS if CACHE_L2X0 573c5f80065SErik Gilling help 574c5f80065SErik Gilling This enables support for NVIDIA Tegra based systems (Tegra APX, 575c5f80065SErik Gilling Tegra 6xx and Tegra 2 series). 576c5f80065SErik Gilling 5774af6fee1SDeepak Saxenaconfig ARCH_PNX4008 5784af6fee1SDeepak Saxena bool "Philips Nexperia PNX4008 Mobile" 579c750815eSRussell King select CPU_ARM926T 5806985a5adSRussell King select COMMON_CLKDEV 5815cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 5824af6fee1SDeepak Saxena help 5834af6fee1SDeepak Saxena This enables support for Philips PNX4008 mobile platform. 5844af6fee1SDeepak Saxena 5851da177e4SLinus Torvaldsconfig ARCH_PXA 5862c8086a5Seric miao bool "PXA2xx/PXA3xx-based" 587a4f7e763SRussell King depends on MMU 588034d2f5aSAl Viro select ARCH_MTD_XIP 58989c52ed4SBen Dooks select ARCH_HAS_CPUFREQ 5908c3abc7dSRussell King select COMMON_CLKDEV 5917444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 592981d0f39SEric Miao select GENERIC_CLOCKEVENTS 593a88264c2SRussell King select TICK_ONESHOT 594bd5ce433SEric Miao select PLAT_PXA 595f999b8bdSMartin Michlmayr help 5962c8086a5Seric miao Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 5971da177e4SLinus Torvalds 598788c9700SRussell Kingconfig ARCH_MSM 599788c9700SRussell King bool "Qualcomm MSM" 6004b536b8dSSteve Muckle select HAVE_CLK 60149cbe786SEric Miao select GENERIC_CLOCKEVENTS 602923a081cSPavel Machek select ARCH_REQUIRE_GPIOLIB 60349cbe786SEric Miao help 6044b53eb4fSDaniel Walker Support for Qualcomm MSM/QSD based systems. This runs on the 6054b53eb4fSDaniel Walker apps processor of the MSM/QSD and depends on a shared memory 6064b53eb4fSDaniel Walker interface to the modem processor which runs the baseband 6074b53eb4fSDaniel Walker stack and controls some vital subsystems 6084b53eb4fSDaniel Walker (clock and power control, etc). 60949cbe786SEric Miao 610c793c1b0SMagnus Dammconfig ARCH_SHMOBILE 611c793c1b0SMagnus Damm bool "Renesas SH-Mobile" 612c793c1b0SMagnus Damm help 613c793c1b0SMagnus Damm Support for Renesas's SH-Mobile ARM platforms 614c793c1b0SMagnus Damm 6151da177e4SLinus Torvaldsconfig ARCH_RPC 6161da177e4SLinus Torvalds bool "RiscPC" 6171da177e4SLinus Torvalds select ARCH_ACORN 6181da177e4SLinus Torvalds select FIQ 6191da177e4SLinus Torvalds select TIMER_ACORN 620a08b6b79Sviro@ZenIV.linux.org.uk select ARCH_MAY_HAVE_PC_FDC 621341eb781SBen Dooks select HAVE_PATA_PLATFORM 622065909b9SRussell King select ISA_DMA_API 6235ea81769SAl Viro select NO_IOPORT 62407f841b7SRussell King select ARCH_SPARSEMEM_ENABLE 6255cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 6261da177e4SLinus Torvalds help 6271da177e4SLinus Torvalds On the Acorn Risc-PC, Linux can support the internal IDE disk and 6281da177e4SLinus Torvalds CD-ROM interface, serial and parallel port, and the floppy drive. 6291da177e4SLinus Torvalds 6301da177e4SLinus Torvaldsconfig ARCH_SA1100 6311da177e4SLinus Torvalds bool "SA1100-based" 632c750815eSRussell King select CPU_SA1100 633f7e68bbfSRussell King select ISA 63405944d74SRussell King select ARCH_SPARSEMEM_ENABLE 635034d2f5aSAl Viro select ARCH_MTD_XIP 63689c52ed4SBen Dooks select ARCH_HAS_CPUFREQ 6371937f5b9SRussell King select CPU_FREQ 6383e238be2SRussell King select GENERIC_CLOCKEVENTS 6399483a578SDavid Brownell select HAVE_CLK 6403e238be2SRussell King select TICK_ONESHOT 6417444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 642f999b8bdSMartin Michlmayr help 643f999b8bdSMartin Michlmayr Support for StrongARM 11x0 based boards. 6441da177e4SLinus Torvalds 6451da177e4SLinus Torvaldsconfig ARCH_S3C2410 64663b1f51bSBen Dooks bool "Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443, S3C2450" 6470a938b97SDavid Brownell select GENERIC_GPIO 6489d56c02aSBen Dooks select ARCH_HAS_CPUFREQ 6499483a578SDavid Brownell select HAVE_CLK 6505cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 6511da177e4SLinus Torvalds help 6521da177e4SLinus Torvalds Samsung S3C2410X CPU based systems, such as the Simtec Electronics 6531da177e4SLinus Torvalds BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or 654f6c8965aSMartin Michlmayr the Samsung SMDK2410 development board (and derivatives). 6551da177e4SLinus Torvalds 65663b1f51bSBen Dooks Note, the S3C2416 and the S3C2450 are so close that they even share 65763b1f51bSBen Dooks the same SoC ID code. This means that there is no seperate machine 65863b1f51bSBen Dooks directory (no arch/arm/mach-s3c2450) as the S3C2416 was first. 65963b1f51bSBen Dooks 660a08ab637SBen Dooksconfig ARCH_S3C64XX 661a08ab637SBen Dooks bool "Samsung S3C64XX" 66289f1fa08SBen Dooks select PLAT_SAMSUNG 66389f0ce72SBen Dooks select CPU_V6 66489f0ce72SBen Dooks select ARM_VIC 665a08ab637SBen Dooks select HAVE_CLK 66689f0ce72SBen Dooks select NO_IOPORT 6675cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 66889c52ed4SBen Dooks select ARCH_HAS_CPUFREQ 66989f0ce72SBen Dooks select ARCH_REQUIRE_GPIOLIB 67089f0ce72SBen Dooks select SAMSUNG_CLKSRC 67189f0ce72SBen Dooks select SAMSUNG_IRQ_VIC_TIMER 67289f0ce72SBen Dooks select SAMSUNG_IRQ_UART 67389f0ce72SBen Dooks select S3C_GPIO_TRACK 67489f0ce72SBen Dooks select S3C_GPIO_PULL_UPDOWN 67589f0ce72SBen Dooks select S3C_GPIO_CFG_S3C24XX 67689f0ce72SBen Dooks select S3C_GPIO_CFG_S3C64XX 67789f0ce72SBen Dooks select S3C_DEV_NAND 67889f0ce72SBen Dooks select USB_ARCH_HAS_OHCI 67989f0ce72SBen Dooks select SAMSUNG_GPIOLIB_4BIT 680a08ab637SBen Dooks help 681a08ab637SBen Dooks Samsung S3C64XX series based systems 682a08ab637SBen Dooks 683c4ffccddSKukjin Kimconfig ARCH_S5P6440 684c4ffccddSKukjin Kim bool "Samsung S5P6440" 685c4ffccddSKukjin Kim select CPU_V6 686c4ffccddSKukjin Kim select GENERIC_GPIO 687c4ffccddSKukjin Kim select HAVE_CLK 688925c68cdSBen Dooks select ARCH_USES_GETTIMEOFFSET 689c4ffccddSKukjin Kim help 690c4ffccddSKukjin Kim Samsung S5P6440 CPU based systems 691c4ffccddSKukjin Kim 692550db7f1SKukjin Kimconfig ARCH_S5P6442 693550db7f1SKukjin Kim bool "Samsung S5P6442" 694550db7f1SKukjin Kim select CPU_V6 695550db7f1SKukjin Kim select GENERIC_GPIO 696550db7f1SKukjin Kim select HAVE_CLK 697925c68cdSBen Dooks select ARCH_USES_GETTIMEOFFSET 698550db7f1SKukjin Kim help 699550db7f1SKukjin Kim Samsung S5P6442 CPU based systems 700550db7f1SKukjin Kim 701acc84707SMarek Szyprowskiconfig ARCH_S5PC100 702acc84707SMarek Szyprowski bool "Samsung S5PC100" 7035a7652f2SByungho Min select GENERIC_GPIO 7045a7652f2SByungho Min select HAVE_CLK 7055a7652f2SByungho Min select CPU_V7 706d6d502faSKukjin Kim select ARM_L1_CACHE_SHIFT_6 707925c68cdSBen Dooks select ARCH_USES_GETTIMEOFFSET 7085a7652f2SByungho Min help 709acc84707SMarek Szyprowski Samsung S5PC100 series based systems 7105a7652f2SByungho Min 711170f4e42SKukjin Kimconfig ARCH_S5PV210 712170f4e42SKukjin Kim bool "Samsung S5PV210/S5PC110" 713170f4e42SKukjin Kim select CPU_V7 714170f4e42SKukjin Kim select GENERIC_GPIO 715170f4e42SKukjin Kim select HAVE_CLK 716170f4e42SKukjin Kim select ARM_L1_CACHE_SHIFT_6 717925c68cdSBen Dooks select ARCH_USES_GETTIMEOFFSET 718170f4e42SKukjin Kim help 719170f4e42SKukjin Kim Samsung S5PV210/S5PC110 series based systems 720170f4e42SKukjin Kim 7211da177e4SLinus Torvaldsconfig ARCH_SHARK 7221da177e4SLinus Torvalds bool "Shark" 723c750815eSRussell King select CPU_SA110 724f7e68bbfSRussell King select ISA 725f7e68bbfSRussell King select ISA_DMA 7263bca103aSNicolas Pitre select ZONE_DMA 727f7e68bbfSRussell King select PCI 7285cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 729f999b8bdSMartin Michlmayr help 730f999b8bdSMartin Michlmayr Support for the StrongARM based Digital DNARD machine, also known 731f999b8bdSMartin Michlmayr as "Shark" (<http://www.shark-linux.de/shark.html>). 7321da177e4SLinus Torvalds 7331da177e4SLinus Torvaldsconfig ARCH_LH7A40X 7341da177e4SLinus Torvalds bool "Sharp LH7A40X" 735c750815eSRussell King select CPU_ARM922T 7364ba3f7c5SRussell King select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM 7375cfc8ee0SJohn Stultz select ARCH_USES_GETTIMEOFFSET 7381da177e4SLinus Torvalds help 7391da177e4SLinus Torvalds Say Y here for systems based on one of the Sharp LH7A40X 7401da177e4SLinus Torvalds System on a Chip processors. These CPUs include an ARM922T 7411da177e4SLinus Torvalds core with a wide array of integrated devices for 7421da177e4SLinus Torvalds hand-held and low-power applications. 7431da177e4SLinus Torvalds 744d98aac75SLinus Walleijconfig ARCH_U300 745d98aac75SLinus Walleij bool "ST-Ericsson U300 Series" 746d98aac75SLinus Walleij depends on MMU 747d98aac75SLinus Walleij select CPU_ARM926T 748bc581770SLinus Walleij select HAVE_TCM 749d98aac75SLinus Walleij select ARM_AMBA 750d98aac75SLinus Walleij select ARM_VIC 751d98aac75SLinus Walleij select GENERIC_CLOCKEVENTS 752d98aac75SLinus Walleij select COMMON_CLKDEV 753d98aac75SLinus Walleij select GENERIC_GPIO 754d98aac75SLinus Walleij help 755d98aac75SLinus Walleij Support for ST-Ericsson U300 series mobile platforms. 756d98aac75SLinus Walleij 757ccf50e23SRussell Kingconfig ARCH_U8500 758ccf50e23SRussell King bool "ST-Ericsson U8500 Series" 759ccf50e23SRussell King select CPU_V7 760ccf50e23SRussell King select ARM_AMBA 761ccf50e23SRussell King select GENERIC_CLOCKEVENTS 762ccf50e23SRussell King select COMMON_CLKDEV 76394bdc0e2SRabin Vincent select ARCH_REQUIRE_GPIOLIB 764ccf50e23SRussell King help 765ccf50e23SRussell King Support for ST-Ericsson's Ux500 architecture 766ccf50e23SRussell King 767ccf50e23SRussell Kingconfig ARCH_NOMADIK 768ccf50e23SRussell King bool "STMicroelectronics Nomadik" 769ccf50e23SRussell King select ARM_AMBA 770ccf50e23SRussell King select ARM_VIC 771ccf50e23SRussell King select CPU_ARM926T 772ccf50e23SRussell King select COMMON_CLKDEV 773ccf50e23SRussell King select GENERIC_CLOCKEVENTS 774ccf50e23SRussell King select ARCH_REQUIRE_GPIOLIB 775ccf50e23SRussell King help 776ccf50e23SRussell King Support for the Nomadik platform by ST-Ericsson 777ccf50e23SRussell King 7787c6337e2SKevin Hilmanconfig ARCH_DAVINCI 7797c6337e2SKevin Hilman bool "TI DaVinci" 7807c6337e2SKevin Hilman select GENERIC_CLOCKEVENTS 781dce1115bSDavid Brownell select ARCH_REQUIRE_GPIOLIB 7823bca103aSNicolas Pitre select ZONE_DMA 7839232fcc9SKevin Hilman select HAVE_IDE 784c5b736d0SKevin Hilman select COMMON_CLKDEV 78520e9969bSDavid Brownell select GENERIC_ALLOCATOR 786ae88e05aSSekhar Nori select ARCH_HAS_HOLES_MEMORYMODEL 7877c6337e2SKevin Hilman help 7887c6337e2SKevin Hilman Support for TI's DaVinci platform. 7897c6337e2SKevin Hilman 7903b938be6SRussell Kingconfig ARCH_OMAP 7913b938be6SRussell King bool "TI OMAP" 7929483a578SDavid Brownell select HAVE_CLK 7937444a72eSMichael Buesch select ARCH_REQUIRE_GPIOLIB 79489c52ed4SBen Dooks select ARCH_HAS_CPUFREQ 79506cad098SKevin Hilman select GENERIC_CLOCKEVENTS 7969af915daSSriram select ARCH_HAS_HOLES_MEMORYMODEL 7973b938be6SRussell King help 7983b938be6SRussell King Support for TI's OMAP platform (OMAP1 and OMAP2). 7993b938be6SRussell King 800cee37e50Sviresh kumarconfig PLAT_SPEAR 801cee37e50Sviresh kumar bool "ST SPEAr" 802cee37e50Sviresh kumar select ARM_AMBA 803cee37e50Sviresh kumar select ARCH_REQUIRE_GPIOLIB 804cee37e50Sviresh kumar select COMMON_CLKDEV 805cee37e50Sviresh kumar select GENERIC_CLOCKEVENTS 806cee37e50Sviresh kumar select HAVE_CLK 807cee37e50Sviresh kumar help 808cee37e50Sviresh kumar Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx). 809cee37e50Sviresh kumar 8101da177e4SLinus Torvaldsendchoice 8111da177e4SLinus Torvalds 812ccf50e23SRussell King# 813ccf50e23SRussell King# This is sorted alphabetically by mach-* pathname. However, plat-* 814ccf50e23SRussell King# Kconfigs may be included either alphabetically (according to the 815ccf50e23SRussell King# plat- suffix) or along side the corresponding mach-* source. 816ccf50e23SRussell King# 81795b8f20fSRussell Kingsource "arch/arm/mach-aaec2000/Kconfig" 81895b8f20fSRussell King 81995b8f20fSRussell Kingsource "arch/arm/mach-at91/Kconfig" 82095b8f20fSRussell King 82195b8f20fSRussell Kingsource "arch/arm/mach-bcmring/Kconfig" 82295b8f20fSRussell King 8231da177e4SLinus Torvaldssource "arch/arm/mach-clps711x/Kconfig" 8241da177e4SLinus Torvalds 825d94f944eSAnton Vorontsovsource "arch/arm/mach-cns3xxx/Kconfig" 826d94f944eSAnton Vorontsov 82795b8f20fSRussell Kingsource "arch/arm/mach-davinci/Kconfig" 82895b8f20fSRussell King 82995b8f20fSRussell Kingsource "arch/arm/mach-dove/Kconfig" 83095b8f20fSRussell King 831e7736d47SLennert Buytenheksource "arch/arm/mach-ep93xx/Kconfig" 832e7736d47SLennert Buytenhek 8331da177e4SLinus Torvaldssource "arch/arm/mach-footbridge/Kconfig" 8341da177e4SLinus Torvalds 83559d3a193SPaulius Zaleckassource "arch/arm/mach-gemini/Kconfig" 83659d3a193SPaulius Zaleckas 83795b8f20fSRussell Kingsource "arch/arm/mach-h720x/Kconfig" 83895b8f20fSRussell King 8391da177e4SLinus Torvaldssource "arch/arm/mach-integrator/Kconfig" 8401da177e4SLinus Torvalds 8413f7e5815SLennert Buytenheksource "arch/arm/mach-iop32x/Kconfig" 8423f7e5815SLennert Buytenhek 8433f7e5815SLennert Buytenheksource "arch/arm/mach-iop33x/Kconfig" 8441da177e4SLinus Torvalds 845285f5fa7SDan Williamssource "arch/arm/mach-iop13xx/Kconfig" 846285f5fa7SDan Williams 8471da177e4SLinus Torvaldssource "arch/arm/mach-ixp4xx/Kconfig" 8481da177e4SLinus Torvalds 8491da177e4SLinus Torvaldssource "arch/arm/mach-ixp2000/Kconfig" 8501da177e4SLinus Torvalds 851c4713074SLennert Buytenheksource "arch/arm/mach-ixp23xx/Kconfig" 852c4713074SLennert Buytenhek 85395b8f20fSRussell Kingsource "arch/arm/mach-kirkwood/Kconfig" 85495b8f20fSRussell King 85595b8f20fSRussell Kingsource "arch/arm/mach-ks8695/Kconfig" 85695b8f20fSRussell King 85795b8f20fSRussell Kingsource "arch/arm/mach-lh7a40x/Kconfig" 85895b8f20fSRussell King 859777f9bebSLennert Buytenheksource "arch/arm/mach-loki/Kconfig" 860777f9bebSLennert Buytenhek 86140805949SKevin Wellssource "arch/arm/mach-lpc32xx/Kconfig" 86240805949SKevin Wells 86395b8f20fSRussell Kingsource "arch/arm/mach-msm/Kconfig" 86495b8f20fSRussell King 865794d15b2SStanislav Samsonovsource "arch/arm/mach-mv78xx0/Kconfig" 866794d15b2SStanislav Samsonov 86795b8f20fSRussell Kingsource "arch/arm/plat-mxc/Kconfig" 8681da177e4SLinus Torvalds 86995b8f20fSRussell Kingsource "arch/arm/mach-netx/Kconfig" 87049cbe786SEric Miao 87195b8f20fSRussell Kingsource "arch/arm/mach-nomadik/Kconfig" 87295b8f20fSRussell Kingsource "arch/arm/plat-nomadik/Kconfig" 87395b8f20fSRussell King 87495b8f20fSRussell Kingsource "arch/arm/mach-ns9xxx/Kconfig" 8751da177e4SLinus Torvalds 876d91a8910SRussell Kingsource "arch/arm/mach-nuc93x/Kconfig" 877d91a8910SRussell King 878d48af15eSTony Lindgrensource "arch/arm/plat-omap/Kconfig" 879d48af15eSTony Lindgren 880d48af15eSTony Lindgrensource "arch/arm/mach-omap1/Kconfig" 8811da177e4SLinus Torvalds 8821dbae815STony Lindgrensource "arch/arm/mach-omap2/Kconfig" 8831dbae815STony Lindgren 8849dd0b194SLennert Buytenheksource "arch/arm/mach-orion5x/Kconfig" 885585cf175STzachi Perelstein 88695b8f20fSRussell Kingsource "arch/arm/mach-pxa/Kconfig" 88795b8f20fSRussell Kingsource "arch/arm/plat-pxa/Kconfig" 8881da177e4SLinus Torvalds 88995b8f20fSRussell Kingsource "arch/arm/mach-mmp/Kconfig" 89095b8f20fSRussell King 89195b8f20fSRussell Kingsource "arch/arm/mach-realview/Kconfig" 89295b8f20fSRussell King 89395b8f20fSRussell Kingsource "arch/arm/mach-sa1100/Kconfig" 894edabd38eSSaeed Bishara 895cf383678SBen Dookssource "arch/arm/plat-samsung/Kconfig" 896a21765a7SBen Dookssource "arch/arm/plat-s3c24xx/Kconfig" 897c4ffccddSKukjin Kimsource "arch/arm/plat-s5p/Kconfig" 898a21765a7SBen Dooks 899cee37e50Sviresh kumarsource "arch/arm/plat-spear/Kconfig" 900a21765a7SBen Dooks 901a21765a7SBen Dooksif ARCH_S3C2410 902a21765a7SBen Dookssource "arch/arm/mach-s3c2400/Kconfig" 9031da177e4SLinus Torvaldssource "arch/arm/mach-s3c2410/Kconfig" 904a21765a7SBen Dookssource "arch/arm/mach-s3c2412/Kconfig" 905f1290a49SYauhen Kharuzhysource "arch/arm/mach-s3c2416/Kconfig" 906a21765a7SBen Dookssource "arch/arm/mach-s3c2440/Kconfig" 907e4d06e39SBen Dookssource "arch/arm/mach-s3c2443/Kconfig" 908a21765a7SBen Dooksendif 9091da177e4SLinus Torvalds 910a08ab637SBen Dooksif ARCH_S3C64XX 911431107eaSBen Dookssource "arch/arm/mach-s3c64xx/Kconfig" 912a08ab637SBen Dooksendif 913a08ab637SBen Dooks 914c4ffccddSKukjin Kimsource "arch/arm/mach-s5p6440/Kconfig" 915c4ffccddSKukjin Kim 916550db7f1SKukjin Kimsource "arch/arm/mach-s5p6442/Kconfig" 9177bd0f2f5Sdmitry pervushin 9185a7652f2SByungho Minsource "arch/arm/mach-s5pc100/Kconfig" 9195a7652f2SByungho Min 920170f4e42SKukjin Kimsource "arch/arm/mach-s5pv210/Kconfig" 921170f4e42SKukjin Kim 922882d01f9SRussell Kingsource "arch/arm/mach-shmobile/Kconfig" 9231da177e4SLinus Torvalds 924882d01f9SRussell Kingsource "arch/arm/plat-stmp3xxx/Kconfig" 9259e73c84cSBrian Swetland 926c5f80065SErik Gillingsource "arch/arm/mach-tegra/Kconfig" 927c5f80065SErik Gilling 92895b8f20fSRussell Kingsource "arch/arm/mach-u300/Kconfig" 92952c543f9SQuinn Jensen 93095b8f20fSRussell Kingsource "arch/arm/mach-ux500/Kconfig" 9311da177e4SLinus Torvalds 9321da177e4SLinus Torvaldssource "arch/arm/mach-versatile/Kconfig" 9331da177e4SLinus Torvalds 934ceade897SRussell Kingsource "arch/arm/mach-vexpress/Kconfig" 935ceade897SRussell King 9367ec80ddfSwanzongshunsource "arch/arm/mach-w90x900/Kconfig" 9377ec80ddfSwanzongshun 9381da177e4SLinus Torvalds# Definitions to make life easier 9391da177e4SLinus Torvaldsconfig ARCH_ACORN 9401da177e4SLinus Torvalds bool 9411da177e4SLinus Torvalds 9427ae1f7ecSLennert Buytenhekconfig PLAT_IOP 9437ae1f7ecSLennert Buytenhek bool 944469d3044SMikael Pettersson select GENERIC_CLOCKEVENTS 9457ae1f7ecSLennert Buytenhek 94669b02f6aSLennert Buytenhekconfig PLAT_ORION 94769b02f6aSLennert Buytenhek bool 94869b02f6aSLennert Buytenhek 949bd5ce433SEric Miaoconfig PLAT_PXA 950bd5ce433SEric Miao bool 951bd5ce433SEric Miao 952f4b8b319SRussell Kingconfig PLAT_VERSATILE 953f4b8b319SRussell King bool 954f4b8b319SRussell King 955e3887714SRussell Kingconfig ARM_TIMER_SP804 956e3887714SRussell King bool 957e3887714SRussell King 9581da177e4SLinus Torvaldssource arch/arm/mm/Kconfig 9591da177e4SLinus Torvalds 960afe4b25eSLennert Buytenhekconfig IWMMXT 961afe4b25eSLennert Buytenhek bool "Enable iWMMXt support" 96240305a58SEric Miao depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK 96340305a58SEric Miao default y if PXA27x || PXA3xx || ARCH_MMP 964afe4b25eSLennert Buytenhek help 965afe4b25eSLennert Buytenhek Enable support for iWMMXt context switching at run time if 966afe4b25eSLennert Buytenhek running on a CPU that supports it. 967afe4b25eSLennert Buytenhek 9681da177e4SLinus Torvalds# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER 9691da177e4SLinus Torvaldsconfig XSCALE_PMU 9701da177e4SLinus Torvalds bool 9711da177e4SLinus Torvalds depends on CPU_XSCALE && !XSCALE_PMU_TIMER 9721da177e4SLinus Torvalds default y 9731da177e4SLinus Torvalds 9740f4f0672SJamie Ilesconfig CPU_HAS_PMU 9758954bb0dSWill Deacon depends on (CPU_V6 || CPU_V7 || XSCALE_PMU) && \ 9768954bb0dSWill Deacon (!ARCH_OMAP3 || OMAP3_EMU) 9770f4f0672SJamie Iles default y 9780f4f0672SJamie Iles bool 9790f4f0672SJamie Iles 9803b93e7b0SHyok S. Choiif !MMU 9813b93e7b0SHyok S. Choisource "arch/arm/Kconfig-nommu" 9823b93e7b0SHyok S. Choiendif 9833b93e7b0SHyok S. Choi 9849cba3cccSCatalin Marinasconfig ARM_ERRATA_411920 9859cba3cccSCatalin Marinas bool "ARM errata: Invalidation of the Instruction Cache operation can fail" 9869cba3cccSCatalin Marinas depends on CPU_V6 && !SMP 9879cba3cccSCatalin Marinas help 9889cba3cccSCatalin Marinas Invalidation of the Instruction Cache operation can 9899cba3cccSCatalin Marinas fail. This erratum is present in 1136 (before r1p4), 1156 and 1176. 9909cba3cccSCatalin Marinas It does not affect the MPCore. This option enables the ARM Ltd. 9919cba3cccSCatalin Marinas recommended workaround. 9929cba3cccSCatalin Marinas 9937ce236fcSCatalin Marinasconfig ARM_ERRATA_430973 9947ce236fcSCatalin Marinas bool "ARM errata: Stale prediction on replaced interworking branch" 9957ce236fcSCatalin Marinas depends on CPU_V7 9967ce236fcSCatalin Marinas help 9977ce236fcSCatalin Marinas This option enables the workaround for the 430973 Cortex-A8 9987ce236fcSCatalin Marinas (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb 9997ce236fcSCatalin Marinas interworking branch is replaced with another code sequence at the 10007ce236fcSCatalin Marinas same virtual address, whether due to self-modifying code or virtual 10017ce236fcSCatalin Marinas to physical address re-mapping, Cortex-A8 does not recover from the 10027ce236fcSCatalin Marinas stale interworking branch prediction. This results in Cortex-A8 10037ce236fcSCatalin Marinas executing the new code sequence in the incorrect ARM or Thumb state. 10047ce236fcSCatalin Marinas The workaround enables the BTB/BTAC operations by setting ACTLR.IBE 10057ce236fcSCatalin Marinas and also flushes the branch target cache at every context switch. 10067ce236fcSCatalin Marinas Note that setting specific bits in the ACTLR register may not be 10077ce236fcSCatalin Marinas available in non-secure mode. 10087ce236fcSCatalin Marinas 1009855c551fSCatalin Marinasconfig ARM_ERRATA_458693 1010855c551fSCatalin Marinas bool "ARM errata: Processor deadlock when a false hazard is created" 1011855c551fSCatalin Marinas depends on CPU_V7 1012855c551fSCatalin Marinas help 1013855c551fSCatalin Marinas This option enables the workaround for the 458693 Cortex-A8 (r2p0) 1014855c551fSCatalin Marinas erratum. For very specific sequences of memory operations, it is 1015855c551fSCatalin Marinas possible for a hazard condition intended for a cache line to instead 1016855c551fSCatalin Marinas be incorrectly associated with a different cache line. This false 1017855c551fSCatalin Marinas hazard might then cause a processor deadlock. The workaround enables 1018855c551fSCatalin Marinas the L1 caching of the NEON accesses and disables the PLD instruction 1019855c551fSCatalin Marinas in the ACTLR register. Note that setting specific bits in the ACTLR 1020855c551fSCatalin Marinas register may not be available in non-secure mode. 1021855c551fSCatalin Marinas 10220516e464SCatalin Marinasconfig ARM_ERRATA_460075 10230516e464SCatalin Marinas bool "ARM errata: Data written to the L2 cache can be overwritten with stale data" 10240516e464SCatalin Marinas depends on CPU_V7 10250516e464SCatalin Marinas help 10260516e464SCatalin Marinas This option enables the workaround for the 460075 Cortex-A8 (r2p0) 10270516e464SCatalin Marinas erratum. Any asynchronous access to the L2 cache may encounter a 10280516e464SCatalin Marinas situation in which recent store transactions to the L2 cache are lost 10290516e464SCatalin Marinas and overwritten with stale memory contents from external memory. The 10300516e464SCatalin Marinas workaround disables the write-allocate mode for the L2 cache via the 10310516e464SCatalin Marinas ACTLR register. Note that setting specific bits in the ACTLR register 10320516e464SCatalin Marinas may not be available in non-secure mode. 10330516e464SCatalin Marinas 10349e65582aSSantosh Shilimkarconfig PL310_ERRATA_588369 10359e65582aSSantosh Shilimkar bool "Clean & Invalidate maintenance operations do not invalidate clean lines" 10369e65582aSSantosh Shilimkar depends on CACHE_L2X0 && ARCH_OMAP4 10379e65582aSSantosh Shilimkar help 10389e65582aSSantosh Shilimkar The PL310 L2 cache controller implements three types of Clean & 10399e65582aSSantosh Shilimkar Invalidate maintenance operations: by Physical Address 10409e65582aSSantosh Shilimkar (offset 0x7F0), by Index/Way (0x7F8) and by Way (0x7FC). 10419e65582aSSantosh Shilimkar They are architecturally defined to behave as the execution of a 10429e65582aSSantosh Shilimkar clean operation followed immediately by an invalidate operation, 10439e65582aSSantosh Shilimkar both performing to the same memory location. This functionality 10449e65582aSSantosh Shilimkar is not correctly implemented in PL310 as clean lines are not 10459e65582aSSantosh Shilimkar invalidated as a result of these operations. Note that this errata 10469e65582aSSantosh Shilimkar uses Texas Instrument's secure monitor api. 10471da177e4SLinus Torvaldsendmenu 10481da177e4SLinus Torvalds 10491da177e4SLinus Torvaldssource "arch/arm/common/Kconfig" 10501da177e4SLinus Torvalds 10511da177e4SLinus Torvaldsmenu "Bus support" 10521da177e4SLinus Torvalds 10531da177e4SLinus Torvaldsconfig ARM_AMBA 10541da177e4SLinus Torvalds bool 10551da177e4SLinus Torvalds 10561da177e4SLinus Torvaldsconfig ISA 10571da177e4SLinus Torvalds bool 10581da177e4SLinus Torvalds help 10591da177e4SLinus Torvalds Find out whether you have ISA slots on your motherboard. ISA is the 10601da177e4SLinus Torvalds name of a bus system, i.e. the way the CPU talks to the other stuff 10611da177e4SLinus Torvalds inside your box. Other bus systems are PCI, EISA, MicroChannel 10621da177e4SLinus Torvalds (MCA) or VESA. ISA is an older system, now being displaced by PCI; 10631da177e4SLinus Torvalds newer boards don't support it. If you have ISA, say Y, otherwise N. 10641da177e4SLinus Torvalds 1065065909b9SRussell King# Select ISA DMA controller support 10661da177e4SLinus Torvaldsconfig ISA_DMA 10671da177e4SLinus Torvalds bool 1068065909b9SRussell King select ISA_DMA_API 10691da177e4SLinus Torvalds 1070065909b9SRussell King# Select ISA DMA interface 10715cae841bSAl Viroconfig ISA_DMA_API 10725cae841bSAl Viro bool 10735cae841bSAl Viro 10741da177e4SLinus Torvaldsconfig PCI 10755f32f7a0SAnton Vorontsov bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE || ARCH_CNS3XXX 10761da177e4SLinus Torvalds help 10771da177e4SLinus Torvalds Find out whether you have a PCI motherboard. PCI is the name of a 10781da177e4SLinus Torvalds bus system, i.e. the way the CPU talks to the other stuff inside 10791da177e4SLinus Torvalds your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 10801da177e4SLinus Torvalds VESA. If you have PCI, say Y, otherwise N. 10811da177e4SLinus Torvalds 108252882173SAnton Vorontsovconfig PCI_DOMAINS 108352882173SAnton Vorontsov bool 108452882173SAnton Vorontsov depends on PCI 108552882173SAnton Vorontsov 108636e23590SMatthew Wilcoxconfig PCI_SYSCALL 108736e23590SMatthew Wilcox def_bool PCI 108836e23590SMatthew Wilcox 10891da177e4SLinus Torvalds# Select the host bridge type 10901da177e4SLinus Torvaldsconfig PCI_HOST_VIA82C505 10911da177e4SLinus Torvalds bool 10921da177e4SLinus Torvalds depends on PCI && ARCH_SHARK 10931da177e4SLinus Torvalds default y 10941da177e4SLinus Torvalds 1095a0113a99SMike Rapoportconfig PCI_HOST_ITE8152 1096a0113a99SMike Rapoport bool 1097a0113a99SMike Rapoport depends on PCI && MACH_ARMCORE 1098a0113a99SMike Rapoport default y 1099a0113a99SMike Rapoport select DMABOUNCE 1100a0113a99SMike Rapoport 11011da177e4SLinus Torvaldssource "drivers/pci/Kconfig" 11021da177e4SLinus Torvalds 11031da177e4SLinus Torvaldssource "drivers/pcmcia/Kconfig" 11041da177e4SLinus Torvalds 11051da177e4SLinus Torvaldsendmenu 11061da177e4SLinus Torvalds 11071da177e4SLinus Torvaldsmenu "Kernel Features" 11081da177e4SLinus Torvalds 11090567a0c0SKevin Hilmansource "kernel/time/Kconfig" 11100567a0c0SKevin Hilman 11111da177e4SLinus Torvaldsconfig SMP 11121da177e4SLinus Torvalds bool "Symmetric Multi-Processing (EXPERIMENTAL)" 111342578c82SRussell King depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\ 111459ac59f6SRussell King MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\ 111559ac59f6SRussell King ARCH_U8500 || ARCH_VEXPRESS_CA9X4) 1116bc28248eSRussell King depends on GENERIC_CLOCKEVENTS 1117f6dd9fa5SJens Axboe select USE_GENERIC_SMP_HELPERS 111859ac59f6SRussell King select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500 || ARCH_VEXPRESS_CA9X4) 11191da177e4SLinus Torvalds help 11201da177e4SLinus Torvalds This enables support for systems with more than one CPU. If you have 11211da177e4SLinus Torvalds a system with only one CPU, like most personal computers, say N. If 11221da177e4SLinus Torvalds you have a system with more than one CPU, say Y. 11231da177e4SLinus Torvalds 11241da177e4SLinus Torvalds If you say N here, the kernel will run on single and multiprocessor 11251da177e4SLinus Torvalds machines, but will use only one CPU of a multiprocessor machine. If 11261da177e4SLinus Torvalds you say Y here, the kernel will run on many, but not all, single 11271da177e4SLinus Torvalds processor machines. On a single processor machine, the kernel will 11281da177e4SLinus Torvalds run faster if you say N here. 11291da177e4SLinus Torvalds 113003502faaSAdrian Bunk See also <file:Documentation/i386/IO-APIC.txt>, 11311da177e4SLinus Torvalds <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 11321da177e4SLinus Torvalds <http://www.linuxdoc.org/docs.html#howto>. 11331da177e4SLinus Torvalds 11341da177e4SLinus Torvalds If you don't know what to do here, say N. 11351da177e4SLinus Torvalds 1136a8cbcd92SRussell Kingconfig HAVE_ARM_SCU 1137a8cbcd92SRussell King bool 1138a8cbcd92SRussell King depends on SMP 1139a8cbcd92SRussell King help 1140a8cbcd92SRussell King This option enables support for the ARM system coherency unit 1141a8cbcd92SRussell King 1142f32f4ce2SRussell Kingconfig HAVE_ARM_TWD 1143f32f4ce2SRussell King bool 1144f32f4ce2SRussell King depends on SMP 1145f32f4ce2SRussell King help 1146f32f4ce2SRussell King This options enables support for the ARM timer and watchdog unit 1147f32f4ce2SRussell King 11488d5796d2SLennert Buytenhekchoice 11498d5796d2SLennert Buytenhek prompt "Memory split" 11508d5796d2SLennert Buytenhek default VMSPLIT_3G 11518d5796d2SLennert Buytenhek help 11528d5796d2SLennert Buytenhek Select the desired split between kernel and user memory. 11538d5796d2SLennert Buytenhek 11548d5796d2SLennert Buytenhek If you are not absolutely sure what you are doing, leave this 11558d5796d2SLennert Buytenhek option alone! 11568d5796d2SLennert Buytenhek 11578d5796d2SLennert Buytenhek config VMSPLIT_3G 11588d5796d2SLennert Buytenhek bool "3G/1G user/kernel split" 11598d5796d2SLennert Buytenhek config VMSPLIT_2G 11608d5796d2SLennert Buytenhek bool "2G/2G user/kernel split" 11618d5796d2SLennert Buytenhek config VMSPLIT_1G 11628d5796d2SLennert Buytenhek bool "1G/3G user/kernel split" 11638d5796d2SLennert Buytenhekendchoice 11648d5796d2SLennert Buytenhek 11658d5796d2SLennert Buytenhekconfig PAGE_OFFSET 11668d5796d2SLennert Buytenhek hex 11678d5796d2SLennert Buytenhek default 0x40000000 if VMSPLIT_1G 11688d5796d2SLennert Buytenhek default 0x80000000 if VMSPLIT_2G 11698d5796d2SLennert Buytenhek default 0xC0000000 11708d5796d2SLennert Buytenhek 11711da177e4SLinus Torvaldsconfig NR_CPUS 11721da177e4SLinus Torvalds int "Maximum number of CPUs (2-32)" 11731da177e4SLinus Torvalds range 2 32 11741da177e4SLinus Torvalds depends on SMP 11751da177e4SLinus Torvalds default "4" 11761da177e4SLinus Torvalds 1177a054a811SRussell Kingconfig HOTPLUG_CPU 1178a054a811SRussell King bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 1179a054a811SRussell King depends on SMP && HOTPLUG && EXPERIMENTAL 1180a054a811SRussell King help 1181a054a811SRussell King Say Y here to experiment with turning CPUs off and on. CPUs 1182a054a811SRussell King can be controlled through /sys/devices/system/cpu. 1183a054a811SRussell King 118437ee16aeSRussell Kingconfig LOCAL_TIMERS 118537ee16aeSRussell King bool "Use local timer interrupts" 118642578c82SRussell King depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \ 1187bde28b84SWill Deacon REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \ 1188bde28b84SWill Deacon ARCH_U8500 || ARCH_VEXPRESS_CA9X4) 118937ee16aeSRussell King default y 1190bde28b84SWill Deacon select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_VEXPRESS || ARCH_OMAP4 || ARCH_U8500) 119137ee16aeSRussell King help 119237ee16aeSRussell King Enable support for local timers on SMP platforms, rather then the 119337ee16aeSRussell King legacy IPI broadcast method. Local timers allows the system 119437ee16aeSRussell King accounting to be spread across the timer interval, preventing a 119537ee16aeSRussell King "thundering herd" at every timer tick. 119637ee16aeSRussell King 1197d45a398fSUwe Kleine-Königsource kernel/Kconfig.preempt 11981da177e4SLinus Torvalds 1199f8065813SRussell Kingconfig HZ 1200f8065813SRussell King int 1201170f4e42SKukjin Kim default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || ARCH_S5P6442 || ARCH_S5PV210 1202bfe65704SRussell King default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER 12035248c657SDavid Brownell default AT91_TIMER_HZ if ARCH_AT91 12045da3e714SMagnus Damm default SHMOBILE_TIMER_HZ if ARCH_SHMOBILE 1205f8065813SRussell King default 100 1206f8065813SRussell King 120716c79651SCatalin Marinasconfig THUMB2_KERNEL 120816c79651SCatalin Marinas bool "Compile the kernel in Thumb-2 mode" 120916c79651SCatalin Marinas depends on CPU_V7 && EXPERIMENTAL 121016c79651SCatalin Marinas select AEABI 121116c79651SCatalin Marinas select ARM_ASM_UNIFIED 121216c79651SCatalin Marinas help 121316c79651SCatalin Marinas By enabling this option, the kernel will be compiled in 121416c79651SCatalin Marinas Thumb-2 mode. A compiler/assembler that understand the unified 121516c79651SCatalin Marinas ARM-Thumb syntax is needed. 121616c79651SCatalin Marinas 121716c79651SCatalin Marinas If unsure, say N. 121816c79651SCatalin Marinas 12190becb088SCatalin Marinasconfig ARM_ASM_UNIFIED 12200becb088SCatalin Marinas bool 12210becb088SCatalin Marinas 1222704bdda0SNicolas Pitreconfig AEABI 1223704bdda0SNicolas Pitre bool "Use the ARM EABI to compile the kernel" 1224704bdda0SNicolas Pitre help 1225704bdda0SNicolas Pitre This option allows for the kernel to be compiled using the latest 1226704bdda0SNicolas Pitre ARM ABI (aka EABI). This is only useful if you are using a user 1227704bdda0SNicolas Pitre space environment that is also compiled with EABI. 1228704bdda0SNicolas Pitre 1229704bdda0SNicolas Pitre Since there are major incompatibilities between the legacy ABI and 1230704bdda0SNicolas Pitre EABI, especially with regard to structure member alignment, this 1231704bdda0SNicolas Pitre option also changes the kernel syscall calling convention to 1232704bdda0SNicolas Pitre disambiguate both ABIs and allow for backward compatibility support 1233704bdda0SNicolas Pitre (selected with CONFIG_OABI_COMPAT). 1234704bdda0SNicolas Pitre 1235704bdda0SNicolas Pitre To use this you need GCC version 4.0.0 or later. 1236704bdda0SNicolas Pitre 12376c90c872SNicolas Pitreconfig OABI_COMPAT 1238a73a3ff1SRussell King bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)" 123961c484d4SNicolas Pitre depends on AEABI && EXPERIMENTAL 12406c90c872SNicolas Pitre default y 12416c90c872SNicolas Pitre help 12426c90c872SNicolas Pitre This option preserves the old syscall interface along with the 12436c90c872SNicolas Pitre new (ARM EABI) one. It also provides a compatibility layer to 12446c90c872SNicolas Pitre intercept syscalls that have structure arguments which layout 12456c90c872SNicolas Pitre in memory differs between the legacy ABI and the new ARM EABI 12466c90c872SNicolas Pitre (only for non "thumb" binaries). This option adds a tiny 12476c90c872SNicolas Pitre overhead to all syscalls and produces a slightly larger kernel. 12486c90c872SNicolas Pitre If you know you'll be using only pure EABI user space then you 12496c90c872SNicolas Pitre can say N here. If this option is not selected and you attempt 12506c90c872SNicolas Pitre to execute a legacy ABI binary then the result will be 12516c90c872SNicolas Pitre UNPREDICTABLE (in fact it can be predicted that it won't work 12526c90c872SNicolas Pitre at all). If in doubt say Y. 12536c90c872SNicolas Pitre 1254eb33575cSMel Gormanconfig ARCH_HAS_HOLES_MEMORYMODEL 1255e80d6a24SMel Gorman bool 1256e80d6a24SMel Gorman 125705944d74SRussell Kingconfig ARCH_SPARSEMEM_ENABLE 125805944d74SRussell King bool 125905944d74SRussell King 126007a2f737SRussell Kingconfig ARCH_SPARSEMEM_DEFAULT 126107a2f737SRussell King def_bool ARCH_SPARSEMEM_ENABLE 126207a2f737SRussell King 126305944d74SRussell Kingconfig ARCH_SELECT_MEMORY_MODEL 1264be370302SRussell King def_bool ARCH_SPARSEMEM_ENABLE 1265c80d79d7SYasunori Goto 1266053a96caSNicolas Pitreconfig HIGHMEM 1267053a96caSNicolas Pitre bool "High Memory Support (EXPERIMENTAL)" 1268053a96caSNicolas Pitre depends on MMU && EXPERIMENTAL 1269053a96caSNicolas Pitre help 1270053a96caSNicolas Pitre The address space of ARM processors is only 4 Gigabytes large 1271053a96caSNicolas Pitre and it has to accommodate user address space, kernel address 1272053a96caSNicolas Pitre space as well as some memory mapped IO. That means that, if you 1273053a96caSNicolas Pitre have a large amount of physical memory and/or IO, not all of the 1274053a96caSNicolas Pitre memory can be "permanently mapped" by the kernel. The physical 1275053a96caSNicolas Pitre memory that is not permanently mapped is called "high memory". 1276053a96caSNicolas Pitre 1277053a96caSNicolas Pitre Depending on the selected kernel/user memory split, minimum 1278053a96caSNicolas Pitre vmalloc space and actual amount of RAM, you may not need this 1279053a96caSNicolas Pitre option which should result in a slightly faster kernel. 1280053a96caSNicolas Pitre 1281053a96caSNicolas Pitre If unsure, say n. 1282053a96caSNicolas Pitre 128365cec8e3SRussell Kingconfig HIGHPTE 128465cec8e3SRussell King bool "Allocate 2nd-level pagetables from highmem" 128565cec8e3SRussell King depends on HIGHMEM 128665cec8e3SRussell King depends on !OUTER_CACHE 128765cec8e3SRussell King 12881b8873a0SJamie Ilesconfig HW_PERF_EVENTS 12891b8873a0SJamie Iles bool "Enable hardware performance counter support for perf events" 1290fe166148SWill Deacon depends on PERF_EVENTS && CPU_HAS_PMU 12911b8873a0SJamie Iles default y 12921b8873a0SJamie Iles help 12931b8873a0SJamie Iles Enable hardware performance counter support for perf events. If 12941b8873a0SJamie Iles disabled, perf events will use software events only. 12951b8873a0SJamie Iles 1296354e6f72Seric miaoconfig SPARSE_IRQ 1297c1ba6ba3Seric miao def_bool n 1298354e6f72Seric miao help 1299354e6f72Seric miao This enables support for sparse irqs. This is useful in general 1300354e6f72Seric miao as most CPUs have a fairly sparse array of IRQ vectors, which 1301354e6f72Seric miao the irq_desc then maps directly on to. Systems with a high 1302354e6f72Seric miao number of off-chip IRQs will want to treat this as 1303354e6f72Seric miao experimental until they have been independently verified. 1304354e6f72Seric miao 13053f22ab27SDave Hansensource "mm/Kconfig" 13063f22ab27SDave Hansen 1307c1b2d970SMagnus Dammconfig FORCE_MAX_ZONEORDER 1308c1b2d970SMagnus Damm int "Maximum zone order" if ARCH_SHMOBILE 1309c1b2d970SMagnus Damm range 11 64 if ARCH_SHMOBILE 1310c1b2d970SMagnus Damm default "9" if SA1111 1311c1b2d970SMagnus Damm default "11" 1312c1b2d970SMagnus Damm help 1313c1b2d970SMagnus Damm The kernel memory allocator divides physically contiguous memory 1314c1b2d970SMagnus Damm blocks into "zones", where each zone is a power of two number of 1315c1b2d970SMagnus Damm pages. This option selects the largest power of two that the kernel 1316c1b2d970SMagnus Damm keeps in the memory allocator. If you need to allocate very large 1317c1b2d970SMagnus Damm blocks of physically contiguous memory, then you may need to 1318c1b2d970SMagnus Damm increase this value. 1319c1b2d970SMagnus Damm 1320c1b2d970SMagnus Damm This config option is actually maximum order plus one. For example, 1321c1b2d970SMagnus Damm a value of 11 means that the largest free memory block is 2^10 pages. 1322c1b2d970SMagnus Damm 13231da177e4SLinus Torvaldsconfig LEDS 13241da177e4SLinus Torvalds bool "Timer and CPU usage LEDs" 1325e055d5bfSAdrian Bunk depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 13268c8fdbc9SSascha Hauer ARCH_EBSA285 || ARCH_INTEGRATOR || \ 13271da177e4SLinus Torvalds ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 13281da177e4SLinus Torvalds ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 132973a59c1cSSAN People ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ 133025329671SJürgen Schindele ARCH_AT91 || ARCH_DAVINCI || \ 1331ff3042fbSColin Tuckley ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW 13321da177e4SLinus Torvalds help 13331da177e4SLinus Torvalds If you say Y here, the LEDs on your machine will be used 13341da177e4SLinus Torvalds to provide useful information about your current system status. 13351da177e4SLinus Torvalds 13361da177e4SLinus Torvalds If you are compiling a kernel for a NetWinder or EBSA-285, you will 13371da177e4SLinus Torvalds be able to select which LEDs are active using the options below. If 13381da177e4SLinus Torvalds you are compiling a kernel for the EBSA-110 or the LART however, the 13391da177e4SLinus Torvalds red LED will simply flash regularly to indicate that the system is 13401da177e4SLinus Torvalds still functional. It is safe to say Y here if you have a CATS 13411da177e4SLinus Torvalds system, but the driver will do nothing. 13421da177e4SLinus Torvalds 13431da177e4SLinus Torvaldsconfig LEDS_TIMER 13441da177e4SLinus Torvalds bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ 1345eebdf7d7SDavid Brownell OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1346eebdf7d7SDavid Brownell || MACH_OMAP_PERSEUS2 13471da177e4SLinus Torvalds depends on LEDS 13480567a0c0SKevin Hilman depends on !GENERIC_CLOCKEVENTS 13491da177e4SLinus Torvalds default y if ARCH_EBSA110 13501da177e4SLinus Torvalds help 13511da177e4SLinus Torvalds If you say Y here, one of the system LEDs (the green one on the 13521da177e4SLinus Torvalds NetWinder, the amber one on the EBSA285, or the red one on the LART) 13531da177e4SLinus Torvalds will flash regularly to indicate that the system is still 13541da177e4SLinus Torvalds operational. This is mainly useful to kernel hackers who are 13551da177e4SLinus Torvalds debugging unstable kernels. 13561da177e4SLinus Torvalds 13571da177e4SLinus Torvalds The LART uses the same LED for both Timer LED and CPU usage LED 13581da177e4SLinus Torvalds functions. You may choose to use both, but the Timer LED function 13591da177e4SLinus Torvalds will overrule the CPU usage LED. 13601da177e4SLinus Torvalds 13611da177e4SLinus Torvaldsconfig LEDS_CPU 13621da177e4SLinus Torvalds bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ 1363eebdf7d7SDavid Brownell !ARCH_OMAP) \ 1364eebdf7d7SDavid Brownell || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1365eebdf7d7SDavid Brownell || MACH_OMAP_PERSEUS2 13661da177e4SLinus Torvalds depends on LEDS 13671da177e4SLinus Torvalds help 13681da177e4SLinus Torvalds If you say Y here, the red LED will be used to give a good real 13691da177e4SLinus Torvalds time indication of CPU usage, by lighting whenever the idle task 13701da177e4SLinus Torvalds is not currently executing. 13711da177e4SLinus Torvalds 13721da177e4SLinus Torvalds The LART uses the same LED for both Timer LED and CPU usage LED 13731da177e4SLinus Torvalds functions. You may choose to use both, but the Timer LED function 13741da177e4SLinus Torvalds will overrule the CPU usage LED. 13751da177e4SLinus Torvalds 13761da177e4SLinus Torvaldsconfig ALIGNMENT_TRAP 13771da177e4SLinus Torvalds bool 1378f12d0d7cSHyok S. Choi depends on CPU_CP15_MMU 13791da177e4SLinus Torvalds default y if !ARCH_EBSA110 1380e119bfffSRussell King select HAVE_PROC_CPU if PROC_FS 13811da177e4SLinus Torvalds help 13821da177e4SLinus Torvalds ARM processors cannot fetch/store information which is not 13831da177e4SLinus Torvalds naturally aligned on the bus, i.e., a 4 byte fetch must start at an 13841da177e4SLinus Torvalds address divisible by 4. On 32-bit ARM processors, these non-aligned 13851da177e4SLinus Torvalds fetch/store instructions will be emulated in software if you say 13861da177e4SLinus Torvalds here, which has a severe performance impact. This is necessary for 13871da177e4SLinus Torvalds correct operation of some network protocols. With an IP-only 13881da177e4SLinus Torvalds configuration it is safe to say N, otherwise say Y. 13891da177e4SLinus Torvalds 139039ec58f3SLennert Buytenhekconfig UACCESS_WITH_MEMCPY 139139ec58f3SLennert Buytenhek bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)" 139239ec58f3SLennert Buytenhek depends on MMU && EXPERIMENTAL 139339ec58f3SLennert Buytenhek default y if CPU_FEROCEON 139439ec58f3SLennert Buytenhek help 139539ec58f3SLennert Buytenhek Implement faster copy_to_user and clear_user methods for CPU 139639ec58f3SLennert Buytenhek cores where a 8-word STM instruction give significantly higher 139739ec58f3SLennert Buytenhek memory write throughput than a sequence of individual 32bit stores. 139839ec58f3SLennert Buytenhek 139939ec58f3SLennert Buytenhek A possible side effect is a slight increase in scheduling latency 140039ec58f3SLennert Buytenhek between threads sharing the same address space if they invoke 140139ec58f3SLennert Buytenhek such copy operations with large buffers. 140239ec58f3SLennert Buytenhek 140339ec58f3SLennert Buytenhek However, if the CPU data cache is using a write-allocate mode, 140439ec58f3SLennert Buytenhek this option is unlikely to provide any performance gain. 140539ec58f3SLennert Buytenhek 1406c743f380SNicolas Pitreconfig CC_STACKPROTECTOR 1407c743f380SNicolas Pitre bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" 1408c743f380SNicolas Pitre help 1409c743f380SNicolas Pitre This option turns on the -fstack-protector GCC feature. This 1410c743f380SNicolas Pitre feature puts, at the beginning of functions, a canary value on 1411c743f380SNicolas Pitre the stack just before the return address, and validates 1412c743f380SNicolas Pitre the value just before actually returning. Stack based buffer 1413c743f380SNicolas Pitre overflows (that need to overwrite this return address) now also 1414c743f380SNicolas Pitre overwrite the canary, which gets detected and the attack is then 1415c743f380SNicolas Pitre neutralized via a kernel panic. 1416c743f380SNicolas Pitre This feature requires gcc version 4.2 or above. 1417c743f380SNicolas Pitre 141873a65b3fSUwe Kleine-Königconfig DEPRECATED_PARAM_STRUCT 141973a65b3fSUwe Kleine-König bool "Provide old way to pass kernel parameters" 142073a65b3fSUwe Kleine-König help 142173a65b3fSUwe Kleine-König This was deprecated in 2001 and announced to live on for 5 years. 142273a65b3fSUwe Kleine-König Some old boot loaders still use this way. 142373a65b3fSUwe Kleine-König 14241da177e4SLinus Torvaldsendmenu 14251da177e4SLinus Torvalds 14261da177e4SLinus Torvaldsmenu "Boot options" 14271da177e4SLinus Torvalds 14281da177e4SLinus Torvalds# Compressed boot loader in ROM. Yes, we really want to ask about 14291da177e4SLinus Torvalds# TEXT and BSS so we preserve their values in the config files. 14301da177e4SLinus Torvaldsconfig ZBOOT_ROM_TEXT 14311da177e4SLinus Torvalds hex "Compressed ROM boot loader base address" 14321da177e4SLinus Torvalds default "0" 14331da177e4SLinus Torvalds help 14341da177e4SLinus Torvalds The physical address at which the ROM-able zImage is to be 14351da177e4SLinus Torvalds placed in the target. Platforms which normally make use of 14361da177e4SLinus Torvalds ROM-able zImage formats normally set this to a suitable 14371da177e4SLinus Torvalds value in their defconfig file. 14381da177e4SLinus Torvalds 14391da177e4SLinus Torvalds If ZBOOT_ROM is not enabled, this has no effect. 14401da177e4SLinus Torvalds 14411da177e4SLinus Torvaldsconfig ZBOOT_ROM_BSS 14421da177e4SLinus Torvalds hex "Compressed ROM boot loader BSS address" 14431da177e4SLinus Torvalds default "0" 14441da177e4SLinus Torvalds help 1445f8c440b2SDan Fandrich The base address of an area of read/write memory in the target 1446f8c440b2SDan Fandrich for the ROM-able zImage which must be available while the 1447f8c440b2SDan Fandrich decompressor is running. It must be large enough to hold the 1448f8c440b2SDan Fandrich entire decompressed kernel plus an additional 128 KiB. 1449f8c440b2SDan Fandrich Platforms which normally make use of ROM-able zImage formats 1450f8c440b2SDan Fandrich normally set this to a suitable value in their defconfig file. 14511da177e4SLinus Torvalds 14521da177e4SLinus Torvalds If ZBOOT_ROM is not enabled, this has no effect. 14531da177e4SLinus Torvalds 14541da177e4SLinus Torvaldsconfig ZBOOT_ROM 14551da177e4SLinus Torvalds bool "Compressed boot loader in ROM/flash" 14561da177e4SLinus Torvalds depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS 14571da177e4SLinus Torvalds help 14581da177e4SLinus Torvalds Say Y here if you intend to execute your compressed kernel image 14591da177e4SLinus Torvalds (zImage) directly from ROM or flash. If unsure, say N. 14601da177e4SLinus Torvalds 14611da177e4SLinus Torvaldsconfig CMDLINE 14621da177e4SLinus Torvalds string "Default kernel command string" 14631da177e4SLinus Torvalds default "" 14641da177e4SLinus Torvalds help 14651da177e4SLinus Torvalds On some architectures (EBSA110 and CATS), there is currently no way 14661da177e4SLinus Torvalds for the boot loader to pass arguments to the kernel. For these 14671da177e4SLinus Torvalds architectures, you should supply some command-line options at build 14681da177e4SLinus Torvalds time by entering them here. As a minimum, you should specify the 14691da177e4SLinus Torvalds memory size and the root device (e.g., mem=64M root=/dev/nfs). 14701da177e4SLinus Torvalds 147192d2040dSAlexander Hollerconfig CMDLINE_FORCE 147292d2040dSAlexander Holler bool "Always use the default kernel command string" 147392d2040dSAlexander Holler depends on CMDLINE != "" 147492d2040dSAlexander Holler help 147592d2040dSAlexander Holler Always use the default kernel command string, even if the boot 147692d2040dSAlexander Holler loader passes other arguments to the kernel. 147792d2040dSAlexander Holler This is useful if you cannot or don't want to change the 147892d2040dSAlexander Holler command-line options your boot loader passes to the kernel. 147992d2040dSAlexander Holler 148092d2040dSAlexander Holler If unsure, say N. 148192d2040dSAlexander Holler 14821da177e4SLinus Torvaldsconfig XIP_KERNEL 14831da177e4SLinus Torvalds bool "Kernel Execute-In-Place from ROM" 14841da177e4SLinus Torvalds depends on !ZBOOT_ROM 14851da177e4SLinus Torvalds help 14861da177e4SLinus Torvalds Execute-In-Place allows the kernel to run from non-volatile storage 14871da177e4SLinus Torvalds directly addressable by the CPU, such as NOR flash. This saves RAM 14881da177e4SLinus Torvalds space since the text section of the kernel is not loaded from flash 14891da177e4SLinus Torvalds to RAM. Read-write sections, such as the data section and stack, 14901da177e4SLinus Torvalds are still copied to RAM. The XIP kernel is not compressed since 14911da177e4SLinus Torvalds it has to run directly from flash, so it will take more space to 14921da177e4SLinus Torvalds store it. The flash address used to link the kernel object files, 14931da177e4SLinus Torvalds and for storing it, is configuration dependent. Therefore, if you 14941da177e4SLinus Torvalds say Y here, you must know the proper physical address where to 14951da177e4SLinus Torvalds store the kernel image depending on your own flash memory usage. 14961da177e4SLinus Torvalds 14971da177e4SLinus Torvalds Also note that the make target becomes "make xipImage" rather than 14981da177e4SLinus Torvalds "make zImage" or "make Image". The final kernel binary to put in 14991da177e4SLinus Torvalds ROM memory will be arch/arm/boot/xipImage. 15001da177e4SLinus Torvalds 15011da177e4SLinus Torvalds If unsure, say N. 15021da177e4SLinus Torvalds 15031da177e4SLinus Torvaldsconfig XIP_PHYS_ADDR 15041da177e4SLinus Torvalds hex "XIP Kernel Physical Location" 15051da177e4SLinus Torvalds depends on XIP_KERNEL 15061da177e4SLinus Torvalds default "0x00080000" 15071da177e4SLinus Torvalds help 15081da177e4SLinus Torvalds This is the physical address in your flash memory the kernel will 15091da177e4SLinus Torvalds be linked for and stored to. This address is dependent on your 15101da177e4SLinus Torvalds own flash usage. 15111da177e4SLinus Torvalds 1512c587e4a6SRichard Purdieconfig KEXEC 1513c587e4a6SRichard Purdie bool "Kexec system call (EXPERIMENTAL)" 1514c587e4a6SRichard Purdie depends on EXPERIMENTAL 1515c587e4a6SRichard Purdie help 1516c587e4a6SRichard Purdie kexec is a system call that implements the ability to shutdown your 1517c587e4a6SRichard Purdie current kernel, and to start another kernel. It is like a reboot 151801dd2fbfSMatt LaPlante but it is independent of the system firmware. And like a reboot 1519c587e4a6SRichard Purdie you can start any kernel with it, not just Linux. 1520c587e4a6SRichard Purdie 1521c587e4a6SRichard Purdie It is an ongoing process to be certain the hardware in a machine 1522c587e4a6SRichard Purdie is properly shutdown, so do not be surprised if this code does not 1523c587e4a6SRichard Purdie initially work for you. It may help to enable device hotplugging 1524c587e4a6SRichard Purdie support. 1525c587e4a6SRichard Purdie 15264cd9d6f7SRichard Purdieconfig ATAGS_PROC 15274cd9d6f7SRichard Purdie bool "Export atags in procfs" 1528b98d7291SUli Luckas depends on KEXEC 1529b98d7291SUli Luckas default y 15304cd9d6f7SRichard Purdie help 15314cd9d6f7SRichard Purdie Should the atags used to boot the kernel be exported in an "atags" 15324cd9d6f7SRichard Purdie file in procfs. Useful with kexec. 15334cd9d6f7SRichard Purdie 1534e69edc79SEric Miaoconfig AUTO_ZRELADDR 1535e69edc79SEric Miao bool "Auto calculation of the decompressed kernel image address" 1536e69edc79SEric Miao depends on !ZBOOT_ROM && !ARCH_U300 1537e69edc79SEric Miao help 1538e69edc79SEric Miao ZRELADDR is the physical address where the decompressed kernel 1539e69edc79SEric Miao image will be placed. If AUTO_ZRELADDR is selected, the address 1540e69edc79SEric Miao will be determined at run-time by masking the current IP with 1541e69edc79SEric Miao 0xf8000000. This assumes the zImage being placed in the first 128MB 1542e69edc79SEric Miao from start of memory. 1543e69edc79SEric Miao 1544e69edc79SEric Miaoconfig ZRELADDR 1545e69edc79SEric Miao hex "Physical address of the decompressed kernel image" 1546e69edc79SEric Miao depends on !AUTO_ZRELADDR 1547e69edc79SEric Miao default 0x00008000 if ARCH_BCMRING ||\ 1548e69edc79SEric Miao ARCH_CNS3XXX ||\ 1549e69edc79SEric Miao ARCH_DOVE ||\ 1550e69edc79SEric Miao ARCH_EBSA110 ||\ 1551e69edc79SEric Miao ARCH_FOOTBRIDGE ||\ 1552e69edc79SEric Miao ARCH_INTEGRATOR ||\ 1553e69edc79SEric Miao ARCH_IOP13XX ||\ 1554e69edc79SEric Miao ARCH_IOP33X ||\ 1555e69edc79SEric Miao ARCH_IXP2000 ||\ 1556e69edc79SEric Miao ARCH_IXP23XX ||\ 1557e69edc79SEric Miao ARCH_IXP4XX ||\ 1558e69edc79SEric Miao ARCH_KIRKWOOD ||\ 1559e69edc79SEric Miao ARCH_KS8695 ||\ 1560e69edc79SEric Miao ARCH_LOKI ||\ 1561e69edc79SEric Miao ARCH_MMP ||\ 1562e69edc79SEric Miao ARCH_MV78XX0 ||\ 1563e69edc79SEric Miao ARCH_NOMADIK ||\ 1564e69edc79SEric Miao ARCH_NUC93X ||\ 1565e69edc79SEric Miao ARCH_NS9XXX ||\ 1566e69edc79SEric Miao ARCH_ORION5X ||\ 1567e69edc79SEric Miao ARCH_SPEAR3XX ||\ 1568e69edc79SEric Miao ARCH_SPEAR6XX ||\ 1569e69edc79SEric Miao ARCH_U8500 ||\ 1570e69edc79SEric Miao ARCH_VERSATILE ||\ 1571e69edc79SEric Miao ARCH_W90X900 1572e69edc79SEric Miao default 0x08008000 if ARCH_MX1 ||\ 1573e69edc79SEric Miao ARCH_SHARK 1574e69edc79SEric Miao default 0x10008000 if ARCH_MSM ||\ 1575e69edc79SEric Miao ARCH_OMAP1 ||\ 1576e69edc79SEric Miao ARCH_RPC 1577e69edc79SEric Miao default 0x20008000 if ARCH_S5P6440 ||\ 1578e69edc79SEric Miao ARCH_S5P6442 ||\ 1579e69edc79SEric Miao ARCH_S5PC100 ||\ 1580e69edc79SEric Miao ARCH_S5PV210 1581e69edc79SEric Miao default 0x30008000 if ARCH_S3C2410 ||\ 1582e69edc79SEric Miao ARCH_S3C2400 ||\ 1583e69edc79SEric Miao ARCH_S3C2412 ||\ 1584e69edc79SEric Miao ARCH_S3C2416 ||\ 1585e69edc79SEric Miao ARCH_S3C2440 ||\ 1586e69edc79SEric Miao ARCH_S3C2443 1587e69edc79SEric Miao default 0x40008000 if ARCH_STMP378X ||\ 1588e69edc79SEric Miao ARCH_STMP37XX ||\ 1589e69edc79SEric Miao ARCH_SH7372 ||\ 1590e69edc79SEric Miao ARCH_SH7377 1591e69edc79SEric Miao default 0x50008000 if ARCH_S3C64XX ||\ 1592e69edc79SEric Miao ARCH_SH7367 1593e69edc79SEric Miao default 0x60008000 if ARCH_VEXPRESS 1594e69edc79SEric Miao default 0x80008000 if ARCH_MX25 ||\ 1595e69edc79SEric Miao ARCH_MX3 ||\ 1596e69edc79SEric Miao ARCH_NETX ||\ 1597e69edc79SEric Miao ARCH_OMAP2PLUS ||\ 1598e69edc79SEric Miao ARCH_PNX4008 1599e69edc79SEric Miao default 0x90008000 if ARCH_MX5 ||\ 1600e69edc79SEric Miao ARCH_MX91231 1601e69edc79SEric Miao default 0xa0008000 if ARCH_IOP32X ||\ 1602e69edc79SEric Miao ARCH_PXA ||\ 1603e69edc79SEric Miao MACH_MX27 1604e69edc79SEric Miao default 0xc0008000 if ARCH_LH7A40X ||\ 1605e69edc79SEric Miao MACH_MX21 1606e69edc79SEric Miao default 0xf0008000 if ARCH_AAEC2000 ||\ 1607e69edc79SEric Miao ARCH_L7200 1608e69edc79SEric Miao default 0xc0028000 if ARCH_CLPS711X 1609e69edc79SEric Miao default 0x70008000 if ARCH_AT91 && (ARCH_AT91CAP9 || ARCH_AT91SAM9G45) 1610e69edc79SEric Miao default 0x20008000 if ARCH_AT91 && !(ARCH_AT91CAP9 || ARCH_AT91SAM9G45) 1611e69edc79SEric Miao default 0xc0008000 if ARCH_DAVINCI && ARCH_DAVINCI_DA8XX 1612e69edc79SEric Miao default 0x80008000 if ARCH_DAVINCI && !ARCH_DAVINCI_DA8XX 1613e69edc79SEric Miao default 0x00008000 if ARCH_EP93XX && EP93XX_SDCE3_SYNC_PHYS_OFFSET 1614e69edc79SEric Miao default 0xc0008000 if ARCH_EP93XX && EP93XX_SDCE0_PHYS_OFFSET 1615e69edc79SEric Miao default 0xd0008000 if ARCH_EP93XX && EP93XX_SDCE1_PHYS_OFFSET 1616e69edc79SEric Miao default 0xe0008000 if ARCH_EP93XX && EP93XX_SDCE2_PHYS_OFFSET 1617e69edc79SEric Miao default 0xf0008000 if ARCH_EP93XX && EP93XX_SDCE3_ASYNC_PHYS_OFFSET 1618e69edc79SEric Miao default 0x00008000 if ARCH_GEMINI && GEMINI_MEM_SWAP 1619e69edc79SEric Miao default 0x10008000 if ARCH_GEMINI && !GEMINI_MEM_SWAP 1620e69edc79SEric Miao default 0x70008000 if ARCH_REALVIEW && REALVIEW_HIGH_PHYS_OFFSET 1621e69edc79SEric Miao default 0x00008000 if ARCH_REALVIEW && !REALVIEW_HIGH_PHYS_OFFSET 1622e69edc79SEric Miao default 0xc0208000 if ARCH_SA1100 && SA1111 1623e69edc79SEric Miao default 0xc0008000 if ARCH_SA1100 && !SA1111 1624e69edc79SEric Miao default 0x30108000 if ARCH_S3C2410 && PM_H1940 1625e69edc79SEric Miao default 0x28E08000 if ARCH_U300 && MACH_U300_SINGLE_RAM 1626e69edc79SEric Miao default 0x48008000 if ARCH_U300 && !MACH_U300_SINGLE_RAM 1627e69edc79SEric Miao help 1628e69edc79SEric Miao ZRELADDR is the physical address where the decompressed kernel 1629e69edc79SEric Miao image will be placed. ZRELADDR has to be specified when the 1630e69edc79SEric Miao assumption of AUTO_ZRELADDR is not valid, or when ZBOOT_ROM is 1631e69edc79SEric Miao selected. 1632e69edc79SEric Miao 16331da177e4SLinus Torvaldsendmenu 16341da177e4SLinus Torvalds 1635ac9d7efcSRussell Kingmenu "CPU Power Management" 16361da177e4SLinus Torvalds 163789c52ed4SBen Dooksif ARCH_HAS_CPUFREQ 16381da177e4SLinus Torvalds 16391da177e4SLinus Torvaldssource "drivers/cpufreq/Kconfig" 16401da177e4SLinus Torvalds 16411da177e4SLinus Torvaldsconfig CPU_FREQ_SA1100 16421da177e4SLinus Torvalds bool 16431da177e4SLinus Torvalds 16441da177e4SLinus Torvaldsconfig CPU_FREQ_SA1110 16451da177e4SLinus Torvalds bool 16461da177e4SLinus Torvalds 16471da177e4SLinus Torvaldsconfig CPU_FREQ_INTEGRATOR 16481da177e4SLinus Torvalds tristate "CPUfreq driver for ARM Integrator CPUs" 16491da177e4SLinus Torvalds depends on ARCH_INTEGRATOR && CPU_FREQ 16501da177e4SLinus Torvalds default y 16511da177e4SLinus Torvalds help 16521da177e4SLinus Torvalds This enables the CPUfreq driver for ARM Integrator CPUs. 16531da177e4SLinus Torvalds 16541da177e4SLinus Torvalds For details, take a look at <file:Documentation/cpu-freq>. 16551da177e4SLinus Torvalds 16561da177e4SLinus Torvalds If in doubt, say Y. 16571da177e4SLinus Torvalds 16589e2697ffSRussell Kingconfig CPU_FREQ_PXA 16599e2697ffSRussell King bool 16609e2697ffSRussell King depends on CPU_FREQ && ARCH_PXA && PXA25x 16619e2697ffSRussell King default y 16629e2697ffSRussell King select CPU_FREQ_DEFAULT_GOV_USERSPACE 16639e2697ffSRussell King 1664b3748dddSMark Brownconfig CPU_FREQ_S3C64XX 1665b3748dddSMark Brown bool "CPUfreq support for Samsung S3C64XX CPUs" 1666b3748dddSMark Brown depends on CPU_FREQ && CPU_S3C6410 1667b3748dddSMark Brown 16689d56c02aSBen Dooksconfig CPU_FREQ_S3C 16699d56c02aSBen Dooks bool 16709d56c02aSBen Dooks help 16719d56c02aSBen Dooks Internal configuration node for common cpufreq on Samsung SoC 16729d56c02aSBen Dooks 16739d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX 16749d56c02aSBen Dooks bool "CPUfreq driver for Samsung S3C24XX series CPUs" 16759d56c02aSBen Dooks depends on ARCH_S3C2410 && CPU_FREQ && EXPERIMENTAL 16769d56c02aSBen Dooks select CPU_FREQ_S3C 16779d56c02aSBen Dooks help 16789d56c02aSBen Dooks This enables the CPUfreq driver for the Samsung S3C24XX family 16799d56c02aSBen Dooks of CPUs. 16809d56c02aSBen Dooks 16819d56c02aSBen Dooks For details, take a look at <file:Documentation/cpu-freq>. 16829d56c02aSBen Dooks 16839d56c02aSBen Dooks If in doubt, say N. 16849d56c02aSBen Dooks 16859d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX_PLL 16869d56c02aSBen Dooks bool "Support CPUfreq changing of PLL frequency" 16879d56c02aSBen Dooks depends on CPU_FREQ_S3C24XX && EXPERIMENTAL 16889d56c02aSBen Dooks help 16899d56c02aSBen Dooks Compile in support for changing the PLL frequency from the 16909d56c02aSBen Dooks S3C24XX series CPUfreq driver. The PLL takes time to settle 16919d56c02aSBen Dooks after a frequency change, so by default it is not enabled. 16929d56c02aSBen Dooks 16939d56c02aSBen Dooks This also means that the PLL tables for the selected CPU(s) will 16949d56c02aSBen Dooks be built which may increase the size of the kernel image. 16959d56c02aSBen Dooks 16969d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX_DEBUG 16979d56c02aSBen Dooks bool "Debug CPUfreq Samsung driver core" 16989d56c02aSBen Dooks depends on CPU_FREQ_S3C24XX 16999d56c02aSBen Dooks help 17009d56c02aSBen Dooks Enable s3c_freq_dbg for the Samsung S3C CPUfreq core 17019d56c02aSBen Dooks 17029d56c02aSBen Dooksconfig CPU_FREQ_S3C24XX_IODEBUG 17039d56c02aSBen Dooks bool "Debug CPUfreq Samsung driver IO timing" 17049d56c02aSBen Dooks depends on CPU_FREQ_S3C24XX 17059d56c02aSBen Dooks help 17069d56c02aSBen Dooks Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core 17079d56c02aSBen Dooks 1708e6d197a6SBen Dooksconfig CPU_FREQ_S3C24XX_DEBUGFS 1709e6d197a6SBen Dooks bool "Export debugfs for CPUFreq" 1710e6d197a6SBen Dooks depends on CPU_FREQ_S3C24XX && DEBUG_FS 1711e6d197a6SBen Dooks help 1712e6d197a6SBen Dooks Export status information via debugfs. 1713e6d197a6SBen Dooks 17141da177e4SLinus Torvaldsendif 17151da177e4SLinus Torvalds 1716ac9d7efcSRussell Kingsource "drivers/cpuidle/Kconfig" 1717ac9d7efcSRussell King 1718ac9d7efcSRussell Kingendmenu 1719ac9d7efcSRussell King 17201da177e4SLinus Torvaldsmenu "Floating point emulation" 17211da177e4SLinus Torvalds 17221da177e4SLinus Torvaldscomment "At least one emulation must be selected" 17231da177e4SLinus Torvalds 17241da177e4SLinus Torvaldsconfig FPE_NWFPE 17251da177e4SLinus Torvalds bool "NWFPE math emulation" 17268993a44cSNicolas Pitre depends on !AEABI || OABI_COMPAT 17271da177e4SLinus Torvalds ---help--- 17281da177e4SLinus Torvalds Say Y to include the NWFPE floating point emulator in the kernel. 17291da177e4SLinus Torvalds This is necessary to run most binaries. Linux does not currently 17301da177e4SLinus Torvalds support floating point hardware so you need to say Y here even if 17311da177e4SLinus Torvalds your machine has an FPA or floating point co-processor podule. 17321da177e4SLinus Torvalds 17331da177e4SLinus Torvalds You may say N here if you are going to load the Acorn FPEmulator 17341da177e4SLinus Torvalds early in the bootup. 17351da177e4SLinus Torvalds 17361da177e4SLinus Torvaldsconfig FPE_NWFPE_XP 17371da177e4SLinus Torvalds bool "Support extended precision" 1738bedf142bSLennert Buytenhek depends on FPE_NWFPE 17391da177e4SLinus Torvalds help 17401da177e4SLinus Torvalds Say Y to include 80-bit support in the kernel floating-point 17411da177e4SLinus Torvalds emulator. Otherwise, only 32 and 64-bit support is compiled in. 17421da177e4SLinus Torvalds Note that gcc does not generate 80-bit operations by default, 17431da177e4SLinus Torvalds so in most cases this option only enlarges the size of the 17441da177e4SLinus Torvalds floating point emulator without any good reason. 17451da177e4SLinus Torvalds 17461da177e4SLinus Torvalds You almost surely want to say N here. 17471da177e4SLinus Torvalds 17481da177e4SLinus Torvaldsconfig FPE_FASTFPE 17491da177e4SLinus Torvalds bool "FastFPE math emulation (EXPERIMENTAL)" 17508993a44cSNicolas Pitre depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL 17511da177e4SLinus Torvalds ---help--- 17521da177e4SLinus Torvalds Say Y here to include the FAST floating point emulator in the kernel. 17531da177e4SLinus Torvalds This is an experimental much faster emulator which now also has full 17541da177e4SLinus Torvalds precision for the mantissa. It does not support any exceptions. 17551da177e4SLinus Torvalds It is very simple, and approximately 3-6 times faster than NWFPE. 17561da177e4SLinus Torvalds 17571da177e4SLinus Torvalds It should be sufficient for most programs. It may be not suitable 17581da177e4SLinus Torvalds for scientific calculations, but you have to check this for yourself. 17591da177e4SLinus Torvalds If you do not feel you need a faster FP emulation you should better 17601da177e4SLinus Torvalds choose NWFPE. 17611da177e4SLinus Torvalds 17621da177e4SLinus Torvaldsconfig VFP 17631da177e4SLinus Torvalds bool "VFP-format floating point maths" 1764c00d4ffdSRussell King depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON 17651da177e4SLinus Torvalds help 17661da177e4SLinus Torvalds Say Y to include VFP support code in the kernel. This is needed 17671da177e4SLinus Torvalds if your hardware includes a VFP unit. 17681da177e4SLinus Torvalds 17691da177e4SLinus Torvalds Please see <file:Documentation/arm/VFP/release-notes.txt> for 17701da177e4SLinus Torvalds release notes and additional status information. 17711da177e4SLinus Torvalds 17721da177e4SLinus Torvalds Say N if your target does not have VFP hardware. 17731da177e4SLinus Torvalds 177425ebee02SCatalin Marinasconfig VFPv3 177525ebee02SCatalin Marinas bool 177625ebee02SCatalin Marinas depends on VFP 177725ebee02SCatalin Marinas default y if CPU_V7 177825ebee02SCatalin Marinas 1779b5872db4SCatalin Marinasconfig NEON 1780b5872db4SCatalin Marinas bool "Advanced SIMD (NEON) Extension support" 1781b5872db4SCatalin Marinas depends on VFPv3 && CPU_V7 1782b5872db4SCatalin Marinas help 1783b5872db4SCatalin Marinas Say Y to include support code for NEON, the ARMv7 Advanced SIMD 1784b5872db4SCatalin Marinas Extension. 1785b5872db4SCatalin Marinas 17861da177e4SLinus Torvaldsendmenu 17871da177e4SLinus Torvalds 17881da177e4SLinus Torvaldsmenu "Userspace binary formats" 17891da177e4SLinus Torvalds 17901da177e4SLinus Torvaldssource "fs/Kconfig.binfmt" 17911da177e4SLinus Torvalds 17921da177e4SLinus Torvaldsconfig ARTHUR 17931da177e4SLinus Torvalds tristate "RISC OS personality" 1794704bdda0SNicolas Pitre depends on !AEABI 17951da177e4SLinus Torvalds help 17961da177e4SLinus Torvalds Say Y here to include the kernel code necessary if you want to run 17971da177e4SLinus Torvalds Acorn RISC OS/Arthur binaries under Linux. This code is still very 17981da177e4SLinus Torvalds experimental; if this sounds frightening, say N and sleep in peace. 17991da177e4SLinus Torvalds You can also say M here to compile this support as a module (which 18001da177e4SLinus Torvalds will be called arthur). 18011da177e4SLinus Torvalds 18021da177e4SLinus Torvaldsendmenu 18031da177e4SLinus Torvalds 18041da177e4SLinus Torvaldsmenu "Power management options" 18051da177e4SLinus Torvalds 1806eceab4acSRussell Kingsource "kernel/power/Kconfig" 18071da177e4SLinus Torvalds 1808f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE 1809f4cb5700SJohannes Berg def_bool y 1810f4cb5700SJohannes Berg 18111da177e4SLinus Torvaldsendmenu 18121da177e4SLinus Torvalds 1813d5950b43SSam Ravnborgsource "net/Kconfig" 1814d5950b43SSam Ravnborg 1815ac25150fSUwe Kleine-Königsource "drivers/Kconfig" 18161da177e4SLinus Torvalds 18171da177e4SLinus Torvaldssource "fs/Kconfig" 18181da177e4SLinus Torvalds 18191da177e4SLinus Torvaldssource "arch/arm/Kconfig.debug" 18201da177e4SLinus Torvalds 18211da177e4SLinus Torvaldssource "security/Kconfig" 18221da177e4SLinus Torvalds 18231da177e4SLinus Torvaldssource "crypto/Kconfig" 18241da177e4SLinus Torvalds 18251da177e4SLinus Torvaldssource "lib/Kconfig" 1826