xref: /linux/arch/powerpc/platforms/pseries/Kconfig (revision 0ea5c948cb64bab5bc7a5516774eb8536f05aa0d)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
235a1245aSKumar Galaconfig PPC_PSERIES
328794d34SBenjamin Herrenschmidt	depends on PPC64 && PPC_BOOK3S
435a1245aSKumar Gala	bool "IBM pSeries & new (POWER5-based) iSeries"
58761f1abSRalf Baechle	select HAVE_PCSPKR_PLATFORM
635a1245aSKumar Gala	select MPIC
70f22dd39SGrant Likely	select OF_DYNAMIC
8eb01d42aSChristoph Hellwig	select FORCE_PCI
98a55c4baSMel Gorman	select PCI_MSI
106175b70dSRandy Dunlap	select GENERIC_ALLOCATOR
110b05ac6eSBenjamin Herrenschmidt	select PPC_XICS
12eac1e731SCédric Le Goater	select PPC_XIVE_SPAPR
130b05ac6eSBenjamin Herrenschmidt	select PPC_ICP_NATIVE
140b05ac6eSBenjamin Herrenschmidt	select PPC_ICP_HV
150b05ac6eSBenjamin Herrenschmidt	select PPC_ICS_RTAS
1635a1245aSKumar Gala	select PPC_I8259
1735a1245aSKumar Gala	select PPC_RTAS
183d541c4bSBenjamin Herrenschmidt	select PPC_RTAS_DAEMON
1935a1245aSKumar Gala	select RTAS_ERROR_LOGGING
2035a1245aSKumar Gala	select PPC_UDBG_16550
21e5e84f0aSIan Munsie	select PPC_DOORBELL
22270e2dc9SMichael Ellerman	select HOTPLUG_CPU
23270e2dc9SMichael Ellerman	select FORCE_SMP
241a047cc7SAlexey Kardashevskiy	select SWIOTLB
2570d4cbc8SLaurent Dufour	select ARCH_SUPPORTS_PER_VMA_LOCK
2635a1245aSKumar Gala	default y
2714cf11afSPaul Mackerras
280e8a6313SNicholas Pigginconfig PARAVIRT
290e8a6313SNicholas Piggin	bool
300e8a6313SNicholas Piggin
3120c0e826SNicholas Pigginconfig PARAVIRT_SPINLOCKS
3220c0e826SNicholas Piggin	bool
3320c0e826SNicholas Piggin
340e8a6313SNicholas Pigginconfig PARAVIRT_TIME_ACCOUNTING
350e8a6313SNicholas Piggin	select PARAVIRT
360e8a6313SNicholas Piggin	bool
370e8a6313SNicholas Piggin
3814cf11afSPaul Mackerrasconfig PPC_SPLPAR
3914cf11afSPaul Mackerras	bool "Support for shared-processor logical partitions"
4020c0e826SNicholas Piggin	depends on PPC_PSERIES
4120c0e826SNicholas Piggin	select PARAVIRT_SPINLOCKS if PPC_QUEUED_SPINLOCKS
420e8a6313SNicholas Piggin	select PARAVIRT_TIME_ACCOUNTING if VIRT_CPU_ACCOUNTING_GEN
4320c0e826SNicholas Piggin	default y
4414cf11afSPaul Mackerras	help
4514cf11afSPaul Mackerras	  Enabling this option will make the kernel run more efficiently
4614cf11afSPaul Mackerras	  on logically-partitioned pSeries systems which use shared
4714cf11afSPaul Mackerras	  processors, that is, which share physical processors between
4814cf11afSPaul Mackerras	  two or more partitions.
4914cf11afSPaul Mackerras
5020c0e826SNicholas Piggin	  Say Y if you are unsure.
5120c0e826SNicholas Piggin
52e3a8446aSCody P Schaferconfig DTL
53e3a8446aSCody P Schafer	bool "Dispatch Trace Log"
54e3a8446aSCody P Schafer	depends on PPC_SPLPAR && DEBUG_FS
55e3a8446aSCody P Schafer	help
56e3a8446aSCody P Schafer	  SPLPAR machines can log hypervisor preempt & dispatch events to a
57e3a8446aSCody P Schafer	  kernel buffer. Saying Y here will enable logging these events,
58e3a8446aSCody P Schafer	  which are accessible through a debugfs file.
59e3a8446aSCody P Schafer
60e3a8446aSCody P Schafer	  Say N if you are unsure.
61e3a8446aSCody P Schafer
625742bd85SVaidyanathan Srinivasanconfig PSERIES_ENERGY
635742bd85SVaidyanathan Srinivasan	tristate "pSeries energy management capabilities driver"
645742bd85SVaidyanathan Srinivasan	depends on PPC_PSERIES
655742bd85SVaidyanathan Srinivasan	default y
665742bd85SVaidyanathan Srinivasan	help
675742bd85SVaidyanathan Srinivasan	  Provides interface to platform energy management capabilities
685742bd85SVaidyanathan Srinivasan	  on supported PSERIES platforms.
695742bd85SVaidyanathan Srinivasan	  Provides: /sys/devices/system/cpu/pseries_(de)activation_hint_list
705742bd85SVaidyanathan Srinivasan	  and /sys/devices/system/cpu/cpuN/pseries_(de)activation_hint
715742bd85SVaidyanathan Srinivasan
7277eafe10STseng-Hui (Frank) Linconfig IO_EVENT_IRQ
7377eafe10STseng-Hui (Frank) Lin	bool "IO Event Interrupt support"
7477eafe10STseng-Hui (Frank) Lin	depends on PPC_PSERIES
7577eafe10STseng-Hui (Frank) Lin	default y
7677eafe10STseng-Hui (Frank) Lin	help
7777eafe10STseng-Hui (Frank) Lin	  Select this option, if you want to enable support for IO Event
7877eafe10STseng-Hui (Frank) Lin	  interrupts. IO event interrupt is a mechanism provided by RTAS
7977eafe10STseng-Hui (Frank) Lin	  to return information about hardware error and non-error events
8077eafe10STseng-Hui (Frank) Lin	  which may need OS attention. RTAS returns events for multiple
8177eafe10STseng-Hui (Frank) Lin	  event types and scopes. Device drivers can register their handlers
8277eafe10STseng-Hui (Frank) Lin	  to receive events.
8377eafe10STseng-Hui (Frank) Lin
8477eafe10STseng-Hui (Frank) Lin	  This option will only enable the IO event platform code. You
8577eafe10STseng-Hui (Frank) Lin	  will still need to enable or compile the actual drivers
866b2aac42SMasanari Iida	  that use this infrastructure to handle IO event interrupts.
8777eafe10STseng-Hui (Frank) Lin
8877eafe10STseng-Hui (Frank) Lin	  Say Y if you are unsure.
8977eafe10STseng-Hui (Frank) Lin
9014cf11afSPaul Mackerrasconfig LPARCFG
9182dfdcaeSPaul Mackerras	bool "LPAR Configuration Data"
923d066d77SStephen Rothwell	depends on PPC_PSERIES
9314cf11afSPaul Mackerras	help
9414cf11afSPaul Mackerras	  Provide system capacity information via human readable
9514cf11afSPaul Mackerras	  <key word>=<value> pairs through a /proc/ppc64/lparcfg interface.
9636f8a2c4SMichael Ellerman
9736f8a2c4SMichael Ellermanconfig PPC_PSERIES_DEBUG
9836f8a2c4SMichael Ellerman	depends on PPC_PSERIES && PPC_EARLY_DEBUG
9936f8a2c4SMichael Ellerman	bool "Enable extra debug logging in platforms/pseries"
1004f44e8aeSEnrico Weigelt, metux IT consult	default y
10101cf6fe8SNishanth Aravamudan	help
10201cf6fe8SNishanth Aravamudan	  Say Y here if you want the pseries core to produce a bunch of
10301cf6fe8SNishanth Aravamudan	  debug messages to the system log. Select this if you are having a
10401cf6fe8SNishanth Aravamudan	  problem with the pseries core and want to see more of what is
10501cf6fe8SNishanth Aravamudan	  going on. This does not enable debugging in lpar.c, which must
10601cf6fe8SNishanth Aravamudan	  be manually done due to its verbosity.
10784af458bSBrian King
10884af458bSBrian Kingconfig PPC_SMLPAR
10984af458bSBrian King	bool "Support for shared-memory logical partitions"
11084af458bSBrian King	depends on PPC_PSERIES
11184af458bSBrian King	select LPARCFG
11284af458bSBrian King	help
11384af458bSBrian King	  Select this option to enable shared memory partition support.
11484af458bSBrian King	  With this option a system running in an LPAR can be given more
11584af458bSBrian King	  memory than physically available and will allow firmware to
11684af458bSBrian King	  balance memory across many LPARs.
11784af458bSBrian King
11884af458bSBrian Kingconfig CMM
11984af458bSBrian King	tristate "Collaborative memory management"
1208be8cf5bSBrian King	depends on PPC_SMLPAR
121fe030c9bSDavid Hildenbrand	select MEMORY_BALLOON
12284af458bSBrian King	default y
12384af458bSBrian King	help
12484af458bSBrian King	  Select this option, if you want to enable the kernel interface
12584af458bSBrian King	  to reduce the memory size of the system. This is accomplished
12684af458bSBrian King	  by allocating pages of memory and put them "on hold". This only
12784af458bSBrian King	  makes sense for a system running in an LPAR where the unused pages
12884af458bSBrian King	  will be reused for other LPARs. The interface allows firmware to
12984af458bSBrian King	  balance memory across many LPARs.
130fc59a3fcSJeremy Kerr
13130daeb6cSCody P Schaferconfig HV_PERF_CTRS
13230daeb6cSCody P Schafer	bool "Hypervisor supplied PMU events (24x7 & GPCI)"
13330daeb6cSCody P Schafer	default y
13430daeb6cSCody P Schafer	depends on PERF_EVENTS && PPC_PSERIES
13530daeb6cSCody P Schafer	help
13630daeb6cSCody P Schafer	  Enable access to hypervisor supplied counters in perf. Currently,
13730daeb6cSCody P Schafer	  this enables code that uses the hcall GetPerfCounterInfo and 24x7
13830daeb6cSCody P Schafer	  interfaces to retrieve counters. GPCI exists on Power 6 and later
1392e6553aaSThiago Jung Bauermann	  systems. 24x7 is available on Power 8 and later systems.
14030daeb6cSCody P Schafer
14130daeb6cSCody P Schafer	  If unsure, select Y.
142139ac5afSMichael Ellerman
143139ac5afSMichael Ellermanconfig IBMVIO
144139ac5afSMichael Ellerman	depends on PPC_PSERIES
145139ac5afSMichael Ellerman	bool
146139ac5afSMichael Ellerman	default y
14730757de2SMichael Ellerman
14830757de2SMichael Ellermanconfig IBMEBUS
14990ee8762SMichael Ellerman	depends on PPC_PSERIES && !CPU_LITTLE_ENDIAN
15030757de2SMichael Ellerman	bool "Support for GX bus based adapters"
15130757de2SMichael Ellerman	help
15230757de2SMichael Ellerman	  Bus device driver for GX bus based adapters.
153b5beae5eSOliver O'Halloran
1542454a7afSNayna Jainconfig PSERIES_PLPKS
1552454a7afSNayna Jain	depends on PPC_PSERIES
156ccadf154SRussell Currey	select NLS
15746b2cbebSAndrew Donnellan	bool
15846b2cbebSAndrew Donnellan	# PowerVM provides an isolated Platform Keystore (PKS) storage
15946b2cbebSAndrew Donnellan	# allocation for each LPAR with individually managed access
16046b2cbebSAndrew Donnellan	# controls to store sensitive information securely. It can be
16146b2cbebSAndrew Donnellan	# used to store asymmetric public keys or secrets as required
16246b2cbebSAndrew Donnellan	# by different usecases.
16346b2cbebSAndrew Donnellan	#
16446b2cbebSAndrew Donnellan	# This option is selected by in-kernel consumers that require
16546b2cbebSAndrew Donnellan	# access to the PKS.
1662454a7afSNayna Jain
167*ec8cf230SGreg Joyceconfig PSERIES_PLPKS_SED
168*ec8cf230SGreg Joyce	depends on PPC_PSERIES
169*ec8cf230SGreg Joyce	bool
170*ec8cf230SGreg Joyce	# This option is selected by in-kernel consumers that require
171*ec8cf230SGreg Joyce	# access to the SED PKS keystore.
172*ec8cf230SGreg Joyce
173b5beae5eSOliver O'Halloranconfig PAPR_SCM
17414ebfec0SOliver O'Halloran	depends on PPC_PSERIES && MEMORY_HOTPLUG && LIBNVDIMM
175b5beae5eSOliver O'Halloran	tristate "Support for the PAPR Storage Class Memory interface"
176b5beae5eSOliver O'Halloran	help
177b5beae5eSOliver O'Halloran	  Enable access to hypervisor provided storage class memory.
178136bc039SThiago Jung Bauermann
179136bc039SThiago Jung Bauermannconfig PPC_SVM
180136bc039SThiago Jung Bauermann	bool "Secure virtual machine (SVM) support for POWER"
181136bc039SThiago Jung Bauermann	depends on PPC_PSERIES
1822efbc58fSAnshuman Khandual	select SWIOTLB
1832efbc58fSAnshuman Khandual	select ARCH_HAS_MEM_ENCRYPT
1842efbc58fSAnshuman Khandual	select ARCH_HAS_FORCE_DMA_UNENCRYPTED
185bfebd37eSTom Lendacky	select ARCH_HAS_CC_PLATFORM
186136bc039SThiago Jung Bauermann	help
187136bc039SThiago Jung Bauermann	 There are certain POWER platforms which support secure guests using
188136bc039SThiago Jung Bauermann	 the Protected Execution Facility, with the help of an Ultravisor
189136bc039SThiago Jung Bauermann	 executing below the hypervisor layer. This enables support for
190136bc039SThiago Jung Bauermann	 those guests.
191136bc039SThiago Jung Bauermann
192136bc039SThiago Jung Bauermann	 If unsure, say "N".
193