linux/arch/powerpc/platforms/Kconfig.cputype
<<
>>
Prefs
   1config PPC64
   2        bool "64-bit kernel"
   3        default n
   4        select PPC_HAVE_PMU_SUPPORT
   5        help
   6          This option selects whether a 32-bit or a 64-bit kernel
   7          will be built.
   8
   9menu "Processor support"
  10choice
  11        prompt "Processor Type"
  12        depends on PPC32
  13        help
  14          There are five families of 32 bit PowerPC chips supported.
  15          The most common ones are the desktop and server CPUs (601, 603,
  16          604, 740, 750, 74xx) CPUs from Freescale and IBM, with their
  17          embedded 512x/52xx/82xx/83xx/86xx counterparts.
  18          The other embeeded parts, namely 4xx, 8xx, e200 (55xx) and e500
  19          (85xx) each form a family of their own that is not compatible
  20          with the others.
  21
  22          If unsure, select 52xx/6xx/7xx/74xx/82xx/83xx/86xx.
  23
  24config PPC_BOOK3S_32
  25        bool "512x/52xx/6xx/7xx/74xx/82xx/83xx/86xx"
  26        select PPC_FPU
  27
  28config PPC_85xx
  29        bool "Freescale 85xx"
  30        select E500
  31
  32config PPC_8xx
  33        bool "Freescale 8xx"
  34        select FSL_SOC
  35        select 8xx
  36        select PPC_LIB_RHEAP
  37
  38config 40x
  39        bool "AMCC 40x"
  40        select PPC_DCR_NATIVE
  41        select PPC_UDBG_16550
  42        select 4xx_SOC
  43        select PPC_PCI_CHOICE
  44
  45config 44x
  46        bool "AMCC 44x, 46x or 47x"
  47        select PPC_DCR_NATIVE
  48        select PPC_UDBG_16550
  49        select 4xx_SOC
  50        select PPC_PCI_CHOICE
  51        select PHYS_64BIT
  52
  53config E200
  54        bool "Freescale e200"
  55
  56endchoice
  57
  58choice
  59        prompt "Processor Type"
  60        depends on PPC64
  61        help
  62          There are two families of 64 bit PowerPC chips supported.
  63          The most common ones are the desktop and server CPUs
  64          (POWER3, RS64, POWER4, POWER5, POWER5+, POWER6, ...)
  65
  66          The other are the "embedded" processors compliant with the
  67          "Book 3E" variant of the architecture
  68
  69config PPC_BOOK3S_64
  70        bool "Server processors"
  71        select PPC_FPU
  72
  73config PPC_BOOK3E_64
  74        bool "Embedded processors"
  75        select PPC_FPU # Make it a choice ?
  76
  77endchoice
  78
  79config PPC_BOOK3S
  80        def_bool y
  81        depends on PPC_BOOK3S_32 || PPC_BOOK3S_64
  82
  83config PPC_BOOK3E
  84        def_bool y
  85        depends on PPC_BOOK3E_64
  86
  87config POWER4_ONLY
  88        bool "Optimize for POWER4"
  89        depends on PPC64 && PPC_BOOK3S
  90        default n
  91        ---help---
  92          Cause the compiler to optimize for POWER4/POWER5/PPC970 processors.
  93          The resulting binary will not work on POWER3 or RS64 processors
  94          when compiled with binutils 2.15 or later.
  95
  96config 6xx
  97        def_bool y
  98        depends on PPC32 && PPC_BOOK3S
  99        select PPC_HAVE_PMU_SUPPORT
 100
 101config POWER3
 102        bool
 103        depends on PPC64 && PPC_BOOK3S
 104        default y if !POWER4_ONLY
 105
 106config POWER4
 107        depends on PPC64 && PPC_BOOK3S
 108        def_bool y
 109
 110config TUNE_CELL
 111        bool "Optimize for Cell Broadband Engine"
 112        depends on PPC64 && PPC_BOOK3S
 113        help
 114          Cause the compiler to optimize for the PPE of the Cell Broadband
 115          Engine. This will make the code run considerably faster on Cell
 116          but somewhat slower on other machines. This option only changes
 117          the scheduling of instructions, not the selection of instructions
 118          itself, so the resulting kernel will keep running on all other
 119          machines. When building a kernel that is supposed to run only
 120          on Cell, you should also select the POWER4_ONLY option.
 121
 122# this is temp to handle compat with arch=ppc
 123config 8xx
 124        bool
 125
 126config E500
 127        select FSL_EMB_PERFMON
 128        bool
 129
 130config PPC_E500MC
 131        bool "e500mc Support"
 132        select PPC_FPU
 133        depends on E500
 134
 135config PPC_FPU
 136        bool
 137        default y if PPC64
 138
 139config FSL_EMB_PERFMON
 140        bool "Freescale Embedded Perfmon"
 141        depends on E500 || PPC_83xx
 142        help
 143          This is the Performance Monitor support found on the e500 core
 144          and some e300 cores (c3 and c4).  Select this only if your
 145          core supports the Embedded Performance Monitor APU
 146
 147config FSL_EMB_PERF_EVENT
 148        bool
 149        depends on FSL_EMB_PERFMON && PERF_EVENTS && !PPC_PERF_CTRS
 150        default y
 151
 152config FSL_EMB_PERF_EVENT_E500
 153        bool
 154        depends on FSL_EMB_PERF_EVENT && E500
 155        default y
 156
 157config 4xx
 158        bool
 159        depends on 40x || 44x
 160        default y
 161
 162config BOOKE
 163        bool
 164        depends on E200 || E500 || 44x || PPC_BOOK3E
 165        default y
 166
 167config FSL_BOOKE
 168        bool
 169        depends on E200 || E500
 170        default y
 171
 172
 173config PTE_64BIT
 174        bool
 175        depends on 44x || E500 || PPC_86xx
 176        default y if PHYS_64BIT
 177
 178config PHYS_64BIT
 179        bool 'Large physical address support' if E500 || PPC_86xx
 180        depends on (44x || E500 || PPC_86xx) && !PPC_83xx && !PPC_82xx
 181        ---help---
 182          This option enables kernel support for larger than 32-bit physical
 183          addresses.  This feature may not be available on all cores.
 184
 185          If you have more than 3.5GB of RAM or so, you also need to enable
 186          SWIOTLB under Kernel Options for this to work.  The actual number
 187          is platform-dependent.
 188
 189          If in doubt, say N here.
 190
 191config ALTIVEC
 192        bool "AltiVec Support"
 193        depends on 6xx || POWER4
 194        ---help---
 195          This option enables kernel support for the Altivec extensions to the
 196          PowerPC processor. The kernel currently supports saving and restoring
 197          altivec registers, and turning on the 'altivec enable' bit so user
 198          processes can execute altivec instructions.
 199
 200          This option is only usefully if you have a processor that supports
 201          altivec (G4, otherwise known as 74xx series), but does not have
 202          any affect on a non-altivec cpu (it does, however add code to the
 203          kernel).
 204
 205          If in doubt, say Y here.
 206
 207config VSX
 208        bool "VSX Support"
 209        depends on POWER4 && ALTIVEC && PPC_FPU
 210        ---help---
 211
 212          This option enables kernel support for the Vector Scaler extensions
 213          to the PowerPC processor. The kernel currently supports saving and
 214          restoring VSX registers, and turning on the 'VSX enable' bit so user
 215          processes can execute VSX instructions.
 216
 217          This option is only useful if you have a processor that supports
 218          VSX (P7 and above), but does not have any affect on a non-VSX
 219          CPUs (it does, however add code to the kernel).
 220
 221          If in doubt, say Y here.
 222
 223config SPE
 224        bool "SPE Support"
 225        depends on E200 || (E500 && !PPC_E500MC)
 226        default y
 227        ---help---
 228          This option enables kernel support for the Signal Processing
 229          Extensions (SPE) to the PowerPC processor. The kernel currently
 230          supports saving and restoring SPE registers, and turning on the
 231          'spe enable' bit so user processes can execute SPE instructions.
 232
 233          This option is only useful if you have a processor that supports
 234          SPE (e500, otherwise known as 85xx series), but does not have any
 235          effect on a non-spe cpu (it does, however add code to the kernel).
 236
 237          If in doubt, say Y here.
 238
 239config PPC_STD_MMU
 240        def_bool y
 241        depends on PPC_BOOK3S
 242
 243config PPC_STD_MMU_32
 244        def_bool y
 245        depends on PPC_STD_MMU && PPC32
 246
 247config PPC_STD_MMU_64
 248        def_bool y
 249        depends on PPC_STD_MMU && PPC64
 250
 251config PPC_MMU_NOHASH
 252        def_bool y
 253        depends on !PPC_STD_MMU
 254
 255config PPC_MMU_NOHASH_32
 256        def_bool y
 257        depends on PPC_MMU_NOHASH && PPC32
 258
 259config PPC_MMU_NOHASH_64
 260        def_bool y
 261        depends on PPC_MMU_NOHASH && PPC64
 262
 263config PPC_BOOK3E_MMU
 264        def_bool y
 265        depends on FSL_BOOKE || PPC_BOOK3E
 266
 267config PPC_MM_SLICES
 268        bool
 269        default y if HUGETLB_PAGE || (PPC_STD_MMU_64 && PPC_64K_PAGES)
 270        default n
 271
 272config VIRT_CPU_ACCOUNTING
 273        bool "Deterministic task and CPU time accounting"
 274        depends on PPC64
 275        default y
 276        help
 277          Select this option to enable more accurate task and CPU time
 278          accounting.  This is done by reading a CPU counter on each
 279          kernel entry and exit and on transitions within the kernel
 280          between system, softirq and hardirq state, so there is a
 281          small performance impact.  This also enables accounting of
 282          stolen time on logically-partitioned systems running on
 283          IBM POWER5-based machines.
 284
 285          If in doubt, say Y here.
 286
 287config PPC_HAVE_PMU_SUPPORT
 288       bool
 289
 290config PPC_PERF_CTRS
 291       def_bool y
 292       depends on PERF_EVENTS && PPC_HAVE_PMU_SUPPORT
 293       help
 294         This enables the powerpc-specific perf_event back-end.
 295
 296config SMP
 297        depends on PPC_BOOK3S || PPC_BOOK3E || FSL_BOOKE || PPC_47x
 298        bool "Symmetric multi-processing support"
 299        ---help---
 300          This enables support for systems with more than one CPU. If you have
 301          a system with only one CPU, say N. If you have a system with more
 302          than one CPU, say Y.  Note that the kernel does not currently
 303          support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
 304          since they have inadequate hardware support for multiprocessor
 305          operation.
 306
 307          If you say N here, the kernel will run on single and multiprocessor
 308          machines, but will use only one CPU of a multiprocessor machine. If
 309          you say Y here, the kernel will run on single-processor machines.
 310          On a single-processor machine, the kernel will run faster if you say
 311          N here.
 312
 313          If you don't know what to do here, say N.
 314
 315config NR_CPUS
 316        int "Maximum number of CPUs (2-8192)"
 317        range 2 8192
 318        depends on SMP
 319        default "32" if PPC64
 320        default "4"
 321
 322config NOT_COHERENT_CACHE
 323        bool
 324        depends on 4xx || 8xx || E200 || PPC_MPC512x || GAMECUBE_COMMON
 325        default n if PPC_47x
 326        default y
 327
 328config CHECK_CACHE_COHERENCY
 329        bool
 330
 331endmenu
 332
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.