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