1# SPDX-License-Identifier: GPL-2.0 2config PPC_PSERIES 3 depends on PPC64 && PPC_BOOK3S 4 bool "IBM pSeries & new (POWER5-based) iSeries" 5 select HAVE_PCSPKR_PLATFORM 6 select MPIC 7 select OF_DYNAMIC 8 select FORCE_PCI 9 select PCI_MSI 10 select PPC_XICS 11 select PPC_XIVE_SPAPR 12 select PPC_ICP_NATIVE 13 select PPC_ICP_HV 14 select PPC_ICS_RTAS 15 select PPC_I8259 16 select PPC_RTAS 17 select PPC_RTAS_DAEMON 18 select RTAS_ERROR_LOGGING 19 select PPC_UDBG_16550 20 select PPC_DOORBELL 21 select HOTPLUG_CPU 22 select FORCE_SMP 23 select SWIOTLB 24 default y 25 26config PARAVIRT_SPINLOCKS 27 bool 28 29config PPC_SPLPAR 30 bool "Support for shared-processor logical partitions" 31 depends on PPC_PSERIES 32 select PARAVIRT_SPINLOCKS if PPC_QUEUED_SPINLOCKS 33 default y 34 help 35 Enabling this option will make the kernel run more efficiently 36 on logically-partitioned pSeries systems which use shared 37 processors, that is, which share physical processors between 38 two or more partitions. 39 40 Say Y if you are unsure. 41 42config DTL 43 bool "Dispatch Trace Log" 44 depends on PPC_SPLPAR && DEBUG_FS 45 help 46 SPLPAR machines can log hypervisor preempt & dispatch events to a 47 kernel buffer. Saying Y here will enable logging these events, 48 which are accessible through a debugfs file. 49 50 Say N if you are unsure. 51 52config PSERIES_ENERGY 53 tristate "pSeries energy management capabilities driver" 54 depends on PPC_PSERIES 55 default y 56 help 57 Provides interface to platform energy management capabilities 58 on supported PSERIES platforms. 59 Provides: /sys/devices/system/cpu/pseries_(de)activation_hint_list 60 and /sys/devices/system/cpu/cpuN/pseries_(de)activation_hint 61 62config IO_EVENT_IRQ 63 bool "IO Event Interrupt support" 64 depends on PPC_PSERIES 65 default y 66 help 67 Select this option, if you want to enable support for IO Event 68 interrupts. IO event interrupt is a mechanism provided by RTAS 69 to return information about hardware error and non-error events 70 which may need OS attention. RTAS returns events for multiple 71 event types and scopes. Device drivers can register their handlers 72 to receive events. 73 74 This option will only enable the IO event platform code. You 75 will still need to enable or compile the actual drivers 76 that use this infrastructure to handle IO event interrupts. 77 78 Say Y if you are unsure. 79 80config LPARCFG 81 bool "LPAR Configuration Data" 82 depends on PPC_PSERIES 83 help 84 Provide system capacity information via human readable 85 <key word>=<value> pairs through a /proc/ppc64/lparcfg interface. 86 87config PPC_PSERIES_DEBUG 88 depends on PPC_PSERIES && PPC_EARLY_DEBUG 89 bool "Enable extra debug logging in platforms/pseries" 90 default y 91 help 92 Say Y here if you want the pseries core to produce a bunch of 93 debug messages to the system log. Select this if you are having a 94 problem with the pseries core and want to see more of what is 95 going on. This does not enable debugging in lpar.c, which must 96 be manually done due to its verbosity. 97 98config PPC_SMLPAR 99 bool "Support for shared-memory logical partitions" 100 depends on PPC_PSERIES 101 select LPARCFG 102 help 103 Select this option to enable shared memory partition support. 104 With this option a system running in an LPAR can be given more 105 memory than physically available and will allow firmware to 106 balance memory across many LPARs. 107 108config CMM 109 tristate "Collaborative memory management" 110 depends on PPC_SMLPAR 111 select MEMORY_BALLOON 112 default y 113 help 114 Select this option, if you want to enable the kernel interface 115 to reduce the memory size of the system. This is accomplished 116 by allocating pages of memory and put them "on hold". This only 117 makes sense for a system running in an LPAR where the unused pages 118 will be reused for other LPARs. The interface allows firmware to 119 balance memory across many LPARs. 120 121config HV_PERF_CTRS 122 bool "Hypervisor supplied PMU events (24x7 & GPCI)" 123 default y 124 depends on PERF_EVENTS && PPC_PSERIES 125 help 126 Enable access to hypervisor supplied counters in perf. Currently, 127 this enables code that uses the hcall GetPerfCounterInfo and 24x7 128 interfaces to retrieve counters. GPCI exists on Power 6 and later 129 systems. 24x7 is available on Power 8 and later systems. 130 131 If unsure, select Y. 132 133config IBMVIO 134 depends on PPC_PSERIES 135 bool 136 default y 137 138config IBMEBUS 139 depends on PPC_PSERIES && !CPU_LITTLE_ENDIAN 140 bool "Support for GX bus based adapters" 141 help 142 Bus device driver for GX bus based adapters. 143 144config PSERIES_PLPKS 145 depends on PPC_PSERIES 146 bool "Support for the Platform Key Storage" 147 help 148 PowerVM provides an isolated Platform Keystore(PKS) storage 149 allocation for each LPAR with individually managed access 150 controls to store sensitive information securely. It can be 151 used to store asymmetric public keys or secrets as required 152 by different usecases. Select this config to enable 153 operating system interface to hypervisor to access this space. 154 155 If unsure, select N. 156 157config PAPR_SCM 158 depends on PPC_PSERIES && MEMORY_HOTPLUG && LIBNVDIMM 159 tristate "Support for the PAPR Storage Class Memory interface" 160 help 161 Enable access to hypervisor provided storage class memory. 162 163config PPC_SVM 164 bool "Secure virtual machine (SVM) support for POWER" 165 depends on PPC_PSERIES 166 select SWIOTLB 167 select ARCH_HAS_MEM_ENCRYPT 168 select ARCH_HAS_FORCE_DMA_UNENCRYPTED 169 select ARCH_HAS_CC_PLATFORM 170 help 171 There are certain POWER platforms which support secure guests using 172 the Protected Execution Facility, with the help of an Ultravisor 173 executing below the hypervisor layer. This enables support for 174 those guests. 175 176 If unsure, say "N". 177