| # SPDX-License-Identifier: GPL-2.0 |
| config PPC_PSERIES |
| depends on PPC64 && PPC_BOOK3S |
| bool "IBM pSeries & new (POWER5-based) iSeries" |
| select HAVE_PCSPKR_PLATFORM |
| select MPIC |
| select OF_DYNAMIC |
| select FORCE_PCI |
| select PCI_MSI |
| select GENERIC_ALLOCATOR |
| select PPC_XICS |
| select PPC_XIVE_SPAPR |
| select PPC_ICP_NATIVE |
| select PPC_ICP_HV |
| select PPC_ICS_RTAS |
| select PPC_I8259 |
| select PPC_RTAS |
| select PPC_RTAS_DAEMON |
| select RTAS_ERROR_LOGGING |
| select PPC_UDBG_16550 |
| select PPC_DOORBELL |
| select HOTPLUG_CPU |
| select FORCE_SMP |
| select SWIOTLB |
| select ARCH_SUPPORTS_PER_VMA_LOCK |
| default y |
| |
| config PARAVIRT |
| bool |
| |
| config PARAVIRT_SPINLOCKS |
| bool |
| |
| config PARAVIRT_TIME_ACCOUNTING |
| select PARAVIRT |
| bool |
| |
| config PPC_SPLPAR |
| bool "Support for shared-processor logical partitions" |
| depends on PPC_PSERIES |
| select PARAVIRT_SPINLOCKS if PPC_QUEUED_SPINLOCKS |
| select PARAVIRT_TIME_ACCOUNTING if VIRT_CPU_ACCOUNTING_GEN |
| default y |
| help |
| Enabling this option will make the kernel run more efficiently |
| on logically-partitioned pSeries systems which use shared |
| processors, that is, which share physical processors between |
| two or more partitions. |
| |
| Say Y if you are unsure. |
| |
| config DTL |
| bool "Dispatch Trace Log" |
| depends on PPC_SPLPAR && DEBUG_FS |
| help |
| SPLPAR machines can log hypervisor preempt & dispatch events to a |
| kernel buffer. Saying Y here will enable logging these events, |
| which are accessible through a debugfs file. |
| |
| Say N if you are unsure. |
| |
| config PSERIES_ENERGY |
| tristate "pSeries energy management capabilities driver" |
| depends on PPC_PSERIES |
| default y |
| help |
| Provides interface to platform energy management capabilities |
| on supported PSERIES platforms. |
| Provides: /sys/devices/system/cpu/pseries_(de)activation_hint_list |
| and /sys/devices/system/cpu/cpuN/pseries_(de)activation_hint |
| |
| config IO_EVENT_IRQ |
| bool "IO Event Interrupt support" |
| depends on PPC_PSERIES |
| default y |
| help |
| Select this option, if you want to enable support for IO Event |
| interrupts. IO event interrupt is a mechanism provided by RTAS |
| to return information about hardware error and non-error events |
| which may need OS attention. RTAS returns events for multiple |
| event types and scopes. Device drivers can register their handlers |
| to receive events. |
| |
| This option will only enable the IO event platform code. You |
| will still need to enable or compile the actual drivers |
| that use this infrastructure to handle IO event interrupts. |
| |
| Say Y if you are unsure. |
| |
| config LPARCFG |
| bool "LPAR Configuration Data" |
| depends on PPC_PSERIES |
| help |
| Provide system capacity information via human readable |
| <key word>=<value> pairs through a /proc/ppc64/lparcfg interface. |
| |
| config PPC_PSERIES_DEBUG |
| depends on PPC_PSERIES && PPC_EARLY_DEBUG |
| bool "Enable extra debug logging in platforms/pseries" |
| default y |
| help |
| Say Y here if you want the pseries core to produce a bunch of |
| debug messages to the system log. Select this if you are having a |
| problem with the pseries core and want to see more of what is |
| going on. This does not enable debugging in lpar.c, which must |
| be manually done due to its verbosity. |
| |
| config PPC_SMLPAR |
| bool "Support for shared-memory logical partitions" |
| depends on PPC_PSERIES |
| select LPARCFG |
| help |
| Select this option to enable shared memory partition support. |
| With this option a system running in an LPAR can be given more |
| memory than physically available and will allow firmware to |
| balance memory across many LPARs. |
| |
| config CMM |
| tristate "Collaborative memory management" |
| depends on PPC_SMLPAR |
| select MEMORY_BALLOON |
| default y |
| help |
| Select this option, if you want to enable the kernel interface |
| to reduce the memory size of the system. This is accomplished |
| by allocating pages of memory and put them "on hold". This only |
| makes sense for a system running in an LPAR where the unused pages |
| will be reused for other LPARs. The interface allows firmware to |
| balance memory across many LPARs. |
| |
| config HV_PERF_CTRS |
| bool "Hypervisor supplied PMU events (24x7 & GPCI)" |
| default y |
| depends on PERF_EVENTS && PPC_PSERIES |
| help |
| Enable access to hypervisor supplied counters in perf. Currently, |
| this enables code that uses the hcall GetPerfCounterInfo and 24x7 |
| interfaces to retrieve counters. GPCI exists on Power 6 and later |
| systems. 24x7 is available on Power 8 and later systems. |
| |
| If unsure, select Y. |
| |
| config IBMVIO |
| depends on PPC_PSERIES |
| bool |
| default y |
| |
| config IBMEBUS |
| depends on PPC_PSERIES && !CPU_LITTLE_ENDIAN |
| bool "Support for GX bus based adapters" |
| help |
| Bus device driver for GX bus based adapters. |
| |
| config PSERIES_PLPKS |
| depends on PPC_PSERIES |
| select NLS |
| bool |
| # PowerVM provides an isolated Platform Keystore (PKS) storage |
| # allocation for each LPAR with individually managed access |
| # controls to store sensitive information securely. It can be |
| # used to store asymmetric public keys or secrets as required |
| # by different usecases. |
| # |
| # This option is selected by in-kernel consumers that require |
| # access to the PKS. |
| |
| config PAPR_SCM |
| depends on PPC_PSERIES && MEMORY_HOTPLUG && LIBNVDIMM |
| tristate "Support for the PAPR Storage Class Memory interface" |
| help |
| Enable access to hypervisor provided storage class memory. |
| |
| config PPC_SVM |
| bool "Secure virtual machine (SVM) support for POWER" |
| depends on PPC_PSERIES |
| select SWIOTLB |
| select ARCH_HAS_MEM_ENCRYPT |
| select ARCH_HAS_FORCE_DMA_UNENCRYPTED |
| select ARCH_HAS_CC_PLATFORM |
| help |
| There are certain POWER platforms which support secure guests using |
| the Protected Execution Facility, with the help of an Ultravisor |
| executing below the hypervisor layer. This enables support for |
| those guests. |
| |
| If unsure, say "N". |