blob: 86eb4cf31f0b0ef667a7eb08cad1511acdc7abb5 [file] [log] [blame]
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +10001config PPC64
2 bool "64-bit kernel"
3 default n
4 help
5 This option selects whether a 32-bit or a 64-bit kernel
6 will be built.
7
8menu "Processor support"
9choice
10 prompt "Processor Type"
11 depends on PPC32
12 default 6xx
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100013 help
Arnd Bergmannb9fd3052007-06-18 01:06:52 +020014 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 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.
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100021
Arnd Bergmannb9fd3052007-06-18 01:06:52 +020022 If unsure, select 52xx/6xx/7xx/74xx/82xx/83xx/86xx.
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100023
Arnd Bergmannb9fd3052007-06-18 01:06:52 +020024config 6xx
25 bool "52xx/6xx/7xx/74xx/82xx/83xx/86xx"
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100026 select PPC_FPU
27
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100028config PPC_85xx
29 bool "Freescale 85xx"
30 select E500
31 select FSL_SOC
32 select 85xx
33 select WANT_DEVICE_TREE
34
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100035config PPC_8xx
36 bool "Freescale 8xx"
37 select FSL_SOC
38 select 8xx
Scott Wood0b195812007-08-21 03:40:01 +100039 select WANT_DEVICE_TREE
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100040
41config 40x
42 bool "AMCC 40x"
43 select PPC_DCR_NATIVE
Josh Boyer3cc248a2007-08-20 07:27:42 -050044 select WANT_DEVICE_TREE
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +100045
46config 44x
47 bool "AMCC 44x"
48 select PPC_DCR_NATIVE
49 select WANT_DEVICE_TREE
50
51config E200
52 bool "Freescale e200"
53
54endchoice
55
56config POWER4_ONLY
57 bool "Optimize for POWER4"
58 depends on PPC64
59 default n
60 ---help---
61 Cause the compiler to optimize for POWER4/POWER5/PPC970 processors.
62 The resulting binary will not work on POWER3 or RS64 processors
63 when compiled with binutils 2.15 or later.
64
65config POWER3
66 bool
67 depends on PPC64
68 default y if !POWER4_ONLY
69
70config POWER4
71 depends on PPC64
72 def_bool y
73
74config 6xx
75 bool
76
77# this is temp to handle compat with arch=ppc
78config 8xx
79 bool
80
81# this is temp to handle compat with arch=ppc
82config 83xx
83 bool
84
85# this is temp to handle compat with arch=ppc
86config 85xx
87 bool
88
89config E500
90 bool
91
92config PPC_FPU
93 bool
94 default y if PPC64
95
96config 4xx
97 bool
98 depends on 40x || 44x
99 default y
100
101config BOOKE
102 bool
103 depends on E200 || E500 || 44x
104 default y
105
106config FSL_BOOKE
107 bool
108 depends on E200 || E500
109 default y
110
111config PTE_64BIT
112 bool
113 depends on 44x || E500
114 default y if 44x
115 default y if E500 && PHYS_64BIT
116
117config PHYS_64BIT
118 bool 'Large physical address support' if E500
119 depends on 44x || E500
120 select RESOURCES_64BIT
121 default y if 44x
122 ---help---
123 This option enables kernel support for larger than 32-bit physical
124 addresses. This features is not be available on all e500 cores.
125
126 If in doubt, say N here.
127
128config ALTIVEC
129 bool "AltiVec Support"
130 depends on CLASSIC32 || POWER4
131 ---help---
132 This option enables kernel support for the Altivec extensions to the
133 PowerPC processor. The kernel currently supports saving and restoring
134 altivec registers, and turning on the 'altivec enable' bit so user
135 processes can execute altivec instructions.
136
137 This option is only usefully if you have a processor that supports
138 altivec (G4, otherwise known as 74xx series), but does not have
139 any affect on a non-altivec cpu (it does, however add code to the
140 kernel).
141
142 If in doubt, say Y here.
143
144config SPE
145 bool "SPE Support"
146 depends on E200 || E500
147 default y
148 ---help---
149 This option enables kernel support for the Signal Processing
150 Extensions (SPE) to the PowerPC processor. The kernel currently
151 supports saving and restoring SPE registers, and turning on the
152 'spe enable' bit so user processes can execute SPE instructions.
153
154 This option is only useful if you have a processor that supports
155 SPE (e500, otherwise known as 85xx series), but does not have any
156 effect on a non-spe cpu (it does, however add code to the kernel).
157
158 If in doubt, say Y here.
159
160config PPC_STD_MMU
161 bool
162 depends on 6xx || POWER3 || POWER4 || PPC64
163 default y
164
165config PPC_STD_MMU_32
166 def_bool y
167 depends on PPC_STD_MMU && PPC32
168
169config PPC_MM_SLICES
170 bool
171 default y if HUGETLB_PAGE
172 default n
173
174config VIRT_CPU_ACCOUNTING
175 bool "Deterministic task and CPU time accounting"
176 depends on PPC64
177 default y
178 help
179 Select this option to enable more accurate task and CPU time
180 accounting. This is done by reading a CPU counter on each
181 kernel entry and exit and on transitions within the kernel
182 between system, softirq and hardirq state, so there is a
183 small performance impact. This also enables accounting of
184 stolen time on logically-partitioned systems running on
185 IBM POWER5-based machines.
186
187 If in doubt, say Y here.
188
189config SMP
190 depends on PPC_STD_MMU
191 bool "Symmetric multi-processing support"
192 ---help---
193 This enables support for systems with more than one CPU. If you have
194 a system with only one CPU, say N. If you have a system with more
195 than one CPU, say Y. Note that the kernel does not currently
196 support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
197 since they have inadequate hardware support for multiprocessor
198 operation.
199
200 If you say N here, the kernel will run on single and multiprocessor
201 machines, but will use only one CPU of a multiprocessor machine. If
202 you say Y here, the kernel will run on single-processor machines.
203 On a single-processor machine, the kernel will run faster if you say
204 N here.
205
206 If you don't know what to do here, say N.
207
208config NR_CPUS
209 int "Maximum number of CPUs (2-128)"
210 range 2 128
211 depends on SMP
212 default "32" if PPC64
213 default "4"
214
215config NOT_COHERENT_CACHE
216 bool
217 depends on 4xx || 8xx || E200
218 default y
219
Robert P. J. Dayf8eb77d2007-07-18 08:21:29 +1000220config CHECK_CACHE_COHERENCY
Arnd Bergmanna0ae9c72007-06-13 02:30:17 +1000221 bool
222
223endmenu