18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ciconfig PPC_PSERIES
38c2ecf20Sopenharmony_ci	depends on PPC64 && PPC_BOOK3S
48c2ecf20Sopenharmony_ci	bool "IBM pSeries & new (POWER5-based) iSeries"
58c2ecf20Sopenharmony_ci	select HAVE_PCSPKR_PLATFORM
68c2ecf20Sopenharmony_ci	select MPIC
78c2ecf20Sopenharmony_ci	select OF_DYNAMIC
88c2ecf20Sopenharmony_ci	select FORCE_PCI
98c2ecf20Sopenharmony_ci	select PCI_MSI
108c2ecf20Sopenharmony_ci	select PPC_XICS
118c2ecf20Sopenharmony_ci	select PPC_XIVE_SPAPR
128c2ecf20Sopenharmony_ci	select PPC_ICP_NATIVE
138c2ecf20Sopenharmony_ci	select PPC_ICP_HV
148c2ecf20Sopenharmony_ci	select PPC_ICS_RTAS
158c2ecf20Sopenharmony_ci	select PPC_I8259
168c2ecf20Sopenharmony_ci	select PPC_RTAS
178c2ecf20Sopenharmony_ci	select PPC_RTAS_DAEMON
188c2ecf20Sopenharmony_ci	select RTAS_ERROR_LOGGING
198c2ecf20Sopenharmony_ci	select PPC_UDBG_16550
208c2ecf20Sopenharmony_ci	select PPC_NATIVE
218c2ecf20Sopenharmony_ci	select PPC_DOORBELL
228c2ecf20Sopenharmony_ci	select HOTPLUG_CPU
238c2ecf20Sopenharmony_ci	select ARCH_RANDOM
248c2ecf20Sopenharmony_ci	select FORCE_SMP
258c2ecf20Sopenharmony_ci	select SWIOTLB
268c2ecf20Sopenharmony_ci	default y
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciconfig PARAVIRT_SPINLOCKS
298c2ecf20Sopenharmony_ci	bool
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciconfig PPC_SPLPAR
328c2ecf20Sopenharmony_ci	bool "Support for shared-processor logical partitions"
338c2ecf20Sopenharmony_ci	depends on PPC_PSERIES
348c2ecf20Sopenharmony_ci	select PARAVIRT_SPINLOCKS if PPC_QUEUED_SPINLOCKS
358c2ecf20Sopenharmony_ci	default y
368c2ecf20Sopenharmony_ci	help
378c2ecf20Sopenharmony_ci	  Enabling this option will make the kernel run more efficiently
388c2ecf20Sopenharmony_ci	  on logically-partitioned pSeries systems which use shared
398c2ecf20Sopenharmony_ci	  processors, that is, which share physical processors between
408c2ecf20Sopenharmony_ci	  two or more partitions.
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci	  Say Y if you are unsure.
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ciconfig DTL
458c2ecf20Sopenharmony_ci	bool "Dispatch Trace Log"
468c2ecf20Sopenharmony_ci	depends on PPC_SPLPAR && DEBUG_FS
478c2ecf20Sopenharmony_ci	help
488c2ecf20Sopenharmony_ci	  SPLPAR machines can log hypervisor preempt & dispatch events to a
498c2ecf20Sopenharmony_ci	  kernel buffer. Saying Y here will enable logging these events,
508c2ecf20Sopenharmony_ci	  which are accessible through a debugfs file.
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci	  Say N if you are unsure.
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ciconfig PSERIES_ENERGY
558c2ecf20Sopenharmony_ci	tristate "pSeries energy management capabilities driver"
568c2ecf20Sopenharmony_ci	depends on PPC_PSERIES
578c2ecf20Sopenharmony_ci	default y
588c2ecf20Sopenharmony_ci	help
598c2ecf20Sopenharmony_ci	  Provides interface to platform energy management capabilities
608c2ecf20Sopenharmony_ci	  on supported PSERIES platforms.
618c2ecf20Sopenharmony_ci	  Provides: /sys/devices/system/cpu/pseries_(de)activation_hint_list
628c2ecf20Sopenharmony_ci	  and /sys/devices/system/cpu/cpuN/pseries_(de)activation_hint
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ciconfig SCANLOG
658c2ecf20Sopenharmony_ci	tristate "Scanlog dump interface"
668c2ecf20Sopenharmony_ci	depends on RTAS_PROC && PPC_PSERIES
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ciconfig IO_EVENT_IRQ
698c2ecf20Sopenharmony_ci	bool "IO Event Interrupt support"
708c2ecf20Sopenharmony_ci	depends on PPC_PSERIES
718c2ecf20Sopenharmony_ci	default y
728c2ecf20Sopenharmony_ci	help
738c2ecf20Sopenharmony_ci	  Select this option, if you want to enable support for IO Event
748c2ecf20Sopenharmony_ci	  interrupts. IO event interrupt is a mechanism provided by RTAS
758c2ecf20Sopenharmony_ci	  to return information about hardware error and non-error events
768c2ecf20Sopenharmony_ci	  which may need OS attention. RTAS returns events for multiple
778c2ecf20Sopenharmony_ci	  event types and scopes. Device drivers can register their handlers
788c2ecf20Sopenharmony_ci	  to receive events.
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci	  This option will only enable the IO event platform code. You
818c2ecf20Sopenharmony_ci	  will still need to enable or compile the actual drivers
828c2ecf20Sopenharmony_ci	  that use this infrastructure to handle IO event interrupts.
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ci	  Say Y if you are unsure.
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ciconfig LPARCFG
878c2ecf20Sopenharmony_ci	bool "LPAR Configuration Data"
888c2ecf20Sopenharmony_ci	depends on PPC_PSERIES
898c2ecf20Sopenharmony_ci	help
908c2ecf20Sopenharmony_ci	  Provide system capacity information via human readable
918c2ecf20Sopenharmony_ci	  <key word>=<value> pairs through a /proc/ppc64/lparcfg interface.
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ciconfig PPC_PSERIES_DEBUG
948c2ecf20Sopenharmony_ci	depends on PPC_PSERIES && PPC_EARLY_DEBUG
958c2ecf20Sopenharmony_ci	bool "Enable extra debug logging in platforms/pseries"
968c2ecf20Sopenharmony_ci	default y
978c2ecf20Sopenharmony_ci	help
988c2ecf20Sopenharmony_ci	  Say Y here if you want the pseries core to produce a bunch of
998c2ecf20Sopenharmony_ci	  debug messages to the system log. Select this if you are having a
1008c2ecf20Sopenharmony_ci	  problem with the pseries core and want to see more of what is
1018c2ecf20Sopenharmony_ci	  going on. This does not enable debugging in lpar.c, which must
1028c2ecf20Sopenharmony_ci	  be manually done due to its verbosity.
1038c2ecf20Sopenharmony_ci
1048c2ecf20Sopenharmony_ciconfig PPC_SMLPAR
1058c2ecf20Sopenharmony_ci	bool "Support for shared-memory logical partitions"
1068c2ecf20Sopenharmony_ci	depends on PPC_PSERIES
1078c2ecf20Sopenharmony_ci	select LPARCFG
1088c2ecf20Sopenharmony_ci	help
1098c2ecf20Sopenharmony_ci	  Select this option to enable shared memory partition support.
1108c2ecf20Sopenharmony_ci	  With this option a system running in an LPAR can be given more
1118c2ecf20Sopenharmony_ci	  memory than physically available and will allow firmware to
1128c2ecf20Sopenharmony_ci	  balance memory across many LPARs.
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ciconfig CMM
1158c2ecf20Sopenharmony_ci	tristate "Collaborative memory management"
1168c2ecf20Sopenharmony_ci	depends on PPC_SMLPAR
1178c2ecf20Sopenharmony_ci	select MEMORY_BALLOON
1188c2ecf20Sopenharmony_ci	default y
1198c2ecf20Sopenharmony_ci	help
1208c2ecf20Sopenharmony_ci	  Select this option, if you want to enable the kernel interface
1218c2ecf20Sopenharmony_ci	  to reduce the memory size of the system. This is accomplished
1228c2ecf20Sopenharmony_ci	  by allocating pages of memory and put them "on hold". This only
1238c2ecf20Sopenharmony_ci	  makes sense for a system running in an LPAR where the unused pages
1248c2ecf20Sopenharmony_ci	  will be reused for other LPARs. The interface allows firmware to
1258c2ecf20Sopenharmony_ci	  balance memory across many LPARs.
1268c2ecf20Sopenharmony_ci
1278c2ecf20Sopenharmony_ciconfig HV_PERF_CTRS
1288c2ecf20Sopenharmony_ci	bool "Hypervisor supplied PMU events (24x7 & GPCI)"
1298c2ecf20Sopenharmony_ci	default y
1308c2ecf20Sopenharmony_ci	depends on PERF_EVENTS && PPC_PSERIES
1318c2ecf20Sopenharmony_ci	help
1328c2ecf20Sopenharmony_ci	  Enable access to hypervisor supplied counters in perf. Currently,
1338c2ecf20Sopenharmony_ci	  this enables code that uses the hcall GetPerfCounterInfo and 24x7
1348c2ecf20Sopenharmony_ci	  interfaces to retrieve counters. GPCI exists on Power 6 and later
1358c2ecf20Sopenharmony_ci	  systems. 24x7 is available on Power 8 and later systems.
1368c2ecf20Sopenharmony_ci
1378c2ecf20Sopenharmony_ci	  If unsure, select Y.
1388c2ecf20Sopenharmony_ci
1398c2ecf20Sopenharmony_ciconfig IBMVIO
1408c2ecf20Sopenharmony_ci	depends on PPC_PSERIES
1418c2ecf20Sopenharmony_ci	bool
1428c2ecf20Sopenharmony_ci	default y
1438c2ecf20Sopenharmony_ci
1448c2ecf20Sopenharmony_ciconfig IBMEBUS
1458c2ecf20Sopenharmony_ci	depends on PPC_PSERIES && !CPU_LITTLE_ENDIAN
1468c2ecf20Sopenharmony_ci	bool "Support for GX bus based adapters"
1478c2ecf20Sopenharmony_ci	help
1488c2ecf20Sopenharmony_ci	  Bus device driver for GX bus based adapters.
1498c2ecf20Sopenharmony_ci
1508c2ecf20Sopenharmony_ciconfig PAPR_SCM
1518c2ecf20Sopenharmony_ci	depends on PPC_PSERIES && MEMORY_HOTPLUG && LIBNVDIMM
1528c2ecf20Sopenharmony_ci	tristate "Support for the PAPR Storage Class Memory interface"
1538c2ecf20Sopenharmony_ci	help
1548c2ecf20Sopenharmony_ci	  Enable access to hypervisor provided storage class memory.
1558c2ecf20Sopenharmony_ci
1568c2ecf20Sopenharmony_ciconfig PPC_SVM
1578c2ecf20Sopenharmony_ci	bool "Secure virtual machine (SVM) support for POWER"
1588c2ecf20Sopenharmony_ci	depends on PPC_PSERIES
1598c2ecf20Sopenharmony_ci	select SWIOTLB
1608c2ecf20Sopenharmony_ci	select ARCH_HAS_MEM_ENCRYPT
1618c2ecf20Sopenharmony_ci	select ARCH_HAS_FORCE_DMA_UNENCRYPTED
1628c2ecf20Sopenharmony_ci	help
1638c2ecf20Sopenharmony_ci	 There are certain POWER platforms which support secure guests using
1648c2ecf20Sopenharmony_ci	 the Protected Execution Facility, with the help of an Ultravisor
1658c2ecf20Sopenharmony_ci	 executing below the hypervisor layer. This enables support for
1668c2ecf20Sopenharmony_ci	 those guests.
1678c2ecf20Sopenharmony_ci
1688c2ecf20Sopenharmony_ci	 If unsure, say "N".
169