blob: f3fb79fccc721c49d0ea211c61a48e3c136ba3fe [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Kumar Gala4330f5d2007-03-16 09:32:17 -05002menu "Platform support"
Kumar Gala4330f5d2007-03-16 09:32:17 -05003
Benjamin Herrenschmidt55190f82011-09-19 17:44:52 +00004source "arch/powerpc/platforms/powernv/Kconfig"
Kumar Gala4330f5d2007-03-16 09:32:17 -05005source "arch/powerpc/platforms/pseries/Kconfig"
Kumar Gala4330f5d2007-03-16 09:32:17 -05006source "arch/powerpc/platforms/chrp/Kconfig"
John Rigbye177edc2008-01-29 04:28:53 +11007source "arch/powerpc/platforms/512x/Kconfig"
Kumar Gala4330f5d2007-03-16 09:32:17 -05008source "arch/powerpc/platforms/52xx/Kconfig"
9source "arch/powerpc/platforms/powermac/Kconfig"
Kumar Gala4330f5d2007-03-16 09:32:17 -050010source "arch/powerpc/platforms/maple/Kconfig"
11source "arch/powerpc/platforms/pasemi/Kconfig"
Kumar Gala98750262007-04-12 18:01:34 -050012source "arch/powerpc/platforms/ps3/Kconfig"
13source "arch/powerpc/platforms/cell/Kconfig"
Kumar Galac8a55f32007-04-12 17:35:54 -050014source "arch/powerpc/platforms/8xx/Kconfig"
Kumar Galad6071f82007-04-12 16:53:32 -050015source "arch/powerpc/platforms/82xx/Kconfig"
Kumar Galab5a48342007-04-12 15:46:21 -050016source "arch/powerpc/platforms/83xx/Kconfig"
Kumar Galadb947802007-04-12 17:44:07 -050017source "arch/powerpc/platforms/85xx/Kconfig"
Kumar Gala4a89f7f2007-04-12 15:41:26 -050018source "arch/powerpc/platforms/86xx/Kconfig"
Kumar Gala98750262007-04-12 18:01:34 -050019source "arch/powerpc/platforms/embedded6xx/Kconfig"
David Gibsonf6dfc802007-05-08 14:10:01 +100020source "arch/powerpc/platforms/44x/Kconfig"
Josh Boyer545c0692007-09-07 07:51:24 -050021source "arch/powerpc/platforms/40x/Kconfig"
Gerhard Pircher54b318a2009-02-10 12:20:49 +000022source "arch/powerpc/platforms/amigaone/Kconfig"
Kumar Gala4330f5d2007-03-16 09:32:17 -050023
Alexander Grafd17051c2010-07-29 14:47:57 +020024config KVM_GUEST
25 bool "KVM Guest support"
Liu Yu-B132012e1ae9c02012-03-15 10:52:13 +000026 select EPAPR_PARAVIRT
Alexander Grafd17051c2010-07-29 14:47:57 +020027 ---help---
28 This option enables various optimizations for running under the KVM
29 hypervisor. Overhead for the kernel when not running inside KVM should
30 be minimal.
31
32 In case of doubt, say Y
33
Liu Yu-B132012e1ae9c02012-03-15 10:52:13 +000034config EPAPR_PARAVIRT
35 bool "ePAPR para-virtualization support"
Liu Yu-B132012e1ae9c02012-03-15 10:52:13 +000036 help
37 Enables ePAPR para-virtualization support for guests.
38
39 In case of doubt, say Y
40
Kumar Gala4330f5d2007-03-16 09:32:17 -050041config PPC_NATIVE
42 bool
Christophe Leroybe34fff2018-11-17 10:24:58 +000043 depends on PPC_BOOK3S_32 || PPC64
Kumar Gala4330f5d2007-03-16 09:32:17 -050044 help
45 Support for running natively on the hardware, i.e. without
46 a hypervisor. This option is not user-selectable but should
47 be selected by all platforms that need it.
48
Benjamin Herrenschmidt28794d32009-03-10 17:53:27 +000049config PPC_OF_BOOT_TRAMPOLINE
50 bool "Support booting from Open Firmware or yaboot"
Christophe Leroybe34fff2018-11-17 10:24:58 +000051 depends on PPC_BOOK3S_32 || PPC64
Benjamin Herrenschmidt28794d32009-03-10 17:53:27 +000052 default y
53 help
54 Support from booting from Open Firmware or yaboot using an
55 Open Firmware client interface. This enables the kernel to
Sylvestre Ledruf65e51d2011-04-04 15:04:46 -070056 communicate with open firmware to retrieve system information
Benjamin Herrenschmidt28794d32009-03-10 17:53:27 +000057 such as the device tree.
58
59 In case of doubt, say Y
60
Michael Ellermanc6ee96192017-06-08 16:29:59 +100061config PPC_DT_CPU_FTRS
62 bool "Device-tree based CPU feature discovery & setup"
63 depends on PPC_BOOK3S_64
64 default y
65 help
66 This enables code to use a new device tree binding for describing CPU
67 compatibility and features. Saying Y here will attempt to use the new
68 binding if the firmware provides it. Currently only the skiboot
69 firmware provides this binding.
70 If you're not sure say Y.
71
Kumar Gala4330f5d2007-03-16 09:32:17 -050072config UDBG_RTAS_CONSOLE
73 bool "RTAS based debug console"
74 depends on PPC_RTAS
Kumar Gala4330f5d2007-03-16 09:32:17 -050075
Milton Miller1ece3552011-05-10 19:29:42 +000076config PPC_SMP_MUXED_IPI
77 bool
78 help
Masanari Iida83fc61a2017-09-26 12:47:59 +090079 Select this option if your platform supports SMP and your
Milton Miller1ece3552011-05-10 19:29:42 +000080 interrupt controller provides less than 4 interrupts to each
81 cpu. This will enable the generic code to multiplex the 4
82 messages on to one ipi.
83
John Rigbyb0bbad62008-01-17 17:05:31 -070084config IPIC
85 bool
John Rigbyb0bbad62008-01-17 17:05:31 -070086
Kumar Gala98750262007-04-12 18:01:34 -050087config MPIC
88 bool
Kumar Gala98750262007-04-12 18:01:34 -050089
Dongsheng.wang@freescale.com36ca09b2013-04-09 10:22:30 +080090config MPIC_TIMER
91 bool "MPIC Global Timer"
92 depends on MPIC && FSL_SOC
Dongsheng.wang@freescale.com36ca09b2013-04-09 10:22:30 +080093 help
94 The MPIC global timer is a hardware timer inside the
95 Freescale PIC complying with OpenPIC standard. When the
96 specified interval times out, the hardware timer generates
97 an interrupt. The driver currently is only tested on fsl
98 chip, but it can potentially support other global timers
99 complying with the OpenPIC standard.
100
Dongsheng.wang@freescale.coma63b3bc2013-04-09 10:22:32 +0800101config FSL_MPIC_TIMER_WAKEUP
102 tristate "Freescale MPIC global timer wakeup driver"
103 depends on FSL_SOC && MPIC_TIMER && PM
Dongsheng.wang@freescale.coma63b3bc2013-04-09 10:22:32 +0800104 help
105 The driver provides a way to wake up the system by MPIC
106 timer.
107 e.g. "echo 5 > /sys/devices/system/mpic/timer_wakeup"
108
Ashish Kalra3a932612011-05-19 08:54:28 -0500109config PPC_EPAPR_HV_PIC
110 bool
Stuart Yoder40656392012-07-03 05:48:54 +0000111 select EPAPR_PARAVIRT
Ashish Kalra3a932612011-05-19 08:54:28 -0500112
Kumar Gala98750262007-04-12 18:01:34 -0500113config MPIC_WEIRD
114 bool
Kumar Gala98750262007-04-12 18:01:34 -0500115
Jia Hongtao86268162012-02-17 10:49:03 +0800116config MPIC_MSGR
117 bool "MPIC message register support"
118 depends on MPIC
Jia Hongtao86268162012-02-17 10:49:03 +0800119 help
120 Enables support for the MPIC message registers. These
121 registers are used for inter-processor communication.
122
Kumar Gala98750262007-04-12 18:01:34 -0500123config PPC_I8259
124 bool
Kumar Gala98750262007-04-12 18:01:34 -0500125
Kumar Gala4330f5d2007-03-16 09:32:17 -0500126config U3_DART
127 bool
Benjamin Herrenschmidt28794d32009-03-10 17:53:27 +0000128 depends on PPC64
Kumar Gala4330f5d2007-03-16 09:32:17 -0500129
130config PPC_RTAS
131 bool
Kumar Gala4330f5d2007-03-16 09:32:17 -0500132
133config RTAS_ERROR_LOGGING
134 bool
135 depends on PPC_RTAS
Kumar Gala4330f5d2007-03-16 09:32:17 -0500136
Benjamin Herrenschmidt3d541c42009-09-24 19:30:05 +0000137config PPC_RTAS_DAEMON
138 bool
139 depends on PPC_RTAS
Benjamin Herrenschmidt3d541c42009-09-24 19:30:05 +0000140
Kumar Gala4330f5d2007-03-16 09:32:17 -0500141config RTAS_PROC
142 bool "Proc interface to RTAS"
Michael Ellermanb80ec3d2013-05-06 18:43:39 +0000143 depends on PPC_RTAS && PROC_FS
Kumar Gala4330f5d2007-03-16 09:32:17 -0500144 default y
145
146config RTAS_FLASH
147 tristate "Firmware flash interface"
148 depends on PPC64 && RTAS_PROC
149
Kumar Gala4330f5d2007-03-16 09:32:17 -0500150config MMIO_NVRAM
151 bool
Kumar Gala4330f5d2007-03-16 09:32:17 -0500152
Michael Ellerman6cfef5b2007-04-23 18:47:08 +1000153config MPIC_U3_HT_IRQS
Kumar Gala4330f5d2007-03-16 09:32:17 -0500154 bool
Kumar Gala4330f5d2007-03-16 09:32:17 -0500155
Olof Johansson0d72ba92007-09-08 05:13:19 +1000156config MPIC_BROKEN_REGREAD
157 bool
158 depends on MPIC
159 help
160 This option enables a MPIC driver workaround for some chips
161 that have a bug that causes some interrupt source information
162 to not read back properly. It is safe to use on other chips as
163 well, but enabling it uses about 8KB of memory to keep copies
164 of the register contents in software.
165
Gavin Shan317f06d2013-06-20 13:20:52 +0800166config EEH
167 bool
168 depends on (PPC_POWERNV || PPC_PSERIES) && PCI
169 default y
170
Kumar Gala4330f5d2007-03-16 09:32:17 -0500171config PPC_MPC106
172 bool
Kumar Gala4330f5d2007-03-16 09:32:17 -0500173
174config PPC_970_NAP
175 bool
Kumar Gala4330f5d2007-03-16 09:32:17 -0500176
Benjamin Herrenschmidt948cf672011-01-24 18:42:41 +1100177config PPC_P7_NAP
178 bool
Benjamin Herrenschmidt948cf672011-01-24 18:42:41 +1100179
Benjamin Herrenschmidtecd73cc2013-07-15 13:03:08 +1000180config PPC_INDIRECT_PIO
Kumar Gala4330f5d2007-03-16 09:32:17 -0500181 bool
182 select GENERIC_IOMAP
Michael Ellerman21176fe2011-04-11 21:25:01 +0000183
Michael Ellerman21176fe2011-04-11 21:25:01 +0000184config PPC_INDIRECT_MMIO
185 bool
Kumar Gala4330f5d2007-03-16 09:32:17 -0500186
Michael Ellerman3cc30d02011-04-11 21:25:01 +0000187config PPC_IO_WORKAROUNDS
188 bool
189
Kumar Gala4330f5d2007-03-16 09:32:17 -0500190source "drivers/cpufreq/Kconfig"
191
Deepthi Dharware1798162011-11-30 02:46:55 +0000192menu "CPUIdle driver"
193
194source "drivers/cpuidle/Kconfig"
195
196endmenu
197
Kumar Gala4330f5d2007-03-16 09:32:17 -0500198config PPC601_SYNC_FIX
199 bool "Workarounds for PPC601 bugs"
Christophe Leroybe34fff2018-11-17 10:24:58 +0000200 depends on PPC_BOOK3S_32 && PPC_PMAC
Kumar Gala4330f5d2007-03-16 09:32:17 -0500201 help
202 Some versions of the PPC601 (the first PowerPC chip) have bugs which
203 mean that extra synchronization instructions are required near
204 certain instructions, typically those that make major changes to the
205 CPU state. These extra instructions reduce performance slightly.
206 If you say N here, these extra instructions will not be included,
207 resulting in a kernel which will run faster but may not run at all
208 on some systems with the PPC601 chip.
209
210 If in doubt, say Y here.
211
212config TAU
213 bool "On-chip CPU temperature sensor support"
Christophe Leroybe34fff2018-11-17 10:24:58 +0000214 depends on PPC_BOOK3S_32
Kumar Gala4330f5d2007-03-16 09:32:17 -0500215 help
216 G3 and G4 processors have an on-chip temperature sensor called the
217 'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
218 temperature within 2-4 degrees Celsius. This option shows the current
219 on-die temperature in /proc/cpuinfo if the cpu supports it.
220
221 Unfortunately, on some chip revisions, this sensor is very inaccurate
222 and in many cases, does not work at all, so don't assume the cpu
223 temp is actually what /proc/cpuinfo says it is.
224
225config TAU_INT
226 bool "Interrupt driven TAU driver (DANGEROUS)"
227 depends on TAU
228 ---help---
229 The TAU supports an interrupt driven mode which causes an interrupt
230 whenever the temperature goes out of range. This is the fastest way
231 to get notified the temp has exceeded a range. With this option off,
232 a timer is used to re-check the temperature periodically.
233
234 However, on some cpus it appears that the TAU interrupt hardware
235 is buggy and can cause a situation which would lead unexplained hard
236 lockups.
237
238 Unless you are extending the TAU driver, or enjoy kernel/hardware
239 debugging, leave this option off.
240
241config TAU_AVERAGE
242 bool "Average high and low temp"
243 depends on TAU
244 ---help---
245 The TAU hardware can compare the temperature to an upper and lower
246 bound. The default behavior is to show both the upper and lower
247 bound in /proc/cpuinfo. If the range is large, the temperature is
248 either changing a lot, or the TAU hardware is broken (likely on some
249 G4's). If the range is small (around 4 degrees), the temperature is
250 relatively stable. If you say Y here, a single temperature value,
251 halfway between the upper and lower bounds, will be reported in
252 /proc/cpuinfo.
253
254 If in doubt, say N here.
255
Anton Vorontsov5c091192008-10-03 23:40:36 +0400256config QE_GPIO
257 bool "QE GPIO support"
258 depends on QUICC_ENGINE
Linus Walleij86c55af2016-04-19 13:21:02 +0200259 select GPIOLIB
Anton Vorontsov5c091192008-10-03 23:40:36 +0400260 help
261 Say Y here if you're going to use hardware that connects to the
262 QE GPIOs.
263
Kumar Galad6071f82007-04-12 16:53:32 -0500264config CPM2
Paul Gortmakerb8b3caf2008-01-24 18:41:25 -0500265 bool "Enable support for the CPM2 (Communications Processor Module)"
Kumar Gala5753c082009-10-16 18:31:48 -0500266 depends on (FSL_SOC_BOOKE && PPC32) || 8260
Scott Woodc374e002007-07-16 11:43:43 -0500267 select CPM
Christoph Hellwigeb01d422018-11-15 20:05:32 +0100268 select HAVE_PCI
Linus Walleij86c55af2016-04-19 13:21:02 +0200269 select GPIOLIB
Kumar Galad6071f82007-04-12 16:53:32 -0500270 help
271 The CPM2 (Communications Processor Module) is a coprocessor on
272 embedded CPUs made by Freescale. Selecting this option means that
273 you wish to build a kernel for a machine with a CPM2 coprocessor
274 on it (826x, 827x, 8560).
275
Kumar Galab66510c2007-08-16 23:55:55 -0500276config FSL_ULI1575
277 bool
Kumar Galafb4f0e82007-09-10 14:57:34 -0500278 select GENERIC_ISA_DMA
Kumar Galab66510c2007-08-16 23:55:55 -0500279 help
280 Supports for the ULI1575 PCIe south bridge that exists on some
281 Freescale reference boards. The boards all use the ULI in pretty
282 much the same way.
283
Scott Woodc374e002007-07-16 11:43:43 -0500284config CPM
285 bool
Zhao Qiang0e6e01f2015-11-30 10:48:54 +0800286 select GENERIC_ALLOCATOR
Scott Woodc374e002007-07-16 11:43:43 -0500287
David Gibson22258fa2008-01-11 14:25:34 +1100288config OF_RTC
289 bool
290 help
Matt LaPlante692105b2009-01-26 11:12:25 +0100291 Uses information from the OF or flattened device tree to instantiate
David Gibson22258fa2008-01-11 14:25:34 +1100292 platform devices for direct mapped RTC chips like the DS1742 or DS1743.
293
Arnd Bergmann835ea932016-05-30 20:58:01 +0200294config GEN_RTC
295 bool "Use the platform RTC operations from user space"
296 select RTC_CLASS
297 select RTC_DRV_GENERIC
298 help
299 This option provides backwards compatibility with the old gen_rtc.ko
300 module that was traditionally used for old PowerPC machines.
301 Platforms should migrate to enabling the RTC_DRV_GENERIC by hand
302 replacing their get_rtc_time/set_rtc_time callbacks with
303 a proper RTC device driver.
304
Anton Vorontsov3d64de92008-12-18 19:37:26 +0300305config SIMPLE_GPIO
306 bool "Support for simple, memory-mapped GPIO controllers"
307 depends on PPC
Linus Walleij86c55af2016-04-19 13:21:02 +0200308 select GPIOLIB
Anton Vorontsov3d64de92008-12-18 19:37:26 +0300309 help
310 Say Y here to support simple, memory-mapped GPIO controllers.
311 These are usually BCSRs used to control board's switches, LEDs,
312 chip-selects, Ethernet/USB PHY's power and various other small
313 on-board peripherals.
314
Anton Vorontsovea0105e2009-01-11 19:55:39 +0300315config MCU_MPC8349EMITX
Fabio Baltieri6ca6ca52011-08-15 16:19:30 +0200316 bool "MPC8349E-mITX MCU driver"
Al Viro82640a62011-11-08 21:10:29 -0500317 depends on I2C=y && PPC_83xx
Linus Walleij86c55af2016-04-19 13:21:02 +0200318 select GPIOLIB
Anton Vorontsovea0105e2009-01-11 19:55:39 +0300319 help
320 Say Y here to enable soft power-off functionality on the Freescale
321 boards with the MPC8349E-mITX-compatible MCU chips. This driver will
322 also register MCU GPIOs with the generic GPIO API, so you'll able
323 to use MCU pins as GPIOs.
324
Roderick Colenbrander64f16502009-06-06 10:14:22 -0600325config XILINX_PCI
326 bool "Xilinx PCI host bridge support"
327 depends on PCI && XILINX_VIRTEX
328
Kumar Gala4330f5d2007-03-16 09:32:17 -0500329endmenu