11da177e4SLinus Torvaldscomment "Processor Type" 21da177e4SLinus Torvalds 31da177e4SLinus Torvaldsconfig CPU_32 41da177e4SLinus Torvalds bool 51da177e4SLinus Torvalds default y 61da177e4SLinus Torvalds 71da177e4SLinus Torvalds# Select CPU types depending on the architecture selected. This selects 81da177e4SLinus Torvalds# which CPUs we support in the kernel image, and the compiler instruction 91da177e4SLinus Torvalds# optimiser behaviour. 101da177e4SLinus Torvalds 111da177e4SLinus Torvalds# ARM610 121da177e4SLinus Torvaldsconfig CPU_ARM610 13c750815eSRussell King bool "Support ARM610 processor" if ARCH_RPC 141da177e4SLinus Torvalds select CPU_32v3 151da177e4SLinus Torvalds select CPU_CACHE_V3 161da177e4SLinus Torvalds select CPU_CACHE_VIVT 17fefdaa06SHyok S. Choi select CPU_CP15_MMU 18f9c21a6eSHyok S. Choi select CPU_COPY_V3 if MMU 19f9c21a6eSHyok S. Choi select CPU_TLB_V3 if MMU 204fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 211da177e4SLinus Torvalds help 221da177e4SLinus Torvalds The ARM610 is the successor to the ARM3 processor 231da177e4SLinus Torvalds and was produced by VLSI Technology Inc. 241da177e4SLinus Torvalds 251da177e4SLinus Torvalds Say Y if you want support for the ARM610 processor. 261da177e4SLinus Torvalds Otherwise, say N. 271da177e4SLinus Torvalds 2807e0da78SHyok S. Choi# ARM7TDMI 2907e0da78SHyok S. Choiconfig CPU_ARM7TDMI 3007e0da78SHyok S. Choi bool "Support ARM7TDMI processor" 316b237a35SRussell King depends on !MMU 3207e0da78SHyok S. Choi select CPU_32v4T 3307e0da78SHyok S. Choi select CPU_ABRT_LV4T 344fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 3507e0da78SHyok S. Choi select CPU_CACHE_V4 3607e0da78SHyok S. Choi help 3707e0da78SHyok S. Choi A 32-bit RISC microprocessor based on the ARM7 processor core 3807e0da78SHyok S. Choi which has no memory control unit and cache. 3907e0da78SHyok S. Choi 4007e0da78SHyok S. Choi Say Y if you want support for the ARM7TDMI processor. 4107e0da78SHyok S. Choi Otherwise, say N. 4207e0da78SHyok S. Choi 431da177e4SLinus Torvalds# ARM710 441da177e4SLinus Torvaldsconfig CPU_ARM710 45c750815eSRussell King bool "Support ARM710 processor" if ARCH_RPC 461da177e4SLinus Torvalds select CPU_32v3 471da177e4SLinus Torvalds select CPU_CACHE_V3 481da177e4SLinus Torvalds select CPU_CACHE_VIVT 49fefdaa06SHyok S. Choi select CPU_CP15_MMU 50f9c21a6eSHyok S. Choi select CPU_COPY_V3 if MMU 51f9c21a6eSHyok S. Choi select CPU_TLB_V3 if MMU 524fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 531da177e4SLinus Torvalds help 541da177e4SLinus Torvalds A 32-bit RISC microprocessor based on the ARM7 processor core 551da177e4SLinus Torvalds designed by Advanced RISC Machines Ltd. The ARM710 is the 561da177e4SLinus Torvalds successor to the ARM610 processor. It was released in 571da177e4SLinus Torvalds July 1994 by VLSI Technology Inc. 581da177e4SLinus Torvalds 591da177e4SLinus Torvalds Say Y if you want support for the ARM710 processor. 601da177e4SLinus Torvalds Otherwise, say N. 611da177e4SLinus Torvalds 621da177e4SLinus Torvalds# ARM720T 631da177e4SLinus Torvaldsconfig CPU_ARM720T 64c750815eSRussell King bool "Support ARM720T processor" if ARCH_INTEGRATOR 65260e98edSLennert Buytenhek select CPU_32v4T 661da177e4SLinus Torvalds select CPU_ABRT_LV4T 674fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 681da177e4SLinus Torvalds select CPU_CACHE_V4 691da177e4SLinus Torvalds select CPU_CACHE_VIVT 70fefdaa06SHyok S. Choi select CPU_CP15_MMU 71f9c21a6eSHyok S. Choi select CPU_COPY_V4WT if MMU 72f9c21a6eSHyok S. Choi select CPU_TLB_V4WT if MMU 731da177e4SLinus Torvalds help 741da177e4SLinus Torvalds A 32-bit RISC processor with 8kByte Cache, Write Buffer and 751da177e4SLinus Torvalds MMU built around an ARM7TDMI core. 761da177e4SLinus Torvalds 771da177e4SLinus Torvalds Say Y if you want support for the ARM720T processor. 781da177e4SLinus Torvalds Otherwise, say N. 791da177e4SLinus Torvalds 80b731c311SHyok S. Choi# ARM740T 81b731c311SHyok S. Choiconfig CPU_ARM740T 82b731c311SHyok S. Choi bool "Support ARM740T processor" if ARCH_INTEGRATOR 836b237a35SRussell King depends on !MMU 84b731c311SHyok S. Choi select CPU_32v4T 85b731c311SHyok S. Choi select CPU_ABRT_LV4T 864fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 87b731c311SHyok S. Choi select CPU_CACHE_V3 # although the core is v4t 88b731c311SHyok S. Choi select CPU_CP15_MPU 89b731c311SHyok S. Choi help 90b731c311SHyok S. Choi A 32-bit RISC processor with 8KB cache or 4KB variants, 91b731c311SHyok S. Choi write buffer and MPU(Protection Unit) built around 92b731c311SHyok S. Choi an ARM7TDMI core. 93b731c311SHyok S. Choi 94b731c311SHyok S. Choi Say Y if you want support for the ARM740T processor. 95b731c311SHyok S. Choi Otherwise, say N. 96b731c311SHyok S. Choi 9743f5f014SHyok S. Choi# ARM9TDMI 9843f5f014SHyok S. Choiconfig CPU_ARM9TDMI 9943f5f014SHyok S. Choi bool "Support ARM9TDMI processor" 1006b237a35SRussell King depends on !MMU 10143f5f014SHyok S. Choi select CPU_32v4T 1020f45d7f3SHyok S. Choi select CPU_ABRT_NOMMU 1034fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 10443f5f014SHyok S. Choi select CPU_CACHE_V4 10543f5f014SHyok S. Choi help 10643f5f014SHyok S. Choi A 32-bit RISC microprocessor based on the ARM9 processor core 10743f5f014SHyok S. Choi which has no memory control unit and cache. 10843f5f014SHyok S. Choi 10943f5f014SHyok S. Choi Say Y if you want support for the ARM9TDMI processor. 11043f5f014SHyok S. Choi Otherwise, say N. 11143f5f014SHyok S. Choi 1121da177e4SLinus Torvalds# ARM920T 1131da177e4SLinus Torvaldsconfig CPU_ARM920T 114c750815eSRussell King bool "Support ARM920T processor" if ARCH_INTEGRATOR 115260e98edSLennert Buytenhek select CPU_32v4T 1161da177e4SLinus Torvalds select CPU_ABRT_EV4T 1174fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 1181da177e4SLinus Torvalds select CPU_CACHE_V4WT 1191da177e4SLinus Torvalds select CPU_CACHE_VIVT 120fefdaa06SHyok S. Choi select CPU_CP15_MMU 121f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU 122f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 1231da177e4SLinus Torvalds help 1241da177e4SLinus Torvalds The ARM920T is licensed to be produced by numerous vendors, 125c768e676SHartley Sweeten and is used in the Cirrus EP93xx and the Samsung S3C2410. 1261da177e4SLinus Torvalds 1271da177e4SLinus Torvalds Say Y if you want support for the ARM920T processor. 1281da177e4SLinus Torvalds Otherwise, say N. 1291da177e4SLinus Torvalds 1301da177e4SLinus Torvalds# ARM922T 1311da177e4SLinus Torvaldsconfig CPU_ARM922T 1321da177e4SLinus Torvalds bool "Support ARM922T processor" if ARCH_INTEGRATOR 133260e98edSLennert Buytenhek select CPU_32v4T 1341da177e4SLinus Torvalds select CPU_ABRT_EV4T 1354fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 1361da177e4SLinus Torvalds select CPU_CACHE_V4WT 1371da177e4SLinus Torvalds select CPU_CACHE_VIVT 138fefdaa06SHyok S. Choi select CPU_CP15_MMU 139f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU 140f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 1411da177e4SLinus Torvalds help 1421da177e4SLinus Torvalds The ARM922T is a version of the ARM920T, but with smaller 1431da177e4SLinus Torvalds instruction and data caches. It is used in Altera's 144c53c9cf6SAndrew Victor Excalibur XA device family and Micrel's KS8695 Centaur. 1451da177e4SLinus Torvalds 1461da177e4SLinus Torvalds Say Y if you want support for the ARM922T processor. 1471da177e4SLinus Torvalds Otherwise, say N. 1481da177e4SLinus Torvalds 1491da177e4SLinus Torvalds# ARM925T 1501da177e4SLinus Torvaldsconfig CPU_ARM925T 151b288f75fSTony Lindgren bool "Support ARM925T processor" if ARCH_OMAP1 152260e98edSLennert Buytenhek select CPU_32v4T 1531da177e4SLinus Torvalds select CPU_ABRT_EV4T 1544fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 1551da177e4SLinus Torvalds select CPU_CACHE_V4WT 1561da177e4SLinus Torvalds select CPU_CACHE_VIVT 157fefdaa06SHyok S. Choi select CPU_CP15_MMU 158f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU 159f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 1601da177e4SLinus Torvalds help 1611da177e4SLinus Torvalds The ARM925T is a mix between the ARM920T and ARM926T, but with 1621da177e4SLinus Torvalds different instruction and data caches. It is used in TI's OMAP 1631da177e4SLinus Torvalds device family. 1641da177e4SLinus Torvalds 1651da177e4SLinus Torvalds Say Y if you want support for the ARM925T processor. 1661da177e4SLinus Torvalds Otherwise, say N. 1671da177e4SLinus Torvalds 1681da177e4SLinus Torvalds# ARM926T 1691da177e4SLinus Torvaldsconfig CPU_ARM926T 170c750815eSRussell King bool "Support ARM926T processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB 1711da177e4SLinus Torvalds select CPU_32v5 1721da177e4SLinus Torvalds select CPU_ABRT_EV5TJ 1734fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 1741da177e4SLinus Torvalds select CPU_CACHE_VIVT 175fefdaa06SHyok S. Choi select CPU_CP15_MMU 176f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU 177f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 1781da177e4SLinus Torvalds help 1791da177e4SLinus Torvalds This is a variant of the ARM920. It has slightly different 1801da177e4SLinus Torvalds instruction sequences for cache and TLB operations. Curiously, 1811da177e4SLinus Torvalds there is no documentation on it at the ARM corporate website. 1821da177e4SLinus Torvalds 1831da177e4SLinus Torvalds Say Y if you want support for the ARM926T processor. 1841da177e4SLinus Torvalds Otherwise, say N. 1851da177e4SLinus Torvalds 18628853ac8SPaulius Zaleckas# FA526 18728853ac8SPaulius Zaleckasconfig CPU_FA526 18828853ac8SPaulius Zaleckas bool 18928853ac8SPaulius Zaleckas select CPU_32v4 19028853ac8SPaulius Zaleckas select CPU_ABRT_EV4 1914fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 19228853ac8SPaulius Zaleckas select CPU_CACHE_VIVT 19328853ac8SPaulius Zaleckas select CPU_CP15_MMU 19428853ac8SPaulius Zaleckas select CPU_CACHE_FA 19528853ac8SPaulius Zaleckas select CPU_COPY_FA if MMU 19628853ac8SPaulius Zaleckas select CPU_TLB_FA if MMU 19728853ac8SPaulius Zaleckas help 19828853ac8SPaulius Zaleckas The FA526 is a version of the ARMv4 compatible processor with 19928853ac8SPaulius Zaleckas Branch Target Buffer, Unified TLB and cache line size 16. 20028853ac8SPaulius Zaleckas 20128853ac8SPaulius Zaleckas Say Y if you want support for the FA526 processor. 20228853ac8SPaulius Zaleckas Otherwise, say N. 20328853ac8SPaulius Zaleckas 204d60674ebSHyok S. Choi# ARM940T 205d60674ebSHyok S. Choiconfig CPU_ARM940T 206d60674ebSHyok S. Choi bool "Support ARM940T processor" if ARCH_INTEGRATOR 2076b237a35SRussell King depends on !MMU 208d60674ebSHyok S. Choi select CPU_32v4T 2090f45d7f3SHyok S. Choi select CPU_ABRT_NOMMU 2104fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 211d60674ebSHyok S. Choi select CPU_CACHE_VIVT 212d60674ebSHyok S. Choi select CPU_CP15_MPU 213d60674ebSHyok S. Choi help 214d60674ebSHyok S. Choi ARM940T is a member of the ARM9TDMI family of general- 2153cb2fcccSMatt LaPlante purpose microprocessors with MPU and separate 4KB 216d60674ebSHyok S. Choi instruction and 4KB data cases, each with a 4-word line 217d60674ebSHyok S. Choi length. 218d60674ebSHyok S. Choi 219d60674ebSHyok S. Choi Say Y if you want support for the ARM940T processor. 220d60674ebSHyok S. Choi Otherwise, say N. 221d60674ebSHyok S. Choi 222f37f46ebSHyok S. Choi# ARM946E-S 223f37f46ebSHyok S. Choiconfig CPU_ARM946E 224f37f46ebSHyok S. Choi bool "Support ARM946E-S processor" if ARCH_INTEGRATOR 2256b237a35SRussell King depends on !MMU 226f37f46ebSHyok S. Choi select CPU_32v5 2270f45d7f3SHyok S. Choi select CPU_ABRT_NOMMU 2284fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 229f37f46ebSHyok S. Choi select CPU_CACHE_VIVT 230f37f46ebSHyok S. Choi select CPU_CP15_MPU 231f37f46ebSHyok S. Choi help 232f37f46ebSHyok S. Choi ARM946E-S is a member of the ARM9E-S family of high- 233f37f46ebSHyok S. Choi performance, 32-bit system-on-chip processor solutions. 234f37f46ebSHyok S. Choi The TCM and ARMv5TE 32-bit instruction set is supported. 235f37f46ebSHyok S. Choi 236f37f46ebSHyok S. Choi Say Y if you want support for the ARM946E-S processor. 237f37f46ebSHyok S. Choi Otherwise, say N. 238f37f46ebSHyok S. Choi 2391da177e4SLinus Torvalds# ARM1020 - needs validating 2401da177e4SLinus Torvaldsconfig CPU_ARM1020 241c750815eSRussell King bool "Support ARM1020T (rev 0) processor" if ARCH_INTEGRATOR 2421da177e4SLinus Torvalds select CPU_32v5 2431da177e4SLinus Torvalds select CPU_ABRT_EV4T 2444fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 2451da177e4SLinus Torvalds select CPU_CACHE_V4WT 2461da177e4SLinus Torvalds select CPU_CACHE_VIVT 247fefdaa06SHyok S. Choi select CPU_CP15_MMU 248f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU 249f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 2501da177e4SLinus Torvalds help 2511da177e4SLinus Torvalds The ARM1020 is the 32K cached version of the ARM10 processor, 2521da177e4SLinus Torvalds with an addition of a floating-point unit. 2531da177e4SLinus Torvalds 2541da177e4SLinus Torvalds Say Y if you want support for the ARM1020 processor. 2551da177e4SLinus Torvalds Otherwise, say N. 2561da177e4SLinus Torvalds 2571da177e4SLinus Torvalds# ARM1020E - needs validating 2581da177e4SLinus Torvaldsconfig CPU_ARM1020E 259c750815eSRussell King bool "Support ARM1020E processor" if ARCH_INTEGRATOR 2601da177e4SLinus Torvalds select CPU_32v5 2611da177e4SLinus Torvalds select CPU_ABRT_EV4T 2624fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 2631da177e4SLinus Torvalds select CPU_CACHE_V4WT 2641da177e4SLinus Torvalds select CPU_CACHE_VIVT 265fefdaa06SHyok S. Choi select CPU_CP15_MMU 266f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU 267f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 2681da177e4SLinus Torvalds depends on n 2691da177e4SLinus Torvalds 2701da177e4SLinus Torvalds# ARM1022E 2711da177e4SLinus Torvaldsconfig CPU_ARM1022 272c750815eSRussell King bool "Support ARM1022E processor" if ARCH_INTEGRATOR 2731da177e4SLinus Torvalds select CPU_32v5 2741da177e4SLinus Torvalds select CPU_ABRT_EV4T 2754fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 2761da177e4SLinus Torvalds select CPU_CACHE_VIVT 277fefdaa06SHyok S. Choi select CPU_CP15_MMU 278f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU # can probably do better 279f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 2801da177e4SLinus Torvalds help 2811da177e4SLinus Torvalds The ARM1022E is an implementation of the ARMv5TE architecture 2821da177e4SLinus Torvalds based upon the ARM10 integer core with a 16KiB L1 Harvard cache, 2831da177e4SLinus Torvalds embedded trace macrocell, and a floating-point unit. 2841da177e4SLinus Torvalds 2851da177e4SLinus Torvalds Say Y if you want support for the ARM1022E processor. 2861da177e4SLinus Torvalds Otherwise, say N. 2871da177e4SLinus Torvalds 2881da177e4SLinus Torvalds# ARM1026EJ-S 2891da177e4SLinus Torvaldsconfig CPU_ARM1026 290c750815eSRussell King bool "Support ARM1026EJ-S processor" if ARCH_INTEGRATOR 2911da177e4SLinus Torvalds select CPU_32v5 2921da177e4SLinus Torvalds select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10 2934fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 2941da177e4SLinus Torvalds select CPU_CACHE_VIVT 295fefdaa06SHyok S. Choi select CPU_CP15_MMU 296f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU # can probably do better 297f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 2981da177e4SLinus Torvalds help 2991da177e4SLinus Torvalds The ARM1026EJ-S is an implementation of the ARMv5TEJ architecture 3001da177e4SLinus Torvalds based upon the ARM10 integer core. 3011da177e4SLinus Torvalds 3021da177e4SLinus Torvalds Say Y if you want support for the ARM1026EJ-S processor. 3031da177e4SLinus Torvalds Otherwise, say N. 3041da177e4SLinus Torvalds 3051da177e4SLinus Torvalds# SA110 3061da177e4SLinus Torvaldsconfig CPU_SA110 307c750815eSRussell King bool "Support StrongARM(R) SA-110 processor" if ARCH_RPC 3081da177e4SLinus Torvalds select CPU_32v3 if ARCH_RPC 3091da177e4SLinus Torvalds select CPU_32v4 if !ARCH_RPC 3101da177e4SLinus Torvalds select CPU_ABRT_EV4 3114fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 3121da177e4SLinus Torvalds select CPU_CACHE_V4WB 3131da177e4SLinus Torvalds select CPU_CACHE_VIVT 314fefdaa06SHyok S. Choi select CPU_CP15_MMU 315f9c21a6eSHyok S. Choi select CPU_COPY_V4WB if MMU 316f9c21a6eSHyok S. Choi select CPU_TLB_V4WB if MMU 3171da177e4SLinus Torvalds help 3181da177e4SLinus Torvalds The Intel StrongARM(R) SA-110 is a 32-bit microprocessor and 3191da177e4SLinus Torvalds is available at five speeds ranging from 100 MHz to 233 MHz. 3201da177e4SLinus Torvalds More information is available at 3211da177e4SLinus Torvalds <http://developer.intel.com/design/strong/sa110.htm>. 3221da177e4SLinus Torvalds 3231da177e4SLinus Torvalds Say Y if you want support for the SA-110 processor. 3241da177e4SLinus Torvalds Otherwise, say N. 3251da177e4SLinus Torvalds 3261da177e4SLinus Torvalds# SA1100 3271da177e4SLinus Torvaldsconfig CPU_SA1100 3281da177e4SLinus Torvalds bool 3291da177e4SLinus Torvalds select CPU_32v4 3301da177e4SLinus Torvalds select CPU_ABRT_EV4 3314fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 3321da177e4SLinus Torvalds select CPU_CACHE_V4WB 3331da177e4SLinus Torvalds select CPU_CACHE_VIVT 334fefdaa06SHyok S. Choi select CPU_CP15_MMU 335f9c21a6eSHyok S. Choi select CPU_TLB_V4WB if MMU 3361da177e4SLinus Torvalds 3371da177e4SLinus Torvalds# XScale 3381da177e4SLinus Torvaldsconfig CPU_XSCALE 3391da177e4SLinus Torvalds bool 3401da177e4SLinus Torvalds select CPU_32v5 3411da177e4SLinus Torvalds select CPU_ABRT_EV5T 3424fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 3431da177e4SLinus Torvalds select CPU_CACHE_VIVT 344fefdaa06SHyok S. Choi select CPU_CP15_MMU 345f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 3461da177e4SLinus Torvalds 34723bdf86aSLennert Buytenhek# XScale Core Version 3 34823bdf86aSLennert Buytenhekconfig CPU_XSC3 34923bdf86aSLennert Buytenhek bool 35023bdf86aSLennert Buytenhek select CPU_32v5 35123bdf86aSLennert Buytenhek select CPU_ABRT_EV5T 3524fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 35323bdf86aSLennert Buytenhek select CPU_CACHE_VIVT 354fefdaa06SHyok S. Choi select CPU_CP15_MMU 355f9c21a6eSHyok S. Choi select CPU_TLB_V4WBI if MMU 35623bdf86aSLennert Buytenhek select IO_36 35723bdf86aSLennert Buytenhek 35849cbe786SEric Miao# Marvell PJ1 (Mohawk) 35949cbe786SEric Miaoconfig CPU_MOHAWK 36049cbe786SEric Miao bool 36149cbe786SEric Miao select CPU_32v5 36249cbe786SEric Miao select CPU_ABRT_EV5T 3634fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 36449cbe786SEric Miao select CPU_CACHE_VIVT 36549cbe786SEric Miao select CPU_CP15_MMU 36649cbe786SEric Miao select CPU_TLB_V4WBI if MMU 36749cbe786SEric Miao select CPU_COPY_V4WB if MMU 36849cbe786SEric Miao 369e50d6409SAssaf Hoffman# Feroceon 370e50d6409SAssaf Hoffmanconfig CPU_FEROCEON 371e50d6409SAssaf Hoffman bool 372e50d6409SAssaf Hoffman select CPU_32v5 373e50d6409SAssaf Hoffman select CPU_ABRT_EV5T 3744fb28474SKirill A. Shutemov select CPU_PABRT_LEGACY 375e50d6409SAssaf Hoffman select CPU_CACHE_VIVT 376e50d6409SAssaf Hoffman select CPU_CP15_MMU 3770ed15071SLennert Buytenhek select CPU_COPY_FEROCEON if MMU 37899c6dc11SLennert Buytenhek select CPU_TLB_FEROCEON if MMU 379e50d6409SAssaf Hoffman 380d910a0aaSTzachi Perelsteinconfig CPU_FEROCEON_OLD_ID 381d910a0aaSTzachi Perelstein bool "Accept early Feroceon cores with an ARM926 ID" 382d910a0aaSTzachi Perelstein depends on CPU_FEROCEON && !CPU_ARM926T 383d910a0aaSTzachi Perelstein default y 384d910a0aaSTzachi Perelstein help 385d910a0aaSTzachi Perelstein This enables the usage of some old Feroceon cores 386d910a0aaSTzachi Perelstein for which the CPU ID is equal to the ARM926 ID. 387d910a0aaSTzachi Perelstein Relevant for Feroceon-1850 and early Feroceon-2850. 388d910a0aaSTzachi Perelstein 3891da177e4SLinus Torvalds# ARMv6 3901da177e4SLinus Torvaldsconfig CPU_V6 391*edabd38eSSaeed Bishara bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX || ARCH_DOVE 3921da177e4SLinus Torvalds select CPU_32v6 3931da177e4SLinus Torvalds select CPU_ABRT_EV6 3944fb28474SKirill A. Shutemov select CPU_PABRT_V6 3951da177e4SLinus Torvalds select CPU_CACHE_V6 3961da177e4SLinus Torvalds select CPU_CACHE_VIPT 397fefdaa06SHyok S. Choi select CPU_CP15_MMU 3987b4c965aSCatalin Marinas select CPU_HAS_ASID if MMU 399f9c21a6eSHyok S. Choi select CPU_COPY_V6 if MMU 400f9c21a6eSHyok S. Choi select CPU_TLB_V6 if MMU 4011da177e4SLinus Torvalds 4024a5f79e7SRussell King# ARMv6k 4034a5f79e7SRussell Kingconfig CPU_32v6K 4044a5f79e7SRussell King bool "Support ARM V6K processor extensions" if !SMP 4054a5f79e7SRussell King depends on CPU_V6 40652c543f9SQuinn Jensen default y if SMP && !ARCH_MX3 4074a5f79e7SRussell King help 4084a5f79e7SRussell King Say Y here if your ARMv6 processor supports the 'K' extension. 4094a5f79e7SRussell King This enables the kernel to use some instructions not present 4104a5f79e7SRussell King on previous processors, and as such a kernel build with this 4114a5f79e7SRussell King enabled will not boot on processors with do not support these 4124a5f79e7SRussell King instructions. 4134a5f79e7SRussell King 41423688e99SCatalin Marinas# ARMv7 41523688e99SCatalin Marinasconfig CPU_V7 4161b504bbeSColin Tuckley bool "Support ARM V7 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX 41723688e99SCatalin Marinas select CPU_32v6K 41823688e99SCatalin Marinas select CPU_32v7 41923688e99SCatalin Marinas select CPU_ABRT_EV7 4204fb28474SKirill A. Shutemov select CPU_PABRT_V7 42123688e99SCatalin Marinas select CPU_CACHE_V7 42223688e99SCatalin Marinas select CPU_CACHE_VIPT 42323688e99SCatalin Marinas select CPU_CP15_MMU 4242eb8c82bSCatalin Marinas select CPU_HAS_ASID if MMU 42523688e99SCatalin Marinas select CPU_COPY_V6 if MMU 4262ccdd1e7SCatalin Marinas select CPU_TLB_V7 if MMU 42723688e99SCatalin Marinas 4281da177e4SLinus Torvalds# Figure out what processor architecture version we should be using. 4291da177e4SLinus Torvalds# This defines the compiler instruction set which depends on the machine type. 4301da177e4SLinus Torvaldsconfig CPU_32v3 4311da177e4SLinus Torvalds bool 43260b6cf68SRussell King select TLS_REG_EMUL if SMP || !MMU 43348fa14f7SRussell King select NEEDS_SYSCALL_FOR_CMPXCHG if SMP 4341da177e4SLinus Torvalds 4351da177e4SLinus Torvaldsconfig CPU_32v4 4361da177e4SLinus Torvalds bool 43760b6cf68SRussell King select TLS_REG_EMUL if SMP || !MMU 43848fa14f7SRussell King select NEEDS_SYSCALL_FOR_CMPXCHG if SMP 4391da177e4SLinus Torvalds 440260e98edSLennert Buytenhekconfig CPU_32v4T 441260e98edSLennert Buytenhek bool 442260e98edSLennert Buytenhek select TLS_REG_EMUL if SMP || !MMU 443260e98edSLennert Buytenhek select NEEDS_SYSCALL_FOR_CMPXCHG if SMP 444260e98edSLennert Buytenhek 4451da177e4SLinus Torvaldsconfig CPU_32v5 4461da177e4SLinus Torvalds bool 44760b6cf68SRussell King select TLS_REG_EMUL if SMP || !MMU 44848fa14f7SRussell King select NEEDS_SYSCALL_FOR_CMPXCHG if SMP 4491da177e4SLinus Torvalds 4501da177e4SLinus Torvaldsconfig CPU_32v6 4511da177e4SLinus Torvalds bool 452367afaf8SCatalin Marinas select TLS_REG_EMUL if !CPU_32v6K && !MMU 4531da177e4SLinus Torvalds 45423688e99SCatalin Marinasconfig CPU_32v7 45523688e99SCatalin Marinas bool 45623688e99SCatalin Marinas 4571da177e4SLinus Torvalds# The abort model 4580f45d7f3SHyok S. Choiconfig CPU_ABRT_NOMMU 4590f45d7f3SHyok S. Choi bool 4600f45d7f3SHyok S. Choi 4611da177e4SLinus Torvaldsconfig CPU_ABRT_EV4 4621da177e4SLinus Torvalds bool 4631da177e4SLinus Torvalds 4641da177e4SLinus Torvaldsconfig CPU_ABRT_EV4T 4651da177e4SLinus Torvalds bool 4661da177e4SLinus Torvalds 4671da177e4SLinus Torvaldsconfig CPU_ABRT_LV4T 4681da177e4SLinus Torvalds bool 4691da177e4SLinus Torvalds 4701da177e4SLinus Torvaldsconfig CPU_ABRT_EV5T 4711da177e4SLinus Torvalds bool 4721da177e4SLinus Torvalds 4731da177e4SLinus Torvaldsconfig CPU_ABRT_EV5TJ 4741da177e4SLinus Torvalds bool 4751da177e4SLinus Torvalds 4761da177e4SLinus Torvaldsconfig CPU_ABRT_EV6 4771da177e4SLinus Torvalds bool 4781da177e4SLinus Torvalds 47923688e99SCatalin Marinasconfig CPU_ABRT_EV7 48023688e99SCatalin Marinas bool 48123688e99SCatalin Marinas 4824fb28474SKirill A. Shutemovconfig CPU_PABRT_LEGACY 48348d7927bSPaul Brook bool 48448d7927bSPaul Brook 4854fb28474SKirill A. Shutemovconfig CPU_PABRT_V6 4864fb28474SKirill A. Shutemov bool 4874fb28474SKirill A. Shutemov 4884fb28474SKirill A. Shutemovconfig CPU_PABRT_V7 48948d7927bSPaul Brook bool 49048d7927bSPaul Brook 4911da177e4SLinus Torvalds# The cache model 4921da177e4SLinus Torvaldsconfig CPU_CACHE_V3 4931da177e4SLinus Torvalds bool 4941da177e4SLinus Torvalds 4951da177e4SLinus Torvaldsconfig CPU_CACHE_V4 4961da177e4SLinus Torvalds bool 4971da177e4SLinus Torvalds 4981da177e4SLinus Torvaldsconfig CPU_CACHE_V4WT 4991da177e4SLinus Torvalds bool 5001da177e4SLinus Torvalds 5011da177e4SLinus Torvaldsconfig CPU_CACHE_V4WB 5021da177e4SLinus Torvalds bool 5031da177e4SLinus Torvalds 5041da177e4SLinus Torvaldsconfig CPU_CACHE_V6 5051da177e4SLinus Torvalds bool 5061da177e4SLinus Torvalds 50723688e99SCatalin Marinasconfig CPU_CACHE_V7 50823688e99SCatalin Marinas bool 50923688e99SCatalin Marinas 5101da177e4SLinus Torvaldsconfig CPU_CACHE_VIVT 5111da177e4SLinus Torvalds bool 5121da177e4SLinus Torvalds 5131da177e4SLinus Torvaldsconfig CPU_CACHE_VIPT 5141da177e4SLinus Torvalds bool 5151da177e4SLinus Torvalds 51628853ac8SPaulius Zaleckasconfig CPU_CACHE_FA 51728853ac8SPaulius Zaleckas bool 51828853ac8SPaulius Zaleckas 519f9c21a6eSHyok S. Choiif MMU 5201da177e4SLinus Torvalds# The copy-page model 5211da177e4SLinus Torvaldsconfig CPU_COPY_V3 5221da177e4SLinus Torvalds bool 5231da177e4SLinus Torvalds 5241da177e4SLinus Torvaldsconfig CPU_COPY_V4WT 5251da177e4SLinus Torvalds bool 5261da177e4SLinus Torvalds 5271da177e4SLinus Torvaldsconfig CPU_COPY_V4WB 5281da177e4SLinus Torvalds bool 5291da177e4SLinus Torvalds 5300ed15071SLennert Buytenhekconfig CPU_COPY_FEROCEON 5310ed15071SLennert Buytenhek bool 5320ed15071SLennert Buytenhek 53328853ac8SPaulius Zaleckasconfig CPU_COPY_FA 53428853ac8SPaulius Zaleckas bool 53528853ac8SPaulius Zaleckas 5361da177e4SLinus Torvaldsconfig CPU_COPY_V6 5371da177e4SLinus Torvalds bool 5381da177e4SLinus Torvalds 5391da177e4SLinus Torvalds# This selects the TLB model 5401da177e4SLinus Torvaldsconfig CPU_TLB_V3 5411da177e4SLinus Torvalds bool 5421da177e4SLinus Torvalds help 5431da177e4SLinus Torvalds ARM Architecture Version 3 TLB. 5441da177e4SLinus Torvalds 5451da177e4SLinus Torvaldsconfig CPU_TLB_V4WT 5461da177e4SLinus Torvalds bool 5471da177e4SLinus Torvalds help 5481da177e4SLinus Torvalds ARM Architecture Version 4 TLB with writethrough cache. 5491da177e4SLinus Torvalds 5501da177e4SLinus Torvaldsconfig CPU_TLB_V4WB 5511da177e4SLinus Torvalds bool 5521da177e4SLinus Torvalds help 5531da177e4SLinus Torvalds ARM Architecture Version 4 TLB with writeback cache. 5541da177e4SLinus Torvalds 5551da177e4SLinus Torvaldsconfig CPU_TLB_V4WBI 5561da177e4SLinus Torvalds bool 5571da177e4SLinus Torvalds help 5581da177e4SLinus Torvalds ARM Architecture Version 4 TLB with writeback cache and invalidate 5591da177e4SLinus Torvalds instruction cache entry. 5601da177e4SLinus Torvalds 56199c6dc11SLennert Buytenhekconfig CPU_TLB_FEROCEON 56299c6dc11SLennert Buytenhek bool 56399c6dc11SLennert Buytenhek help 56499c6dc11SLennert Buytenhek Feroceon TLB (v4wbi with non-outer-cachable page table walks). 56599c6dc11SLennert Buytenhek 56628853ac8SPaulius Zaleckasconfig CPU_TLB_FA 56728853ac8SPaulius Zaleckas bool 56828853ac8SPaulius Zaleckas help 56928853ac8SPaulius Zaleckas Faraday ARM FA526 architecture, unified TLB with writeback cache 57028853ac8SPaulius Zaleckas and invalidate instruction cache entry. Branch target buffer is 57128853ac8SPaulius Zaleckas also supported. 57228853ac8SPaulius Zaleckas 5731da177e4SLinus Torvaldsconfig CPU_TLB_V6 5741da177e4SLinus Torvalds bool 5751da177e4SLinus Torvalds 5762ccdd1e7SCatalin Marinasconfig CPU_TLB_V7 5772ccdd1e7SCatalin Marinas bool 5782ccdd1e7SCatalin Marinas 579f9c21a6eSHyok S. Choiendif 580f9c21a6eSHyok S. Choi 581516793c6SRussell Kingconfig CPU_HAS_ASID 582516793c6SRussell King bool 583516793c6SRussell King help 584516793c6SRussell King This indicates whether the CPU has the ASID register; used to 585516793c6SRussell King tag TLB and possibly cache entries. 586516793c6SRussell King 587fefdaa06SHyok S. Choiconfig CPU_CP15 588fefdaa06SHyok S. Choi bool 589fefdaa06SHyok S. Choi help 590fefdaa06SHyok S. Choi Processor has the CP15 register. 591fefdaa06SHyok S. Choi 592fefdaa06SHyok S. Choiconfig CPU_CP15_MMU 593fefdaa06SHyok S. Choi bool 594fefdaa06SHyok S. Choi select CPU_CP15 595fefdaa06SHyok S. Choi help 596fefdaa06SHyok S. Choi Processor has the CP15 register, which has MMU related registers. 597fefdaa06SHyok S. Choi 598fefdaa06SHyok S. Choiconfig CPU_CP15_MPU 599fefdaa06SHyok S. Choi bool 600fefdaa06SHyok S. Choi select CPU_CP15 601fefdaa06SHyok S. Choi help 602fefdaa06SHyok S. Choi Processor has the CP15 register, which has MPU related registers. 603fefdaa06SHyok S. Choi 60423bdf86aSLennert Buytenhek# 60523bdf86aSLennert Buytenhek# CPU supports 36-bit I/O 60623bdf86aSLennert Buytenhek# 60723bdf86aSLennert Buytenhekconfig IO_36 60823bdf86aSLennert Buytenhek bool 60923bdf86aSLennert Buytenhek 6101da177e4SLinus Torvaldscomment "Processor Features" 6111da177e4SLinus Torvalds 6121da177e4SLinus Torvaldsconfig ARM_THUMB 6131da177e4SLinus Torvalds bool "Support Thumb user binaries" 61449cbe786SEric Miao depends on CPU_ARM720T || CPU_ARM740T || CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM940T || CPU_ARM946E || CPU_ARM1020 || CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_V6 || CPU_V7 || CPU_FEROCEON 6151da177e4SLinus Torvalds default y 6161da177e4SLinus Torvalds help 6171da177e4SLinus Torvalds Say Y if you want to include kernel support for running user space 6181da177e4SLinus Torvalds Thumb binaries. 6191da177e4SLinus Torvalds 6201da177e4SLinus Torvalds The Thumb instruction set is a compressed form of the standard ARM 6211da177e4SLinus Torvalds instruction set resulting in smaller binaries at the expense of 6221da177e4SLinus Torvalds slightly less efficient code. 6231da177e4SLinus Torvalds 6241da177e4SLinus Torvalds If you don't know what this all is, saying Y is a safe choice. 6251da177e4SLinus Torvalds 626d7f864beSCatalin Marinasconfig ARM_THUMBEE 627d7f864beSCatalin Marinas bool "Enable ThumbEE CPU extension" 628d7f864beSCatalin Marinas depends on CPU_V7 629d7f864beSCatalin Marinas help 630d7f864beSCatalin Marinas Say Y here if you have a CPU with the ThumbEE extension and code to 631d7f864beSCatalin Marinas make use of it. Say N for code that can run on CPUs without ThumbEE. 632d7f864beSCatalin Marinas 6331da177e4SLinus Torvaldsconfig CPU_BIG_ENDIAN 6341da177e4SLinus Torvalds bool "Build big-endian kernel" 6351da177e4SLinus Torvalds depends on ARCH_SUPPORTS_BIG_ENDIAN 6361da177e4SLinus Torvalds help 6371da177e4SLinus Torvalds Say Y if you plan on running a kernel in big-endian mode. 6381da177e4SLinus Torvalds Note that your board must be properly built and your board 6391da177e4SLinus Torvalds port must properly enable any big-endian related features 6401da177e4SLinus Torvalds of your chipset/board/processor. 6411da177e4SLinus Torvalds 64226584853SCatalin Marinasconfig CPU_ENDIAN_BE8 64326584853SCatalin Marinas bool 64426584853SCatalin Marinas depends on CPU_BIG_ENDIAN 64526584853SCatalin Marinas default CPU_V6 || CPU_V7 64626584853SCatalin Marinas help 64726584853SCatalin Marinas Support for the BE-8 (big-endian) mode on ARMv6 and ARMv7 processors. 64826584853SCatalin Marinas 64926584853SCatalin Marinasconfig CPU_ENDIAN_BE32 65026584853SCatalin Marinas bool 65126584853SCatalin Marinas depends on CPU_BIG_ENDIAN 65226584853SCatalin Marinas default !CPU_ENDIAN_BE8 65326584853SCatalin Marinas help 65426584853SCatalin Marinas Support for the BE-32 (big-endian) mode on pre-ARMv6 processors. 65526584853SCatalin Marinas 6566afd6faeSHyok S. Choiconfig CPU_HIGH_VECTOR 6576340aa61SRobert P. J. Day depends on !MMU && CPU_CP15 && !CPU_ARM740T 6586afd6faeSHyok S. Choi bool "Select the High exception vector" 6596afd6faeSHyok S. Choi help 6606afd6faeSHyok S. Choi Say Y here to select high exception vector(0xFFFF0000~). 6616afd6faeSHyok S. Choi The exception vector can be vary depending on the platform 6626afd6faeSHyok S. Choi design in nommu mode. If your platform needs to select 6636afd6faeSHyok S. Choi high exception vector, say Y. 6646afd6faeSHyok S. Choi Otherwise or if you are unsure, say N, and the low exception 6656afd6faeSHyok S. Choi vector (0x00000000~) will be used. 6666afd6faeSHyok S. Choi 6671da177e4SLinus Torvaldsconfig CPU_ICACHE_DISABLE 668f12d0d7cSHyok S. Choi bool "Disable I-Cache (I-bit)" 669f12d0d7cSHyok S. Choi depends on CPU_CP15 && !(CPU_ARM610 || CPU_ARM710 || CPU_ARM720T || CPU_ARM740T || CPU_XSCALE || CPU_XSC3) 6701da177e4SLinus Torvalds help 6711da177e4SLinus Torvalds Say Y here to disable the processor instruction cache. Unless 6721da177e4SLinus Torvalds you have a reason not to or are unsure, say N. 6731da177e4SLinus Torvalds 6741da177e4SLinus Torvaldsconfig CPU_DCACHE_DISABLE 675f12d0d7cSHyok S. Choi bool "Disable D-Cache (C-bit)" 676f12d0d7cSHyok S. Choi depends on CPU_CP15 6771da177e4SLinus Torvalds help 6781da177e4SLinus Torvalds Say Y here to disable the processor data cache. Unless 6791da177e4SLinus Torvalds you have a reason not to or are unsure, say N. 6801da177e4SLinus Torvalds 681f37f46ebSHyok S. Choiconfig CPU_DCACHE_SIZE 682f37f46ebSHyok S. Choi hex 683f37f46ebSHyok S. Choi depends on CPU_ARM740T || CPU_ARM946E 684f37f46ebSHyok S. Choi default 0x00001000 if CPU_ARM740T 685f37f46ebSHyok S. Choi default 0x00002000 # default size for ARM946E-S 686f37f46ebSHyok S. Choi help 687f37f46ebSHyok S. Choi Some cores are synthesizable to have various sized cache. For 688f37f46ebSHyok S. Choi ARM946E-S case, it can vary from 0KB to 1MB. 689f37f46ebSHyok S. Choi To support such cache operations, it is efficient to know the size 690f37f46ebSHyok S. Choi before compile time. 691f37f46ebSHyok S. Choi If your SoC is configured to have a different size, define the value 692f37f46ebSHyok S. Choi here with proper conditions. 693f37f46ebSHyok S. Choi 6941da177e4SLinus Torvaldsconfig CPU_DCACHE_WRITETHROUGH 6951da177e4SLinus Torvalds bool "Force write through D-cache" 69628853ac8SPaulius Zaleckas depends on (CPU_ARM740T || CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM940T || CPU_ARM946E || CPU_ARM1020 || CPU_FA526) && !CPU_DCACHE_DISABLE 6971da177e4SLinus Torvalds default y if CPU_ARM925T 6981da177e4SLinus Torvalds help 6991da177e4SLinus Torvalds Say Y here to use the data cache in writethrough mode. Unless you 7001da177e4SLinus Torvalds specifically require this or are unsure, say N. 7011da177e4SLinus Torvalds 7021da177e4SLinus Torvaldsconfig CPU_CACHE_ROUND_ROBIN 7031da177e4SLinus Torvalds bool "Round robin I and D cache replacement algorithm" 704f37f46ebSHyok S. Choi depends on (CPU_ARM926T || CPU_ARM946E || CPU_ARM1020) && (!CPU_ICACHE_DISABLE || !CPU_DCACHE_DISABLE) 7051da177e4SLinus Torvalds help 7061da177e4SLinus Torvalds Say Y here to use the predictable round-robin cache replacement 7071da177e4SLinus Torvalds policy. Unless you specifically require this or are unsure, say N. 7081da177e4SLinus Torvalds 7091da177e4SLinus Torvaldsconfig CPU_BPREDICT_DISABLE 7101da177e4SLinus Torvalds bool "Disable branch prediction" 711542f869fSRussell King depends on CPU_ARM1020 || CPU_V6 || CPU_MOHAWK || CPU_XSC3 || CPU_V7 || CPU_FA526 7121da177e4SLinus Torvalds help 7131da177e4SLinus Torvalds Say Y here to disable branch prediction. If unsure, say N. 7142d2669b6SNicolas Pitre 7154b0e07a5SNicolas Pitreconfig TLS_REG_EMUL 7164b0e07a5SNicolas Pitre bool 7174b0e07a5SNicolas Pitre help 71870489c88SNicolas Pitre An SMP system using a pre-ARMv6 processor (there are apparently 71970489c88SNicolas Pitre a few prototypes like that in existence) and therefore access to 72070489c88SNicolas Pitre that required register must be emulated. 7214b0e07a5SNicolas Pitre 7222d2669b6SNicolas Pitreconfig HAS_TLS_REG 7232d2669b6SNicolas Pitre bool 72470489c88SNicolas Pitre depends on !TLS_REG_EMUL 72570489c88SNicolas Pitre default y if SMP || CPU_32v7 7262d2669b6SNicolas Pitre help 7272d2669b6SNicolas Pitre This selects support for the CP15 thread register. 72870489c88SNicolas Pitre It is defined to be available on some ARMv6 processors (including 72970489c88SNicolas Pitre all SMP capable ARMv6's) or later processors. User space may 73070489c88SNicolas Pitre assume directly accessing that register and always obtain the 73170489c88SNicolas Pitre expected value only on ARMv7 and above. 7322d2669b6SNicolas Pitre 733dcef1f63SNicolas Pitreconfig NEEDS_SYSCALL_FOR_CMPXCHG 734dcef1f63SNicolas Pitre bool 735dcef1f63SNicolas Pitre help 736dcef1f63SNicolas Pitre SMP on a pre-ARMv6 processor? Well OK then. 737dcef1f63SNicolas Pitre Forget about fast user space cmpxchg support. 738dcef1f63SNicolas Pitre It is just not possible. 739dcef1f63SNicolas Pitre 740953233dcSCatalin Marinasconfig OUTER_CACHE 741953233dcSCatalin Marinas bool 742382266adSCatalin Marinas 74399c6dc11SLennert Buytenhekconfig CACHE_FEROCEON_L2 74499c6dc11SLennert Buytenhek bool "Enable the Feroceon L2 cache controller" 745794d15b2SStanislav Samsonov depends on ARCH_KIRKWOOD || ARCH_MV78XX0 74699c6dc11SLennert Buytenhek default y 747382266adSCatalin Marinas select OUTER_CACHE 74899c6dc11SLennert Buytenhek help 74999c6dc11SLennert Buytenhek This option enables the Feroceon L2 cache controller. 75099c6dc11SLennert Buytenhek 7514360bb41SRonen Shitritconfig CACHE_FEROCEON_L2_WRITETHROUGH 7524360bb41SRonen Shitrit bool "Force Feroceon L2 cache write through" 7534360bb41SRonen Shitrit depends on CACHE_FEROCEON_L2 7544360bb41SRonen Shitrit help 7554360bb41SRonen Shitrit Say Y here to use the Feroceon L2 cache in writethrough mode. 7564360bb41SRonen Shitrit Unless you specifically require this, say N for writeback mode. 7574360bb41SRonen Shitrit 7581da177e4SLinus Torvaldsconfig CACHE_L2X0 759ba927951SCatalin Marinas bool "Enable the L2x0 outer cache controller" 760cb88214dSSascha Hauer depends on REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || MACH_REALVIEW_PB1176 || \ 7610b260fd4SAlessandro Rubini REALVIEW_EB_A9MP || ARCH_MX35 || ARCH_MX31 || MACH_REALVIEW_PBX || ARCH_NOMADIK 762ba927951SCatalin Marinas default y 7631da177e4SLinus Torvalds select OUTER_CACHE 764ba927951SCatalin Marinas help 765ba927951SCatalin Marinas This option enables the L2x0 PrimeCell. 766905a09d5SEric Miao 767905a09d5SEric Miaoconfig CACHE_XSC3L2 768905a09d5SEric Miao bool "Enable the L2 cache on XScale3" 769905a09d5SEric Miao depends on CPU_XSC3 770905a09d5SEric Miao default y 771905a09d5SEric Miao select OUTER_CACHE 772905a09d5SEric Miao help 773905a09d5SEric Miao This option enables the L2 cache on XScale3. 774910a17e5SKirill A. Shutemov 775910a17e5SKirill A. Shutemovconfig ARM_L1_CACHE_SHIFT 776910a17e5SKirill A. Shutemov int 777910a17e5SKirill A. Shutemov default 6 if ARCH_OMAP3 778910a17e5SKirill A. Shutemov default 5 779