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