Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm
[linux-2.6] / arch / powerpc / platforms / Kconfig
1 menu "Platform support"
2
3 choice
4         prompt "Machine type"
5         depends on PPC64 || 6xx
6         default PPC_MULTIPLATFORM
7
8 config PPC_MULTIPLATFORM
9         bool "Generic desktop/server/laptop"
10         help
11           Select this option if configuring for an IBM pSeries or
12           RS/6000 machine, an Apple machine, or a PReP, CHRP,
13           Maple or Cell-based machine.
14
15 config PPC_82xx
16         bool "Freescale 82xx"
17         depends on 6xx
18         select WANT_DEVICE_TREE
19
20 config PPC_83xx
21         bool "Freescale 83xx"
22         depends on 6xx
23         select FSL_SOC
24         select MPC83xx
25         select IPIC
26         select WANT_DEVICE_TREE
27         select FSL_EMB_PERFMON
28
29 config PPC_86xx
30         bool "Freescale 86xx"
31         depends on 6xx
32         select FSL_SOC
33         select ALTIVEC
34         help
35           The Freescale E600 SoCs have 74xx cores.
36 endchoice
37
38 config CLASSIC32
39         def_bool y
40         depends on 6xx && PPC_MULTIPLATFORM
41
42 source "arch/powerpc/platforms/pseries/Kconfig"
43 source "arch/powerpc/platforms/iseries/Kconfig"
44 source "arch/powerpc/platforms/chrp/Kconfig"
45 source "arch/powerpc/platforms/512x/Kconfig"
46 source "arch/powerpc/platforms/52xx/Kconfig"
47 source "arch/powerpc/platforms/powermac/Kconfig"
48 source "arch/powerpc/platforms/prep/Kconfig"
49 source "arch/powerpc/platforms/maple/Kconfig"
50 source "arch/powerpc/platforms/pasemi/Kconfig"
51 source "arch/powerpc/platforms/celleb/Kconfig"
52 source "arch/powerpc/platforms/ps3/Kconfig"
53 source "arch/powerpc/platforms/cell/Kconfig"
54 source "arch/powerpc/platforms/8xx/Kconfig"
55 source "arch/powerpc/platforms/82xx/Kconfig"
56 source "arch/powerpc/platforms/83xx/Kconfig"
57 source "arch/powerpc/platforms/85xx/Kconfig"
58 source "arch/powerpc/platforms/86xx/Kconfig"
59 source "arch/powerpc/platforms/embedded6xx/Kconfig"
60 source "arch/powerpc/platforms/44x/Kconfig"
61 source "arch/powerpc/platforms/40x/Kconfig"
62
63 config PPC_NATIVE
64         bool
65         depends on PPC_MULTIPLATFORM
66         help
67           Support for running natively on the hardware, i.e. without
68           a hypervisor. This option is not user-selectable but should
69           be selected by all platforms that need it.
70
71 config UDBG_RTAS_CONSOLE
72         bool "RTAS based debug console"
73         depends on PPC_RTAS
74         default n
75
76 config PPC_UDBG_BEAT
77         bool "BEAT based debug console"
78         depends on PPC_CELLEB
79         default n
80
81 config XICS
82         depends on PPC_PSERIES
83         bool
84         default y
85
86 config IPIC
87         bool
88         default n
89
90 config MPIC
91         bool
92         default n
93
94 config MPIC_WEIRD
95         bool
96         default n
97
98 config PPC_I8259
99         bool
100         default n
101
102 config U3_DART
103         bool
104         depends on PPC_MULTIPLATFORM && PPC64
105         default n
106
107 config PPC_RTAS
108         bool
109         default n
110
111 config RTAS_ERROR_LOGGING
112         bool
113         depends on PPC_RTAS
114         default n
115
116 config RTAS_PROC
117         bool "Proc interface to RTAS"
118         depends on PPC_RTAS
119         default y
120
121 config RTAS_FLASH
122         tristate "Firmware flash interface"
123         depends on PPC64 && RTAS_PROC
124
125 config PPC_PMI
126         tristate "Support for PMI"
127         depends on PPC_IBM_CELL_BLADE
128         help
129           PMI (Platform Management Interrupt) is a way to
130           communicate with the BMC (Baseboard Management Controller).
131           It is used in some IBM Cell blades.
132         default m
133
134 config MMIO_NVRAM
135         bool
136         default n
137
138 config MPIC_U3_HT_IRQS
139         bool
140         depends on PPC_MAPLE
141         default y
142
143 config MPIC_BROKEN_REGREAD
144         bool
145         depends on MPIC
146         help
147           This option enables a MPIC driver workaround for some chips
148           that have a bug that causes some interrupt source information
149           to not read back properly. It is safe to use on other chips as
150           well, but enabling it uses about 8KB of memory to keep copies
151           of the register contents in software.
152
153 config IBMVIO
154         depends on PPC_PSERIES || PPC_ISERIES
155         bool
156         default y
157
158 config IBMEBUS
159         depends on PPC_PSERIES
160         bool "Support for GX bus based adapters"
161         help
162           Bus device driver for GX bus based adapters.
163
164 config PPC_MPC106
165         bool
166         default n
167
168 config PPC_970_NAP
169         bool
170         default n
171
172 config PPC_INDIRECT_IO
173         bool
174         select GENERIC_IOMAP
175         default n
176
177 config GENERIC_IOMAP
178         bool
179         default n
180
181 source "drivers/cpufreq/Kconfig"
182
183 menu "CPU Frequency drivers"
184         depends on CPU_FREQ
185
186 config CPU_FREQ_PMAC
187         bool "Support for Apple PowerBooks"
188         depends on ADB_PMU && PPC32
189         select CPU_FREQ_TABLE
190         help
191           This adds support for frequency switching on Apple PowerBooks,
192           this currently includes some models of iBook & Titanium
193           PowerBook.
194
195 config CPU_FREQ_PMAC64
196         bool "Support for some Apple G5s"
197         depends on PPC_PMAC && PPC64
198         select CPU_FREQ_TABLE
199         help
200           This adds support for frequency switching on Apple iMac G5,
201           and some of the more recent desktop G5 machines as well.
202
203 config PPC_PASEMI_CPUFREQ
204         bool "Support for PA Semi PWRficient"
205         depends on PPC_PASEMI
206         default y
207         select CPU_FREQ_TABLE
208         help
209           This adds the support for frequency switching on PA Semi
210           PWRficient processors.
211
212 endmenu
213
214 config PPC601_SYNC_FIX
215         bool "Workarounds for PPC601 bugs"
216         depends on 6xx && (PPC_PREP || PPC_PMAC)
217         help
218           Some versions of the PPC601 (the first PowerPC chip) have bugs which
219           mean that extra synchronization instructions are required near
220           certain instructions, typically those that make major changes to the
221           CPU state.  These extra instructions reduce performance slightly.
222           If you say N here, these extra instructions will not be included,
223           resulting in a kernel which will run faster but may not run at all
224           on some systems with the PPC601 chip.
225
226           If in doubt, say Y here.
227
228 config TAU
229         bool "On-chip CPU temperature sensor support"
230         depends on CLASSIC32
231         help
232           G3 and G4 processors have an on-chip temperature sensor called the
233           'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
234           temperature within 2-4 degrees Celsius. This option shows the current
235           on-die temperature in /proc/cpuinfo if the cpu supports it.
236
237           Unfortunately, on some chip revisions, this sensor is very inaccurate
238           and in many cases, does not work at all, so don't assume the cpu
239           temp is actually what /proc/cpuinfo says it is.
240
241 config TAU_INT
242         bool "Interrupt driven TAU driver (DANGEROUS)"
243         depends on TAU
244         ---help---
245           The TAU supports an interrupt driven mode which causes an interrupt
246           whenever the temperature goes out of range. This is the fastest way
247           to get notified the temp has exceeded a range. With this option off,
248           a timer is used to re-check the temperature periodically.
249
250           However, on some cpus it appears that the TAU interrupt hardware
251           is buggy and can cause a situation which would lead unexplained hard
252           lockups.
253
254           Unless you are extending the TAU driver, or enjoy kernel/hardware
255           debugging, leave this option off.
256
257 config TAU_AVERAGE
258         bool "Average high and low temp"
259         depends on TAU
260         ---help---
261           The TAU hardware can compare the temperature to an upper and lower
262           bound.  The default behavior is to show both the upper and lower
263           bound in /proc/cpuinfo. If the range is large, the temperature is
264           either changing a lot, or the TAU hardware is broken (likely on some
265           G4's). If the range is small (around 4 degrees), the temperature is
266           relatively stable.  If you say Y here, a single temperature value,
267           halfway between the upper and lower bounds, will be reported in
268           /proc/cpuinfo.
269
270           If in doubt, say N here.
271
272 config QUICC_ENGINE
273         bool
274         select PPC_LIB_RHEAP
275         select CRC32
276         help
277           The QUICC Engine (QE) is a new generation of communications
278           coprocessors on Freescale embedded CPUs (akin to CPM in older chips).
279           Selecting this option means that you wish to build a kernel
280           for a machine with a QE coprocessor.
281
282 config CPM2
283         bool "Enable support for the CPM2 (Communications Processor Module)"
284         depends on MPC85xx || 8260
285         select CPM
286         select PPC_LIB_RHEAP
287         help
288           The CPM2 (Communications Processor Module) is a coprocessor on
289           embedded CPUs made by Freescale.  Selecting this option means that
290           you wish to build a kernel for a machine with a CPM2 coprocessor
291           on it (826x, 827x, 8560).
292
293 config PPC_CPM_NEW_BINDING
294         bool
295         depends on CPM1 || CPM2
296         help
297           Select this if your board has been converted to use the new
298           device tree bindings for CPM, and no longer needs the
299           ioport callbacks or the platform device glue code.
300
301           The fs_enet and cpm_uart drivers will be built as
302           of_platform devices.
303
304 config AXON_RAM
305         tristate "Axon DDR2 memory device driver"
306         depends on PPC_IBM_CELL_BLADE
307         default m
308         help
309           It registers one block device per Axon's DDR2 memory bank found
310           on a system. Block devices are called axonram?, their major and
311           minor numbers are available in /proc/devices, /proc/partitions or
312           in /sys/block/axonram?/dev.
313
314 config FSL_ULI1575
315         bool
316         default n
317         select GENERIC_ISA_DMA
318         help
319           Supports for the ULI1575 PCIe south bridge that exists on some
320           Freescale reference boards. The boards all use the ULI in pretty
321           much the same way.
322
323 config CPM
324         bool
325
326 config OF_RTC
327         bool
328         help
329           Uses information from the OF or flattened device tree to instatiate
330           platform devices for direct mapped RTC chips like the DS1742 or DS1743.
331
332 source "arch/powerpc/sysdev/bestcomm/Kconfig"
333
334 endmenu