Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
[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 EMBEDDED6xx
16         bool "Embedded 6xx/7xx/7xxx-based board"
17         depends on PPC32 && (BROKEN||BROKEN_ON_SMP)
18
19 config PPC_82xx
20         bool "Freescale 82xx"
21         depends on 6xx
22
23 config PPC_83xx
24         bool "Freescale 83xx"
25         depends on 6xx
26         select FSL_SOC
27         select 83xx
28         select WANT_DEVICE_TREE
29
30 config PPC_86xx
31         bool "Freescale 86xx"
32         depends on 6xx
33         select FSL_SOC
34         select ALTIVEC
35         help
36           The Freescale E600 SoCs have 74xx cores.
37 endchoice
38
39 config CLASSIC32
40         def_bool y
41         depends on 6xx && PPC_MULTIPLATFORM
42
43 source "arch/powerpc/platforms/pseries/Kconfig"
44 source "arch/powerpc/platforms/iseries/Kconfig"
45 source "arch/powerpc/platforms/chrp/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/4xx/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 MPIC
87         bool
88         default n
89
90 config MPIC_WEIRD
91         bool
92         default n
93
94 config PPC_I8259
95         bool
96         default n
97
98 config U3_DART
99         bool
100         depends on PPC_MULTIPLATFORM && PPC64
101         default n
102
103 config PPC_RTAS
104         bool
105         default n
106
107 config RTAS_ERROR_LOGGING
108         bool
109         depends on PPC_RTAS
110         default n
111
112 config RTAS_PROC
113         bool "Proc interface to RTAS"
114         depends on PPC_RTAS
115         default y
116
117 config RTAS_FLASH
118         tristate "Firmware flash interface"
119         depends on PPC64 && RTAS_PROC
120
121 config PPC_PMI
122         tristate "Support for PMI"
123         depends PPC_IBM_CELL_BLADE
124         help
125           PMI (Platform Management Interrupt) is a way to
126           communicate with the BMC (Baseboard Mangement Controller).
127           It is used in some IBM Cell blades.
128         default m
129
130 config MMIO_NVRAM
131         bool
132         default n
133
134 config MPIC_U3_HT_IRQS
135         bool
136         depends on PPC_MAPLE
137         default y
138
139 config IBMVIO
140         depends on PPC_PSERIES || PPC_ISERIES
141         bool
142         default y
143
144 config IBMEBUS
145         depends on PPC_PSERIES
146         bool "Support for GX bus based adapters"
147         help
148           Bus device driver for GX bus based adapters.
149
150 config PPC_MPC106
151         bool
152         default n
153
154 config PPC_970_NAP
155         bool
156         default n
157
158 config PPC_INDIRECT_IO
159         bool
160         select GENERIC_IOMAP
161         default n
162
163 config GENERIC_IOMAP
164         bool
165         default n
166
167 source "drivers/cpufreq/Kconfig"
168
169 menu "CPU Frequency drivers"
170         depends on CPU_FREQ
171
172 config CPU_FREQ_PMAC
173         bool "Support for Apple PowerBooks"
174         depends on ADB_PMU && PPC32
175         select CPU_FREQ_TABLE
176         help
177           This adds support for frequency switching on Apple PowerBooks,
178           this currently includes some models of iBook & Titanium
179           PowerBook.
180
181 config CPU_FREQ_PMAC64
182         bool "Support for some Apple G5s"
183         depends on PPC_PMAC && PPC64
184         select CPU_FREQ_TABLE
185         help
186           This adds support for frequency switching on Apple iMac G5,
187           and some of the more recent desktop G5 machines as well.
188
189 config PPC_PASEMI_CPUFREQ
190         bool "Support for PA Semi PWRficient"
191         depends on PPC_PASEMI
192         default y
193         select CPU_FREQ_TABLE
194         help
195           This adds the support for frequency switching on PA Semi
196           PWRficient processors.
197
198 endmenu
199
200 config PPC601_SYNC_FIX
201         bool "Workarounds for PPC601 bugs"
202         depends on 6xx && (PPC_PREP || PPC_PMAC)
203         help
204           Some versions of the PPC601 (the first PowerPC chip) have bugs which
205           mean that extra synchronization instructions are required near
206           certain instructions, typically those that make major changes to the
207           CPU state.  These extra instructions reduce performance slightly.
208           If you say N here, these extra instructions will not be included,
209           resulting in a kernel which will run faster but may not run at all
210           on some systems with the PPC601 chip.
211
212           If in doubt, say Y here.
213
214 config TAU
215         bool "On-chip CPU temperature sensor support"
216         depends on CLASSIC32
217         help
218           G3 and G4 processors have an on-chip temperature sensor called the
219           'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
220           temperature within 2-4 degrees Celsius. This option shows the current
221           on-die temperature in /proc/cpuinfo if the cpu supports it.
222
223           Unfortunately, on some chip revisions, this sensor is very inaccurate
224           and in many cases, does not work at all, so don't assume the cpu
225           temp is actually what /proc/cpuinfo says it is.
226
227 config TAU_INT
228         bool "Interrupt driven TAU driver (DANGEROUS)"
229         depends on TAU
230         ---help---
231           The TAU supports an interrupt driven mode which causes an interrupt
232           whenever the temperature goes out of range. This is the fastest way
233           to get notified the temp has exceeded a range. With this option off,
234           a timer is used to re-check the temperature periodically.
235
236           However, on some cpus it appears that the TAU interrupt hardware
237           is buggy and can cause a situation which would lead unexplained hard
238           lockups.
239
240           Unless you are extending the TAU driver, or enjoy kernel/hardware
241           debugging, leave this option off.
242
243 config TAU_AVERAGE
244         bool "Average high and low temp"
245         depends on TAU
246         ---help---
247           The TAU hardware can compare the temperature to an upper and lower
248           bound.  The default behavior is to show both the upper and lower
249           bound in /proc/cpuinfo. If the range is large, the temperature is
250           either changing a lot, or the TAU hardware is broken (likely on some
251           G4's). If the range is small (around 4 degrees), the temperature is
252           relatively stable.  If you say Y here, a single temperature value,
253           halfway between the upper and lower bounds, will be reported in
254           /proc/cpuinfo.
255
256           If in doubt, say N here.
257
258 config QUICC_ENGINE
259         bool
260         help
261           The QUICC Engine (QE) is a new generation of communications
262           coprocessors on Freescale embedded CPUs (akin to CPM in older chips).
263           Selecting this option means that you wish to build a kernel
264           for a machine with a QE coprocessor.
265
266 config CPM2
267         bool
268         default n
269         help
270           The CPM2 (Communications Processor Module) is a coprocessor on
271           embedded CPUs made by Freescale.  Selecting this option means that
272           you wish to build a kernel for a machine with a CPM2 coprocessor
273           on it (826x, 827x, 8560).
274
275 config AXON_RAM
276         tristate "Axon DDR2 memory device driver"
277         depends on PPC_IBM_CELL_BLADE
278         default m
279         help
280           It registers one block device per Axon's DDR2 memory bank found
281           on a system. Block devices are called axonram?, their major and
282           minor numbers are available in /proc/devices, /proc/partitions or
283           in /sys/block/axonram?/dev.
284
285 endmenu