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