2007-06-12 16:30:17 +00:00
|
|
|
config PPC64
|
|
|
|
bool "64-bit kernel"
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
This option selects whether a 32-bit or a 64-bit kernel
|
|
|
|
will be built.
|
|
|
|
|
|
|
|
menu "Processor support"
|
|
|
|
choice
|
|
|
|
prompt "Processor Type"
|
|
|
|
depends on PPC32
|
|
|
|
default 6xx
|
|
|
|
help
|
2007-06-17 23:06:52 +00:00
|
|
|
There are five families of 32 bit PowerPC chips supported.
|
|
|
|
The most common ones are the desktop and server CPUs (601, 603,
|
|
|
|
604, 740, 750, 74xx) CPUs from Freescale and IBM, with their
|
2008-01-28 17:28:53 +00:00
|
|
|
embedded 512x/52xx/82xx/83xx/86xx counterparts.
|
2007-06-17 23:06:52 +00:00
|
|
|
The other embeeded parts, namely 4xx, 8xx, e200 (55xx) and e500
|
|
|
|
(85xx) each form a family of their own that is not compatible
|
|
|
|
with the others.
|
|
|
|
|
|
|
|
If unsure, select 52xx/6xx/7xx/74xx/82xx/83xx/86xx.
|
|
|
|
|
|
|
|
config 6xx
|
2008-01-28 17:28:53 +00:00
|
|
|
bool "512x/52xx/6xx/7xx/74xx/82xx/83xx/86xx"
|
2007-06-12 16:30:17 +00:00
|
|
|
select PPC_FPU
|
|
|
|
|
|
|
|
config PPC_85xx
|
|
|
|
bool "Freescale 85xx"
|
|
|
|
select E500
|
|
|
|
select FSL_SOC
|
2008-01-28 16:24:30 +00:00
|
|
|
select MPC85xx
|
2007-06-12 16:30:17 +00:00
|
|
|
|
|
|
|
config PPC_8xx
|
|
|
|
bool "Freescale 8xx"
|
|
|
|
select FSL_SOC
|
|
|
|
select 8xx
|
2007-09-16 10:53:25 +00:00
|
|
|
select PPC_LIB_RHEAP
|
2007-06-12 16:30:17 +00:00
|
|
|
|
|
|
|
config 40x
|
|
|
|
bool "AMCC 40x"
|
|
|
|
select PPC_DCR_NATIVE
|
2007-12-21 04:39:26 +00:00
|
|
|
select PPC_UDBG_16550
|
2008-03-27 14:43:31 +00:00
|
|
|
select 4xx_SOC
|
2008-06-26 17:07:56 +00:00
|
|
|
select PPC_PCI_CHOICE
|
2007-06-12 16:30:17 +00:00
|
|
|
|
|
|
|
config 44x
|
|
|
|
bool "AMCC 44x"
|
|
|
|
select PPC_DCR_NATIVE
|
2007-10-18 12:55:13 +00:00
|
|
|
select PPC_UDBG_16550
|
2008-03-27 14:43:31 +00:00
|
|
|
select 4xx_SOC
|
2008-06-26 17:07:56 +00:00
|
|
|
select PPC_PCI_CHOICE
|
2008-09-24 16:01:24 +00:00
|
|
|
select PHYS_64BIT
|
2007-06-12 16:30:17 +00:00
|
|
|
|
|
|
|
config E200
|
|
|
|
bool "Freescale e200"
|
|
|
|
|
|
|
|
endchoice
|
|
|
|
|
|
|
|
config POWER4_ONLY
|
|
|
|
bool "Optimize for POWER4"
|
|
|
|
depends on PPC64
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
Cause the compiler to optimize for POWER4/POWER5/PPC970 processors.
|
|
|
|
The resulting binary will not work on POWER3 or RS64 processors
|
|
|
|
when compiled with binutils 2.15 or later.
|
|
|
|
|
|
|
|
config POWER3
|
|
|
|
bool
|
|
|
|
depends on PPC64
|
|
|
|
default y if !POWER4_ONLY
|
|
|
|
|
|
|
|
config POWER4
|
|
|
|
depends on PPC64
|
|
|
|
def_bool y
|
|
|
|
|
2007-09-15 00:21:57 +00:00
|
|
|
config TUNE_CELL
|
|
|
|
bool "Optimize for Cell Broadband Engine"
|
|
|
|
depends on PPC64
|
|
|
|
help
|
|
|
|
Cause the compiler to optimize for the PPE of the Cell Broadband
|
|
|
|
Engine. This will make the code run considerably faster on Cell
|
|
|
|
but somewhat slower on other machines. This option only changes
|
|
|
|
the scheduling of instructions, not the selection of instructions
|
|
|
|
itself, so the resulting kernel will keep running on all other
|
|
|
|
machines. When building a kernel that is supposed to run only
|
|
|
|
on Cell, you should also select the POWER4_ONLY option.
|
|
|
|
|
2007-06-12 16:30:17 +00:00
|
|
|
# this is temp to handle compat with arch=ppc
|
|
|
|
config 8xx
|
|
|
|
bool
|
|
|
|
|
|
|
|
config E500
|
2008-02-05 00:27:55 +00:00
|
|
|
select FSL_EMB_PERFMON
|
2007-06-12 16:30:17 +00:00
|
|
|
bool
|
|
|
|
|
2008-06-16 14:41:32 +00:00
|
|
|
config PPC_E500MC
|
|
|
|
bool "e500mc Support"
|
|
|
|
select PPC_FPU
|
|
|
|
depends on E500
|
|
|
|
|
2007-06-12 16:30:17 +00:00
|
|
|
config PPC_FPU
|
|
|
|
bool
|
|
|
|
default y if PPC64
|
|
|
|
|
|
|
|
config 4xx
|
|
|
|
bool
|
|
|
|
depends on 40x || 44x
|
|
|
|
default y
|
|
|
|
|
|
|
|
config BOOKE
|
|
|
|
bool
|
|
|
|
depends on E200 || E500 || 44x
|
|
|
|
default y
|
|
|
|
|
|
|
|
config FSL_BOOKE
|
|
|
|
bool
|
|
|
|
depends on E200 || E500
|
|
|
|
default y
|
|
|
|
|
2008-02-05 00:27:55 +00:00
|
|
|
config FSL_EMB_PERFMON
|
2008-03-07 23:59:03 +00:00
|
|
|
bool "Freescale Embedded Perfmon"
|
|
|
|
depends on E500 || PPC_83xx
|
|
|
|
help
|
|
|
|
This is the Performance Monitor support found on the e500 core
|
|
|
|
and some e300 cores (c3 and c4). Select this only if your
|
|
|
|
core supports the Embedded Performance Monitor APU
|
2008-02-05 00:27:55 +00:00
|
|
|
|
2007-06-12 16:30:17 +00:00
|
|
|
config PTE_64BIT
|
|
|
|
bool
|
2008-09-24 16:01:24 +00:00
|
|
|
depends on 44x || E500 || PPC_86xx
|
|
|
|
default y if PHYS_64BIT
|
2007-06-12 16:30:17 +00:00
|
|
|
|
|
|
|
config PHYS_64BIT
|
2008-09-24 16:01:24 +00:00
|
|
|
bool 'Large physical address support' if E500 || PPC_86xx
|
|
|
|
depends on (44x || E500 || PPC_86xx) && !PPC_83xx && !PPC_82xx
|
2007-06-12 16:30:17 +00:00
|
|
|
---help---
|
|
|
|
This option enables kernel support for larger than 32-bit physical
|
2008-09-24 16:01:24 +00:00
|
|
|
addresses. This feature may not be available on all cores.
|
|
|
|
|
|
|
|
If you have more than 3.5GB of RAM or so, you also need to enable
|
|
|
|
SWIOTLB under Kernel Options for this to work. The actual number
|
|
|
|
is platform-dependent.
|
2007-06-12 16:30:17 +00:00
|
|
|
|
|
|
|
If in doubt, say N here.
|
|
|
|
|
|
|
|
config ALTIVEC
|
|
|
|
bool "AltiVec Support"
|
|
|
|
depends on CLASSIC32 || POWER4
|
|
|
|
---help---
|
|
|
|
This option enables kernel support for the Altivec extensions to the
|
|
|
|
PowerPC processor. The kernel currently supports saving and restoring
|
|
|
|
altivec registers, and turning on the 'altivec enable' bit so user
|
|
|
|
processes can execute altivec instructions.
|
|
|
|
|
|
|
|
This option is only usefully if you have a processor that supports
|
|
|
|
altivec (G4, otherwise known as 74xx series), but does not have
|
|
|
|
any affect on a non-altivec cpu (it does, however add code to the
|
|
|
|
kernel).
|
|
|
|
|
|
|
|
If in doubt, say Y here.
|
|
|
|
|
2008-06-25 04:07:18 +00:00
|
|
|
config VSX
|
|
|
|
bool "VSX Support"
|
|
|
|
depends on POWER4 && ALTIVEC && PPC_FPU
|
|
|
|
---help---
|
|
|
|
|
|
|
|
This option enables kernel support for the Vector Scaler extensions
|
|
|
|
to the PowerPC processor. The kernel currently supports saving and
|
|
|
|
restoring VSX registers, and turning on the 'VSX enable' bit so user
|
|
|
|
processes can execute VSX instructions.
|
|
|
|
|
|
|
|
This option is only useful if you have a processor that supports
|
|
|
|
VSX (P7 and above), but does not have any affect on a non-VSX
|
|
|
|
CPUs (it does, however add code to the kernel).
|
|
|
|
|
|
|
|
If in doubt, say Y here.
|
|
|
|
|
2007-06-12 16:30:17 +00:00
|
|
|
config SPE
|
|
|
|
bool "SPE Support"
|
2008-06-16 14:41:32 +00:00
|
|
|
depends on E200 || (E500 && !PPC_E500MC)
|
2007-06-12 16:30:17 +00:00
|
|
|
default y
|
|
|
|
---help---
|
|
|
|
This option enables kernel support for the Signal Processing
|
|
|
|
Extensions (SPE) to the PowerPC processor. The kernel currently
|
|
|
|
supports saving and restoring SPE registers, and turning on the
|
|
|
|
'spe enable' bit so user processes can execute SPE instructions.
|
|
|
|
|
|
|
|
This option is only useful if you have a processor that supports
|
|
|
|
SPE (e500, otherwise known as 85xx series), but does not have any
|
|
|
|
effect on a non-spe cpu (it does, however add code to the kernel).
|
|
|
|
|
|
|
|
If in doubt, say Y here.
|
|
|
|
|
|
|
|
config PPC_STD_MMU
|
|
|
|
bool
|
|
|
|
depends on 6xx || POWER3 || POWER4 || PPC64
|
|
|
|
default y
|
|
|
|
|
|
|
|
config PPC_STD_MMU_32
|
|
|
|
def_bool y
|
|
|
|
depends on PPC_STD_MMU && PPC32
|
|
|
|
|
|
|
|
config PPC_MM_SLICES
|
|
|
|
bool
|
2008-06-18 05:29:12 +00:00
|
|
|
default y if HUGETLB_PAGE || PPC_64K_PAGES
|
2007-06-12 16:30:17 +00:00
|
|
|
default n
|
|
|
|
|
|
|
|
config VIRT_CPU_ACCOUNTING
|
|
|
|
bool "Deterministic task and CPU time accounting"
|
|
|
|
depends on PPC64
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Select this option to enable more accurate task and CPU time
|
|
|
|
accounting. This is done by reading a CPU counter on each
|
|
|
|
kernel entry and exit and on transitions within the kernel
|
|
|
|
between system, softirq and hardirq state, so there is a
|
|
|
|
small performance impact. This also enables accounting of
|
|
|
|
stolen time on logically-partitioned systems running on
|
|
|
|
IBM POWER5-based machines.
|
|
|
|
|
|
|
|
If in doubt, say Y here.
|
|
|
|
|
|
|
|
config SMP
|
|
|
|
depends on PPC_STD_MMU
|
|
|
|
bool "Symmetric multi-processing support"
|
|
|
|
---help---
|
|
|
|
This enables support for systems with more than one CPU. If you have
|
|
|
|
a system with only one CPU, say N. If you have a system with more
|
|
|
|
than one CPU, say Y. Note that the kernel does not currently
|
|
|
|
support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
|
|
|
|
since they have inadequate hardware support for multiprocessor
|
|
|
|
operation.
|
|
|
|
|
|
|
|
If you say N here, the kernel will run on single and multiprocessor
|
|
|
|
machines, but will use only one CPU of a multiprocessor machine. If
|
|
|
|
you say Y here, the kernel will run on single-processor machines.
|
|
|
|
On a single-processor machine, the kernel will run faster if you say
|
|
|
|
N here.
|
|
|
|
|
|
|
|
If you don't know what to do here, say N.
|
|
|
|
|
|
|
|
config NR_CPUS
|
2008-04-24 03:43:49 +00:00
|
|
|
int "Maximum number of CPUs (2-1024)"
|
|
|
|
range 2 1024
|
2007-06-12 16:30:17 +00:00
|
|
|
depends on SMP
|
|
|
|
default "32" if PPC64
|
|
|
|
default "4"
|
|
|
|
|
|
|
|
config NOT_COHERENT_CACHE
|
|
|
|
bool
|
2008-01-28 17:28:53 +00:00
|
|
|
depends on 4xx || 8xx || E200 || PPC_MPC512x
|
2007-06-12 16:30:17 +00:00
|
|
|
default y
|
|
|
|
|
2007-07-17 22:21:29 +00:00
|
|
|
config CHECK_CACHE_COHERENCY
|
2007-06-12 16:30:17 +00:00
|
|
|
bool
|
|
|
|
|
|
|
|
endmenu
|