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