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