blob: f524b3bf68c895d3829d0a0b71afd0ebd3393e80 [file] [log] [blame]
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001# For a description of the syntax of this configuration file,
2# see Documentation/kbuild/kconfig-language.txt.
3#
4
5mainmenu "Linux/PowerPC Kernel Configuration"
6
7config PPC64
8 bool "64-bit kernel"
9 default n
10 help
11 This option selects whether a 32-bit or a 64-bit kernel
12 will be built.
13
14config PPC32
15 bool
16 default y if !PPC64
17
18config 64BIT
19 bool
20 default y if PPC64
21
22config PPC_MERGE
23 def_bool y
24
25config MMU
26 bool
27 default y
28
Paul Mackerras14cf11a2005-09-26 16:04:21 +100029config GENERIC_HARDIRQS
30 bool
31 default y
32
Ingo Molnar0d7012a2006-06-29 02:24:43 -070033config IRQ_PER_CPU
34 bool
35 default y
36
Paul Mackerras14cf11a2005-09-26 16:04:21 +100037config RWSEM_GENERIC_SPINLOCK
38 bool
39
40config RWSEM_XCHGADD_ALGORITHM
41 bool
42 default y
43
Akinobu Mitae779b2f2006-03-26 01:39:33 -080044config GENERIC_HWEIGHT
45 bool
46 default y
47
Paul Mackerras14cf11a2005-09-26 16:04:21 +100048config GENERIC_CALIBRATE_DELAY
49 bool
50 default y
51
Jon Mason0a9cb462006-05-19 15:35:32 -050052config GENERIC_FIND_NEXT_BIT
53 bool
54 default y
55
Paul Mackerras14cf11a2005-09-26 16:04:21 +100056config PPC
57 bool
58 default y
59
60config EARLY_PRINTK
61 bool
Benjamin Herrenschmidt51d30822005-11-23 17:57:25 +110062 default y
Paul Mackerras14cf11a2005-09-26 16:04:21 +100063
64config COMPAT
65 bool
66 default y if PPC64
67
68config SYSVIPC_COMPAT
69 bool
70 depends on COMPAT && SYSVIPC
71 default y
72
73# All PPC32s use generic nvram driver through ppc_md
74config GENERIC_NVRAM
75 bool
76 default y if PPC32
77
78config SCHED_NO_NO_OMIT_FRAME_POINTER
79 bool
80 default y
81
82config ARCH_MAY_HAVE_PC_FDC
83 bool
84 default y
85
Kumar Gala08264cb2006-01-10 21:43:56 -060086config PPC_OF
87 def_bool y
88
89config PPC_UDBG_16550
90 bool
91 default n
92
Kumar Gala08264cb2006-01-10 21:43:56 -060093config GENERIC_TBSYNC
94 bool
95 default y if PPC32 && SMP
96 default n
97
Al Viroe65e1fc2006-09-12 03:04:40 -040098config AUDIT_ARCH
99 bool
100 default y
101
Kumar Galaf4fc4a52006-01-16 10:53:22 -0600102config DEFAULT_UIMAGE
103 bool
104 help
105 Used to allow a board to specify it wants a uImage built by default
106 default n
107
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000108menu "Processor support"
109choice
110 prompt "Processor Type"
111 depends on PPC32
112 default 6xx
113
Kumar Gala08264cb2006-01-10 21:43:56 -0600114config CLASSIC32
Grant Likely650f3282006-12-04 17:29:13 -0700115 bool "52xx/6xx/7xx/74xx"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000116 select PPC_FPU
Kumar Gala08264cb2006-01-10 21:43:56 -0600117 select 6xx
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000118 help
119 There are four families of PowerPC chips supported. The more common
120 types (601, 603, 604, 740, 750, 7400), the Motorola embedded
121 versions (821, 823, 850, 855, 860, 52xx, 82xx, 83xx), the AMCC
122 embedded versions (403 and 405) and the high end 64 bit Power
123 processors (POWER 3, POWER4, and IBM PPC970 also known as G5).
Grant Likely650f3282006-12-04 17:29:13 -0700124
125 This option is the catch-all for 6xx types, including some of the
126 embedded versions. Unless there is see an option for the specific
127 chip family you are using, you want this option.
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000128
Grant Likely650f3282006-12-04 17:29:13 -0700129 You do not want this if you are building a kernel for a 64 bit
130 IBM RS/6000 or an Apple G5, choose 6xx.
131
132 If unsure, select this option
133
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000134 Note that the kernel runs in 32-bit mode even on 64-bit chips.
135
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000136config PPC_82xx
137 bool "Freescale 82xx"
Kumar Gala08264cb2006-01-10 21:43:56 -0600138 select 6xx
139 select PPC_FPU
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000140
141config PPC_83xx
142 bool "Freescale 83xx"
Kumar Gala08264cb2006-01-10 21:43:56 -0600143 select 6xx
144 select FSL_SOC
145 select 83xx
146 select PPC_FPU
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000147
Becky Bruce63dafe52006-01-14 16:57:39 -0600148config PPC_85xx
149 bool "Freescale 85xx"
150 select E500
151 select FSL_SOC
152 select 85xx
153
Jon Loeligerc9b484b2006-06-17 17:52:35 -0500154config PPC_86xx
155 bool "Freescale 86xx"
156 select 6xx
157 select FSL_SOC
158 select PPC_FPU
159 select ALTIVEC
160 help
161 The Freescale E600 SoCs have 74xx cores.
162
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000163config 40x
164 bool "AMCC 40x"
Benjamin Herrenschmidt4c75a6f2006-11-11 17:24:53 +1100165 select PPC_DCR_NATIVE
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000166
167config 44x
168 bool "AMCC 44x"
Benjamin Herrenschmidt4c75a6f2006-11-11 17:24:53 +1100169 select PPC_DCR_NATIVE
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000170
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000171config 8xx
172 bool "Freescale 8xx"
173
174config E200
175 bool "Freescale e200"
176
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000177endchoice
178
179config POWER4_ONLY
180 bool "Optimize for POWER4"
Paul Mackerras187a0062005-10-06 12:49:05 +1000181 depends on PPC64
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000182 default n
183 ---help---
184 Cause the compiler to optimize for POWER4/POWER5/PPC970 processors.
185 The resulting binary will not work on POWER3 or RS64 processors
186 when compiled with binutils 2.15 or later.
187
188config POWER3
189 bool
Paul Mackerras187a0062005-10-06 12:49:05 +1000190 depends on PPC64
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000191 default y if !POWER4_ONLY
192
193config POWER4
Paul Mackerras187a0062005-10-06 12:49:05 +1000194 depends on PPC64
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000195 def_bool y
196
Kumar Gala08264cb2006-01-10 21:43:56 -0600197config 6xx
198 bool
199
200# this is temp to handle compat with arch=ppc
201config 83xx
202 bool
203
Becky Bruce63dafe52006-01-14 16:57:39 -0600204# this is temp to handle compat with arch=ppc
205config 85xx
206 bool
207
208config E500
209 bool
210
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000211config PPC_FPU
Paul Mackerras187a0062005-10-06 12:49:05 +1000212 bool
213 default y if PPC64
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000214
Benjamin Herrenschmidt4c75a6f2006-11-11 17:24:53 +1100215config PPC_DCR_NATIVE
216 bool
217 default n
218
219config PPC_DCR_MMIO
220 bool
221 default n
222
223config PPC_DCR
224 bool
225 depends on PPC_DCR_NATIVE || PPC_DCR_MMIO
226 default y
227
Benjamin Herrenschmidt4c9d2802006-11-11 17:25:08 +1100228config PPC_OF_PLATFORM_PCI
229 bool
230 depends on PPC64 # not supported on 32 bits yet
231 default n
232
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000233config BOOKE
234 bool
235 depends on E200 || E500
236 default y
237
238config FSL_BOOKE
239 bool
240 depends on E200 || E500
241 default y
242
243config PTE_64BIT
244 bool
245 depends on 44x || E500
246 default y if 44x
247 default y if E500 && PHYS_64BIT
248
249config PHYS_64BIT
250 bool 'Large physical address support' if E500
251 depends on 44x || E500
Benjamin Herrenschmidt3d1ea8e2006-11-11 17:25:19 +1100252 select RESOURCES_64BIT
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000253 default y if 44x
254 ---help---
255 This option enables kernel support for larger than 32-bit physical
256 addresses. This features is not be available on all e500 cores.
257
258 If in doubt, say N here.
259
260config ALTIVEC
261 bool "AltiVec Support"
Kumar Gala08264cb2006-01-10 21:43:56 -0600262 depends on CLASSIC32 || POWER4
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000263 ---help---
264 This option enables kernel support for the Altivec extensions to the
265 PowerPC processor. The kernel currently supports saving and restoring
266 altivec registers, and turning on the 'altivec enable' bit so user
267 processes can execute altivec instructions.
268
269 This option is only usefully if you have a processor that supports
270 altivec (G4, otherwise known as 74xx series), but does not have
271 any affect on a non-altivec cpu (it does, however add code to the
272 kernel).
273
274 If in doubt, say Y here.
275
276config SPE
277 bool "SPE Support"
278 depends on E200 || E500
Becky Bruce63dafe52006-01-14 16:57:39 -0600279 default y
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000280 ---help---
281 This option enables kernel support for the Signal Processing
282 Extensions (SPE) to the PowerPC processor. The kernel currently
283 supports saving and restoring SPE registers, and turning on the
284 'spe enable' bit so user processes can execute SPE instructions.
285
286 This option is only useful if you have a processor that supports
287 SPE (e500, otherwise known as 85xx series), but does not have any
288 effect on a non-spe cpu (it does, however add code to the kernel).
289
290 If in doubt, say Y here.
291
292config PPC_STD_MMU
293 bool
294 depends on 6xx || POWER3 || POWER4 || PPC64
295 default y
296
297config PPC_STD_MMU_32
298 def_bool y
299 depends on PPC_STD_MMU && PPC32
300
Paul Mackerrasc6622f62006-02-24 10:06:59 +1100301config VIRT_CPU_ACCOUNTING
302 bool "Deterministic task and CPU time accounting"
303 depends on PPC64
304 default y
305 help
306 Select this option to enable more accurate task and CPU time
307 accounting. This is done by reading a CPU counter on each
308 kernel entry and exit and on transitions within the kernel
309 between system, softirq and hardirq state, so there is a
310 small performance impact. This also enables accounting of
311 stolen time on logically-partitioned systems running on
312 IBM POWER5-based machines.
313
314 If in doubt, say Y here.
315
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000316config SMP
317 depends on PPC_STD_MMU
318 bool "Symmetric multi-processing support"
319 ---help---
320 This enables support for systems with more than one CPU. If you have
321 a system with only one CPU, say N. If you have a system with more
322 than one CPU, say Y. Note that the kernel does not currently
323 support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
324 since they have inadequate hardware support for multiprocessor
325 operation.
326
327 If you say N here, the kernel will run on single and multiprocessor
328 machines, but will use only one CPU of a multiprocessor machine. If
329 you say Y here, the kernel will run on single-processor machines.
330 On a single-processor machine, the kernel will run faster if you say
331 N here.
332
333 If you don't know what to do here, say N.
334
335config NR_CPUS
Olaf Heringe8a167a2005-12-01 21:10:10 +0100336 int "Maximum number of CPUs (2-128)"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000337 range 2 128
338 depends on SMP
339 default "32" if PPC64
340 default "4"
341
342config NOT_COHERENT_CACHE
343 bool
344 depends on 4xx || 8xx || E200
345 default y
346endmenu
347
348source "init/Kconfig"
349
350menu "Platform support"
Kumar Gala08264cb2006-01-10 21:43:56 -0600351 depends on PPC64 || CLASSIC32
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000352
353choice
354 prompt "Machine type"
355 default PPC_MULTIPLATFORM
356
357config PPC_MULTIPLATFORM
358 bool "Generic desktop/server/laptop"
359 help
360 Select this option if configuring for an IBM pSeries or
361 RS/6000 machine, an Apple machine, or a PReP, CHRP,
362 Maple or Cell-based machine.
363
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000364config EMBEDDED6xx
365 bool "Embedded 6xx/7xx/7xxx-based board"
Zang Roy-r61911c5d56332006-06-13 15:07:15 +0800366 depends on PPC32 && (BROKEN||BROKEN_ON_SMP)
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000367
368config APUS
369 bool "Amiga-APUS"
370 depends on PPC32 && BROKEN
371 help
372 Select APUS if configuring for a PowerUP Amiga.
373 More information is available at:
374 <http://linux-apus.sourceforge.net/>.
375endchoice
376
Li Yang98658532006-10-03 23:10:46 -0500377config QUICC_ENGINE
378 bool
379 depends on PPC_MPC836x || PPC_MPC832x
380 default y
381 help
382 The QUICC Engine (QE) is a new generation of communications
383 coprocessors on Freescale embedded CPUs (akin to CPM in older chips).
384 Selecting this option means that you wish to build a kernel
385 for a machine with a QE coprocessor.
386
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000387config PPC_PSERIES
388 depends on PPC_MULTIPLATFORM && PPC64
Andrew Morton4a3ecc62006-06-01 20:36:04 -0700389 bool "IBM pSeries & new (POWER5-based) iSeries"
Zang Roy-r6191172335932006-08-25 14:16:30 +1000390 select MPIC
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000391 select PPC_I8259
Paul Mackerras033ef332005-10-26 17:05:24 +1000392 select PPC_RTAS
393 select RTAS_ERROR_LOGGING
Paul Mackerras13b8a272006-01-10 16:19:05 +1100394 select PPC_UDBG_16550
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100395 select PPC_NATIVE
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000396 default y
397
Stephen Rothwella542dbd2006-09-25 13:49:58 +1000398config PPC_ISERIES
399 bool "IBM Legacy iSeries"
400 depends on PPC_MULTIPLATFORM && PPC64
Benjamin Herrenschmidt4cb3cee2006-11-11 17:25:10 +1100401 select PPC_INDIRECT_IO
Stephen Rothwella542dbd2006-09-25 13:49:58 +1000402
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000403config PPC_CHRP
Andrew Morton4a3ecc62006-06-01 20:36:04 -0700404 bool "Common Hardware Reference Platform (CHRP) based machines"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000405 depends on PPC_MULTIPLATFORM && PPC32
Zang Roy-r6191172335932006-08-25 14:16:30 +1000406 select MPIC
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000407 select PPC_I8259
Paul Mackerras25635c72005-10-26 16:36:55 +1000408 select PPC_INDIRECT_PCI
Paul Mackerras033ef332005-10-26 17:05:24 +1000409 select PPC_RTAS
Paul Mackerras830825d2005-10-26 17:16:38 +1000410 select PPC_MPC106
Paul Mackerras13b8a272006-01-10 16:19:05 +1100411 select PPC_UDBG_16550
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100412 select PPC_NATIVE
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000413 default y
414
Grant Likelyd41502482006-11-27 14:16:24 -0700415config PPC_MPC52xx
416 bool
417 default n
418
Nicolas DETc37858d2006-11-05 12:57:16 +0100419config PPC_EFIKA
420 bool "bPlan Efika 5k2. MPC5200B based computer"
421 depends on PPC_MULTIPLATFORM && PPC32
422 select PPC_RTAS
423 select RTAS_PROC
424 select PPC_MPC52xx
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100425 select PPC_NATIVE
Nicolas DETc37858d2006-11-05 12:57:16 +0100426 default y
427
Grant Likely6b642532006-11-27 14:16:28 -0700428config PPC_LITE5200
429 bool "Freescale Lite5200 Eval Board"
430 depends on PPC_MULTIPLATFORM && PPC32
431 select PPC_MPC52xx
432 default n
433
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000434config PPC_PMAC
Andrew Morton4a3ecc62006-06-01 20:36:04 -0700435 bool "Apple PowerMac based machines"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000436 depends on PPC_MULTIPLATFORM
Zang Roy-r6191172335932006-08-25 14:16:30 +1000437 select MPIC
Paul Mackerras25635c72005-10-26 16:36:55 +1000438 select PPC_INDIRECT_PCI if PPC32
Paul Mackerrasb6a4ce52005-10-26 22:54:17 +1000439 select PPC_MPC106 if PPC32
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100440 select PPC_NATIVE
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000441 default y
442
443config PPC_PMAC64
444 bool
445 depends on PPC_PMAC && POWER4
Zang Roy-r6191172335932006-08-25 14:16:30 +1000446 select MPIC
Paul Mackerras35499c02005-10-22 16:02:39 +1000447 select U3_DART
Benjamin Herrenschmidt1beb6a72005-12-14 13:10:10 +1100448 select MPIC_BROKEN_U3
Paul Mackerras8ad200d2005-11-04 13:28:58 +1100449 select GENERIC_TBSYNC
Paul Mackerrasf39224a2006-04-18 21:49:11 +1000450 select PPC_970_NAP
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000451 default y
452
453config PPC_PREP
Andrew Morton4a3ecc62006-06-01 20:36:04 -0700454 bool "PowerPC Reference Platform (PReP) based machines"
Paul Mackerras5be396b2005-11-14 17:31:55 +1100455 depends on PPC_MULTIPLATFORM && PPC32 && BROKEN
Zang Roy-r6191172335932006-08-25 14:16:30 +1000456 select MPIC
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000457 select PPC_I8259
Paul Mackerras25635c72005-10-26 16:36:55 +1000458 select PPC_INDIRECT_PCI
Paul Mackerras13b8a272006-01-10 16:19:05 +1100459 select PPC_UDBG_16550
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100460 select PPC_NATIVE
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000461 default y
462
463config PPC_MAPLE
464 depends on PPC_MULTIPLATFORM && PPC64
Andrew Morton4a3ecc62006-06-01 20:36:04 -0700465 bool "Maple 970FX Evaluation Board"
Zang Roy-r6191172335932006-08-25 14:16:30 +1000466 select MPIC
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000467 select U3_DART
468 select MPIC_BROKEN_U3
Paul Mackerras8ad200d2005-11-04 13:28:58 +1100469 select GENERIC_TBSYNC
Paul Mackerras13b8a272006-01-10 16:19:05 +1100470 select PPC_UDBG_16550
Paul Mackerrasf39224a2006-04-18 21:49:11 +1000471 select PPC_970_NAP
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100472 select PPC_NATIVE
Nathan Lynch9d9d8682006-12-06 18:50:44 -0600473 select PPC_RTAS
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000474 default n
475 help
476 This option enables support for the Maple 970FX Evaluation Board.
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100477 For more information, refer to <http://www.970eval.com>
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000478
Olof Johansson1e768752006-09-06 14:42:08 -0500479config PPC_PASEMI
480 depends on PPC_MULTIPLATFORM && PPC64
481 bool "PA Semi SoC-based platforms"
482 default n
483 select MPIC
484 select PPC_UDBG_16550
485 select GENERIC_TBSYNC
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100486 select PPC_NATIVE
Olof Johansson1e768752006-09-06 14:42:08 -0500487 help
488 This option enables support for PA Semi's PWRficient line
489 of SoC processors, including PA6T-1682M
490
Arnd Bergmannf3f66f52005-10-31 20:08:37 -0500491config PPC_CELL
Geoff Levandc01ea722006-06-19 20:33:28 +0200492 bool
493 default n
494
495config PPC_CELL_NATIVE
496 bool
497 select PPC_CELL
Benjamin Herrenschmidt4c75a6f2006-11-11 17:24:53 +1100498 select PPC_DCR_MMIO
Benjamin Herrenschmidt4c9d2802006-11-11 17:25:08 +1100499 select PPC_OF_PLATFORM_PCI
Benjamin Herrenschmidt014da7f2006-11-11 17:25:12 +1100500 select PPC_INDIRECT_IO
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100501 select PPC_NATIVE
Benjamin Herrenschmidt21fb5a12006-11-11 17:24:58 +1100502 select MPIC
Geoff Levandc01ea722006-06-19 20:33:28 +0200503 default n
504
505config PPC_IBM_CELL_BLADE
Andrew Mortonf127a2b2006-06-25 01:49:07 -0700506 bool "IBM Cell Blade"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000507 depends on PPC_MULTIPLATFORM && PPC64
Geoff Levandc01ea722006-06-19 20:33:28 +0200508 select PPC_CELL_NATIVE
Paul Mackerras033ef332005-10-26 17:05:24 +1000509 select PPC_RTAS
Arnd Bergmannedf03c12005-10-31 20:08:40 -0500510 select MMIO_NVRAM
Paul Mackerras13b8a272006-01-10 16:19:05 +1100511 select PPC_UDBG_16550
Michael Ellerman94b60ec2006-06-23 18:20:22 +1000512 select UDBG_RTAS_CONSOLE
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000513
Geoff Levandf58a9d12006-11-23 00:46:51 +0100514config PPC_PS3
515 bool "Sony PS3"
516 depends on PPC_MULTIPLATFORM && PPC64
517 select PPC_CELL
518 help
519 This option enables support for the Sony PS3 game console
520 and other platforms using the PS3 hypervisor.
521
Arnd Bergmanne22ba7e2006-11-27 19:18:57 +0100522config PPC_NATIVE
523 bool
524 depends on PPC_MULTIPLATFORM
525 help
526 Support for running natively on the hardware, i.e. without
527 a hypervisor. This option is not user-selectable but should
528 be selected by all platforms that need it.
529
530config UDBG_RTAS_CONSOLE
531 bool "RTAS based debug console"
532 depends on PPC_RTAS
533 default n
534
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000535config XICS
536 depends on PPC_PSERIES
537 bool
538 default y
539
540config U3_DART
541 bool
542 depends on PPC_MULTIPLATFORM && PPC64
543 default n
544
Paul Mackerras033ef332005-10-26 17:05:24 +1000545config PPC_RTAS
546 bool
547 default n
548
549config RTAS_ERROR_LOGGING
550 bool
551 depends on PPC_RTAS
552 default n
553
Paul Mackerrasf4fcbbe2005-11-03 14:41:19 +1100554config RTAS_PROC
555 bool "Proc interface to RTAS"
Arnd Bergmanne9add2e2005-10-31 20:08:39 -0500556 depends on PPC_RTAS
Paul Mackerrasf4fcbbe2005-11-03 14:41:19 +1100557 default y
558
559config RTAS_FLASH
560 tristate "Firmware flash interface"
561 depends on PPC64 && RTAS_PROC
Arnd Bergmanne9add2e2005-10-31 20:08:39 -0500562
Arnd Bergmannedf03c12005-10-31 20:08:40 -0500563config MMIO_NVRAM
564 bool
565 default n
566
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000567config MPIC_BROKEN_U3
568 bool
569 depends on PPC_MAPLE
570 default y
571
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000572config IBMVIO
573 depends on PPC_PSERIES || PPC_ISERIES
574 bool
575 default y
576
Heiko J Schickd7a30102005-11-16 08:56:43 +0100577config IBMEBUS
578 depends on PPC_PSERIES
579 bool "Support for GX bus based adapters"
Heiko J Schickd7a30102005-11-16 08:56:43 +0100580 help
581 Bus device driver for GX bus based adapters.
582
Paul Mackerras830825d2005-10-26 17:16:38 +1000583config PPC_MPC106
584 bool
585 default n
586
Paul Mackerrasf39224a2006-04-18 21:49:11 +1000587config PPC_970_NAP
588 bool
589 default n
590
Benjamin Herrenschmidt4cb3cee2006-11-11 17:25:10 +1100591config PPC_INDIRECT_IO
592 bool
593 select GENERIC_IOMAP
594 default n
595
596config GENERIC_IOMAP
597 bool
598 default n
599
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000600source "drivers/cpufreq/Kconfig"
601
602config CPU_FREQ_PMAC
603 bool "Support for Apple PowerBooks"
604 depends on CPU_FREQ && ADB_PMU && PPC32
605 select CPU_FREQ_TABLE
606 help
607 This adds support for frequency switching on Apple PowerBooks,
608 this currently includes some models of iBook & Titanium
609 PowerBook.
610
Benjamin Herrenschmidt43501472005-11-07 14:27:33 +1100611config CPU_FREQ_PMAC64
612 bool "Support for some Apple G5s"
Benjamin Herrenschmidt7ed14c22006-07-06 15:09:19 +1000613 depends on CPU_FREQ && PPC64
Benjamin Herrenschmidt43501472005-11-07 14:27:33 +1100614 select CPU_FREQ_TABLE
615 help
616 This adds support for frequency switching on Apple iMac G5,
617 and some of the more recent desktop G5 machines as well.
618
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000619config PPC601_SYNC_FIX
620 bool "Workarounds for PPC601 bugs"
621 depends on 6xx && (PPC_PREP || PPC_PMAC)
622 help
623 Some versions of the PPC601 (the first PowerPC chip) have bugs which
624 mean that extra synchronization instructions are required near
625 certain instructions, typically those that make major changes to the
626 CPU state. These extra instructions reduce performance slightly.
627 If you say N here, these extra instructions will not be included,
628 resulting in a kernel which will run faster but may not run at all
629 on some systems with the PPC601 chip.
630
631 If in doubt, say Y here.
632
633config TAU
Paul Mackerras9b781722006-03-27 19:15:26 +1100634 bool "On-chip CPU temperature sensor support"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000635 depends on 6xx
636 help
637 G3 and G4 processors have an on-chip temperature sensor called the
638 'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
639 temperature within 2-4 degrees Celsius. This option shows the current
640 on-die temperature in /proc/cpuinfo if the cpu supports it.
641
642 Unfortunately, on some chip revisions, this sensor is very inaccurate
Paul Mackerras9b781722006-03-27 19:15:26 +1100643 and in many cases, does not work at all, so don't assume the cpu
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000644 temp is actually what /proc/cpuinfo says it is.
645
646config TAU_INT
647 bool "Interrupt driven TAU driver (DANGEROUS)"
648 depends on TAU
649 ---help---
650 The TAU supports an interrupt driven mode which causes an interrupt
651 whenever the temperature goes out of range. This is the fastest way
652 to get notified the temp has exceeded a range. With this option off,
653 a timer is used to re-check the temperature periodically.
654
655 However, on some cpus it appears that the TAU interrupt hardware
656 is buggy and can cause a situation which would lead unexplained hard
657 lockups.
658
659 Unless you are extending the TAU driver, or enjoy kernel/hardware
660 debugging, leave this option off.
661
662config TAU_AVERAGE
663 bool "Average high and low temp"
664 depends on TAU
665 ---help---
666 The TAU hardware can compare the temperature to an upper and lower
667 bound. The default behavior is to show both the upper and lower
668 bound in /proc/cpuinfo. If the range is large, the temperature is
669 either changing a lot, or the TAU hardware is broken (likely on some
670 G4's). If the range is small (around 4 degrees), the temperature is
671 relatively stable. If you say Y here, a single temperature value,
672 halfway between the upper and lower bounds, will be reported in
673 /proc/cpuinfo.
674
675 If in doubt, say N here.
Mark A. Greerc2201532006-06-28 14:13:20 -0700676
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000677endmenu
678
679source arch/powerpc/platforms/embedded6xx/Kconfig
680source arch/powerpc/platforms/4xx/Kconfig
Vitaly Borduged943c12006-10-02 22:41:50 +0400681source arch/powerpc/platforms/82xx/Kconfig
Kumar Gala08264cb2006-01-10 21:43:56 -0600682source arch/powerpc/platforms/83xx/Kconfig
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000683source arch/powerpc/platforms/85xx/Kconfig
Jon Loeligerc9b484b2006-06-17 17:52:35 -0500684source arch/powerpc/platforms/86xx/Kconfig
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000685source arch/powerpc/platforms/8xx/Kconfig
Arnd Bergmann67207b92005-11-15 15:53:48 -0500686source arch/powerpc/platforms/cell/Kconfig
Geoff Levandf58a9d12006-11-23 00:46:51 +0100687source arch/powerpc/platforms/ps3/Kconfig
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000688
689menu "Kernel options"
690
691config HIGHMEM
692 bool "High memory support"
693 depends on PPC32
694
695source kernel/Kconfig.hz
696source kernel/Kconfig.preempt
697source "fs/Kconfig.binfmt"
698
699# We optimistically allocate largepages from the VM, so make the limit
700# large enough (16MB). This badly named config option is actually
701# max order + 1
702config FORCE_MAX_ZONEORDER
703 int
704 depends on PPC64
Mike Kravetz02864862005-11-07 13:48:59 -0800705 default "9" if PPC_64K_PAGES
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000706 default "13"
707
708config MATH_EMULATION
709 bool "Math emulation"
710 depends on 4xx || 8xx || E200 || E500
711 ---help---
712 Some PowerPC chips designed for embedded applications do not have
713 a floating-point unit and therefore do not implement the
714 floating-point instructions in the PowerPC instruction set. If you
715 say Y here, the kernel will include code to emulate a floating-point
716 unit, which will allow programs that use floating-point
717 instructions to run.
718
719config IOMMU_VMERGE
720 bool "Enable IOMMU virtual merging (EXPERIMENTAL)"
721 depends on EXPERIMENTAL && PPC64
722 default n
723 help
724 Cause IO segments sent to a device for DMA to be merged virtually
725 by the IOMMU when they happen to have been allocated contiguously.
726 This doesn't add pressure to the IOMMU allocator. However, some
727 drivers don't support getting large merged segments coming back
728 from *_map_sg(). Say Y if you know the drivers you are using are
729 properly handling this case.
730
731config HOTPLUG_CPU
732 bool "Support for enabling/disabling CPUs"
733 depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
734 ---help---
735 Say Y here to be able to disable and re-enable individual
736 CPUs at runtime on SMP machines.
737
738 Say N if you are unsure.
739
Yasunori Gotocc576372006-06-29 02:24:27 -0700740config ARCH_ENABLE_MEMORY_HOTPLUG
741 def_bool y
742
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000743config KEXEC
744 bool "kexec system call (EXPERIMENTAL)"
745 depends on PPC_MULTIPLATFORM && EXPERIMENTAL
746 help
747 kexec is a system call that implements the ability to shutdown your
748 current kernel, and to start another kernel. It is like a reboot
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400749 but it is independent of the system firmware. And like a reboot
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000750 you can start any kernel with it, not just Linux.
751
Matt LaPlante1f1332f2006-06-29 01:32:47 -0400752 The name comes from the similarity to the exec system call.
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000753
754 It is an ongoing process to be certain the hardware in a machine
755 is properly shutdown, so do not be surprised if this code does not
756 initially work for you. It may help to enable device hotplugging
757 support. As of this writing the exact hardware interface is
758 strongly in flux, so no good recommendation can be made.
759
Haren Mynenie8625d462006-01-14 13:48:25 -0800760config CRASH_DUMP
Michael Ellermancd9c99d2006-03-10 15:01:08 +1100761 bool "Build a kdump crash kernel (EXPERIMENTAL)"
Haren Mynenie8625d462006-01-14 13:48:25 -0800762 depends on PPC_MULTIPLATFORM && PPC64 && EXPERIMENTAL
763 help
764 Build a kernel suitable for use as a kdump capture kernel.
765 The kernel will be linked at a different address than normal, and
766 so can only be used for Kdump.
767
768 Don't change this unless you know what you are doing.
769
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000770config EMBEDDEDBOOT
771 bool
772 depends on 8xx || 8260
773 default y
774
775config PC_KEYBOARD
776 bool "PC PS/2 style Keyboard"
777 depends on 4xx || CPM2
778
779config PPCBUG_NVRAM
780 bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
781 default y if PPC_PREP
782
783config IRQ_ALL_CPUS
784 bool "Distribute interrupts on all CPUs by default"
785 depends on SMP && !MV64360
786 help
787 This option gives the kernel permission to distribute IRQs across
788 multiple CPUs. Saying N here will route all IRQs to the first
789 CPU. Generally saying Y is safe, although some problems have been
790 reported with SMP Power Macintoshes with this option enabled.
791
792source "arch/powerpc/platforms/pseries/Kconfig"
793
Andy Whitcroftffa27b62005-10-28 17:46:58 -0700794config NUMA
795 bool "NUMA support"
796 depends on PPC64
797 default y if SMP && PPC_PSERIES
798
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700799config NODES_SHIFT
800 int
801 default "4"
802 depends on NEED_MULTIPLE_NODES
803
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000804config ARCH_SELECT_MEMORY_MODEL
805 def_bool y
806 depends on PPC64
807
808config ARCH_FLATMEM_ENABLE
Andy Whitcroft9100b202005-11-29 19:20:55 +0000809 def_bool y
810 depends on (PPC64 && !NUMA) || PPC32
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000811
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000812config ARCH_SPARSEMEM_ENABLE
813 def_bool y
Andy Whitcroft9100b202005-11-29 19:20:55 +0000814 depends on PPC64
Anton Blanchard45fb6ce2005-11-11 14:22:35 +1100815
816config ARCH_SPARSEMEM_DEFAULT
817 def_bool y
Geoff Levand36b600f2006-11-02 21:08:45 -0800818 depends on (SMP && PPC_PSERIES) || PPC_CELL
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000819
Mel Gormanc67c3cb2006-09-27 01:49:49 -0700820config ARCH_POPULATES_NODE_MAP
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000821 def_bool y
Mel Gormanc67c3cb2006-09-27 01:49:49 -0700822
823source "mm/Kconfig"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000824
Mike Kravetz7e9191d2005-11-07 09:39:48 -0800825config ARCH_MEMORY_PROBE
826 def_bool y
827 depends on MEMORY_HOTPLUG
828
Andy Whitcroft75167952006-10-21 10:24:14 -0700829# Some NUMA nodes have memory ranges that span
830# other nodes. Even though a pfn is valid and
831# between a node's start and end pfns, it may not
832# reside on that node. See memmap_init_zone()
833# for details.
834config NODES_SPAN_OTHER_NODES
835 def_bool y
836 depends on NEED_MULTIPLE_NODES
837
Benjamin Herrenschmidt3c726f82005-11-07 11:06:55 +1100838config PPC_64K_PAGES
839 bool "64k page size"
Benjamin Herrenschmidt863c84b2005-11-07 00:57:58 -0800840 depends on PPC64
Benjamin Herrenschmidt3c726f82005-11-07 11:06:55 +1100841 help
842 This option changes the kernel logical page size to 64k. On machines
843 without processor support for 64k pages, the kernel will simulate
844 them by loading each individual 4k page on demand transparently,
845 while on hardware with such support, it will be used to map
846 normal application pages.
847
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000848config SCHED_SMT
849 bool "SMT (Hyperthreading) scheduler support"
850 depends on PPC64 && SMP
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000851 help
852 SMT scheduler support improves the CPU scheduler's decision making
853 when dealing with POWER5 cpus at a cost of slightly increased
854 overhead in some places. If unsure say N here.
855
856config PROC_DEVICETREE
Paul Mackerras5f296752005-10-17 20:14:59 +1000857 bool "Support for device tree in /proc"
858 depends on PROC_FS
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000859 help
860 This option adds a device-tree directory under /proc which contains
861 an image of the device tree that the kernel copies from Open
Paul Mackerras5f296752005-10-17 20:14:59 +1000862 Firmware or other boot firmware. If unsure, say Y here.
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000863
864source "arch/powerpc/platforms/prep/Kconfig"
865
866config CMDLINE_BOOL
867 bool "Default bootloader kernel arguments"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000868
869config CMDLINE
870 string "Initial kernel command string"
871 depends on CMDLINE_BOOL
872 default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
873 help
874 On some platforms, there is currently no way for the boot loader to
875 pass arguments to the kernel. For these platforms, you can supply
876 some command-line options at build time by entering them here. In
877 most cases you will need to specify the root device here.
878
879if !44x || BROKEN
880source kernel/power/Kconfig
881endif
882
883config SECCOMP
884 bool "Enable seccomp to safely compute untrusted bytecode"
885 depends on PROC_FS
886 default y
887 help
888 This kernel feature is useful for number crunching applications
889 that may need to compute untrusted bytecode during their
890 execution. By using pipes or other transports made available to
891 the process as file descriptors supporting the read/write
892 syscalls, it's possible to isolate those applications in
893 their own address space using seccomp. Once seccomp is
894 enabled via /proc/<pid>/seccomp, it cannot be disabled
895 and the task is only allowed to execute a few safe syscalls
896 defined by each seccomp mode.
897
898 If unsure, say Y. Only embedded should say N here.
899
900endmenu
901
902config ISA_DMA_API
903 bool
904 default y
905
906menu "Bus options"
907
908config ISA
909 bool "Support for ISA-bus hardware"
910 depends on PPC_PREP || PPC_CHRP
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000911 select PPC_I8259
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000912 help
913 Find out whether you have ISA slots on your motherboard. ISA is the
914 name of a bus system, i.e. the way the CPU talks to the other stuff
915 inside your box. If you have an Apple machine, say N here; if you
916 have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
917 you have an embedded board, consult your board documentation.
918
919config GENERIC_ISA_DMA
920 bool
921 depends on PPC64 || POWER4 || 6xx && !CPM2
922 default y
923
Zang Roy-r6191172335932006-08-25 14:16:30 +1000924config MPIC
925 bool
926 default n
927
928config MPIC_WEIRD
929 bool
930 default n
931
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000932config PPC_I8259
933 bool
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000934 default n
935
Paul Mackerras25635c72005-10-26 16:36:55 +1000936config PPC_INDIRECT_PCI
937 bool
938 depends on PCI
Becky Bruce63dafe52006-01-14 16:57:39 -0600939 default y if 40x || 44x
Paul Mackerras25635c72005-10-26 16:36:55 +1000940 default n
941
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000942config EISA
943 bool
944
945config SBUS
946 bool
947
Kumar Gala08264cb2006-01-10 21:43:56 -0600948config FSL_SOC
949 bool
950
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000951# Yes MCA RS/6000s exist but Linux-PPC does not currently support any
952config MCA
953 bool
954
955config PCI
Jon Loeliger53158622006-08-09 10:37:28 -0500956 bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_86xx \
Geoff Levandf58a9d12006-11-23 00:46:51 +0100957 || PPC_MPC52xx || (EMBEDDED && PPC_ISERIES) || MPC7448HPC2 || PPC_PS3
Jon Loeliger53158622006-08-09 10:37:28 -0500958 default y if !40x && !CPM2 && !8xx && !APUS && !PPC_83xx \
959 && !PPC_85xx && !PPC_86xx
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000960 default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
961 default PCI_QSPAN if !4xx && !CPM2 && 8xx
962 help
963 Find out whether your system includes a PCI bus. PCI is the name of
964 a bus system, i.e. the way the CPU talks to the other stuff inside
965 your box. If you say Y here, the kernel will include drivers and
966 infrastructure code to support PCI bus devices.
967
968config PCI_DOMAINS
969 bool
970 default PCI
971
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000972config PCI_QSPAN
973 bool "QSpan PCI"
974 depends on !4xx && !CPM2 && 8xx
Paul Mackerrasf9bd1702005-10-26 16:47:42 +1000975 select PPC_I8259
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000976 help
977 Say Y here if you have a system based on a Motorola 8xx-series
978 embedded processor with a QSPAN PCI interface, otherwise say N.
979
980config PCI_8260
981 bool
982 depends on PCI && 8260
Paul Mackerras25635c72005-10-26 16:36:55 +1000983 select PPC_INDIRECT_PCI
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000984 default y
985
986config 8260_PCI9
Andrew Morton4a3ecc62006-06-01 20:36:04 -0700987 bool "Enable workaround for MPC826x erratum PCI 9"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000988 depends on PCI_8260 && !ADS8272
989 default y
990
991choice
Andrew Morton4a3ecc62006-06-01 20:36:04 -0700992 prompt "IDMA channel for PCI 9 workaround"
Paul Mackerras14cf11a2005-09-26 16:04:21 +1000993 depends on 8260_PCI9
994
995config 8260_PCI9_IDMA1
996 bool "IDMA1"
997
998config 8260_PCI9_IDMA2
999 bool "IDMA2"
1000
1001config 8260_PCI9_IDMA3
1002 bool "IDMA3"
1003
1004config 8260_PCI9_IDMA4
1005 bool "IDMA4"
1006
1007endchoice
1008
Jake Moilanenbb53bb32006-06-07 16:05:46 -05001009source "drivers/pci/pcie/Kconfig"
1010
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001011source "drivers/pci/Kconfig"
1012
1013source "drivers/pcmcia/Kconfig"
1014
1015source "drivers/pci/hotplug/Kconfig"
1016
1017endmenu
1018
1019menu "Advanced setup"
1020 depends on PPC32
1021
1022config ADVANCED_OPTIONS
1023 bool "Prompt for advanced kernel configuration options"
1024 help
1025 This option will enable prompting for a variety of advanced kernel
1026 configuration options. These options can cause the kernel to not
1027 work if they are set incorrectly, but can be used to optimize certain
1028 aspects of kernel memory management.
1029
1030 Unless you know what you are doing, say N here.
1031
1032comment "Default settings for advanced configuration options are used"
1033 depends on !ADVANCED_OPTIONS
1034
1035config HIGHMEM_START_BOOL
1036 bool "Set high memory pool address"
1037 depends on ADVANCED_OPTIONS && HIGHMEM
1038 help
1039 This option allows you to set the base address of the kernel virtual
1040 area used to map high memory pages. This can be useful in
1041 optimizing the layout of kernel virtual memory.
1042
1043 Say N here unless you know what you are doing.
1044
1045config HIGHMEM_START
1046 hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
1047 default "0xfe000000"
1048
1049config LOWMEM_SIZE_BOOL
1050 bool "Set maximum low memory"
1051 depends on ADVANCED_OPTIONS
1052 help
1053 This option allows you to set the maximum amount of memory which
1054 will be used as "low memory", that is, memory which the kernel can
1055 access directly, without having to set up a kernel virtual mapping.
1056 This can be useful in optimizing the layout of kernel virtual
1057 memory.
1058
1059 Say N here unless you know what you are doing.
1060
1061config LOWMEM_SIZE
1062 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
1063 default "0x30000000"
1064
1065config KERNEL_START_BOOL
1066 bool "Set custom kernel base address"
1067 depends on ADVANCED_OPTIONS
1068 help
1069 This option allows you to set the kernel virtual address at which
1070 the kernel will map low memory (the kernel image will be linked at
1071 this address). This can be useful in optimizing the virtual memory
1072 layout of the system.
1073
1074 Say N here unless you know what you are doing.
1075
1076config KERNEL_START
1077 hex "Virtual address of kernel base" if KERNEL_START_BOOL
1078 default "0xc0000000"
1079
1080config TASK_SIZE_BOOL
1081 bool "Set custom user task size"
1082 depends on ADVANCED_OPTIONS
1083 help
1084 This option allows you to set the amount of virtual address space
1085 allocated to user tasks. This can be useful in optimizing the
1086 virtual memory layout of the system.
1087
1088 Say N here unless you know what you are doing.
1089
1090config TASK_SIZE
1091 hex "Size of user task space" if TASK_SIZE_BOOL
1092 default "0x80000000"
1093
1094config CONSISTENT_START_BOOL
1095 bool "Set custom consistent memory pool address"
1096 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1097 help
1098 This option allows you to set the base virtual address
Matt LaPlante4b3f6862006-10-03 22:21:02 +02001099 of the consistent memory pool. This pool of virtual
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001100 memory is used to make consistent memory allocations.
1101
1102config CONSISTENT_START
1103 hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
1104 default "0xff100000" if NOT_COHERENT_CACHE
1105
1106config CONSISTENT_SIZE_BOOL
1107 bool "Set custom consistent memory pool size"
1108 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1109 help
Matt LaPlante4b3f6862006-10-03 22:21:02 +02001110 This option allows you to set the size of the
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001111 consistent memory pool. This pool of virtual memory
1112 is used to make consistent memory allocations.
1113
1114config CONSISTENT_SIZE
1115 hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
1116 default "0x00200000" if NOT_COHERENT_CACHE
1117
1118config BOOT_LOAD_BOOL
1119 bool "Set the boot link/load address"
1120 depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM
1121 help
1122 This option allows you to set the initial load address of the zImage
1123 or zImage.initrd file. This can be useful if you are on a board
1124 which has a small amount of memory.
1125
1126 Say N here unless you know what you are doing.
1127
1128config BOOT_LOAD
1129 hex "Link/load address for booting" if BOOT_LOAD_BOOL
1130 default "0x00400000" if 40x || 8xx || 8260
1131 default "0x01000000" if 44x
1132 default "0x00800000"
1133
1134config PIN_TLB
1135 bool "Pinned Kernel TLBs (860 ONLY)"
1136 depends on ADVANCED_OPTIONS && 8xx
1137endmenu
1138
Stephen Rothwellcabb5582005-09-30 16:16:52 +10001139if PPC64
1140config KERNEL_START
1141 hex
Stephen Rothwelleeb2d212005-09-30 17:24:15 +10001142 default "0xc000000000000000"
Stephen Rothwellcabb5582005-09-30 16:16:52 +10001143endif
1144
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001145source "net/Kconfig"
1146
1147source "drivers/Kconfig"
1148
1149source "fs/Kconfig"
1150
1151# XXX source "arch/ppc/8xx_io/Kconfig"
1152
1153# XXX source "arch/ppc/8260_io/Kconfig"
1154
Li Yang98658532006-10-03 23:10:46 -05001155source "arch/powerpc/sysdev/qe_lib/Kconfig"
1156
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001157source "arch/powerpc/platforms/iseries/Kconfig"
1158
1159source "lib/Kconfig"
1160
Prasanna S Panchamukhicd6b0762005-11-07 00:59:14 -08001161menu "Instrumentation Support"
1162 depends on EXPERIMENTAL
1163
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001164source "arch/powerpc/oprofile/Kconfig"
1165
Prasanna S Panchamukhicd6b0762005-11-07 00:59:14 -08001166config KPROBES
1167 bool "Kprobes (EXPERIMENTAL)"
Ananth N Mavinakayanahalli3a872d82006-10-02 02:17:30 -07001168 depends on PPC64 && KALLSYMS && EXPERIMENTAL && MODULES
Prasanna S Panchamukhicd6b0762005-11-07 00:59:14 -08001169 help
1170 Kprobes allows you to trap at almost any kernel address and
1171 execute a callback function. register_kprobe() establishes
1172 a probepoint and specifies the callback. Kprobes is useful
1173 for kernel debugging, non-intrusive instrumentation and testing.
1174 If in doubt, say "N".
1175endmenu
1176
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001177source "arch/powerpc/Kconfig.debug"
1178
1179source "security/Kconfig"
1180
1181config KEYS_COMPAT
1182 bool
1183 depends on COMPAT && KEYS
1184 default y
1185
1186source "crypto/Kconfig"