mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-16 22:36:11 +07:00
5742bd8595
Create sysfs interface to export data from H_BEST_ENERGY hcall that can be used by administrative tools on supported pseries platforms for energy management optimizations. sys/device/system/cpu/pseries_(de)activate_hint_list and sys/device/system/cpu/cpuN/pseries_(de)activate_hint will provide hints for activation and deactivation of cpus respectively. These hints are abstract number given by the hypervisor based on the extended knowledge the hypervisor has regarding the system topology and resource mappings. The activate and the deactivate sysfs entry is for the two distinct operations that we could do for energy savings. When we have more capacity than required, we could deactivate few core to save energy. The choice of the core to deactivate will be based on /sys/devices/system/cpu/deactivate_hint_list. The comma separated list of cpus (cores) will be the preferred choice. If we have to activate some of the deactivated cores, then /sys/devices/system/cpu/activate_hint_list will be used. The per-cpu file /sys/device/system/cpu/cpuN/pseries_(de)activate_hint further provide more fine grain information by exporting the value of the hint itself. Added new driver module arch/powerpc/platforms/pseries/pseries_energy.c under new config option CONFIG_PSERIES_ENERGY Signed-off-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
100 lines
3.0 KiB
Plaintext
100 lines
3.0 KiB
Plaintext
config PPC_PSERIES
|
|
depends on PPC64 && PPC_BOOK3S
|
|
bool "IBM pSeries & new (POWER5-based) iSeries"
|
|
select MPIC
|
|
select PCI_MSI
|
|
select XICS
|
|
select PPC_I8259
|
|
select PPC_RTAS
|
|
select PPC_RTAS_DAEMON
|
|
select RTAS_ERROR_LOGGING
|
|
select PPC_UDBG_16550
|
|
select PPC_NATIVE
|
|
select PPC_PCI_CHOICE if EMBEDDED
|
|
default y
|
|
|
|
config PPC_SPLPAR
|
|
depends on PPC_PSERIES
|
|
bool "Support for shared-processor logical partitions"
|
|
default n
|
|
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.
|
|
|
|
config EEH
|
|
bool "PCI Extended Error Handling (EEH)" if EMBEDDED
|
|
depends on PPC_PSERIES && PCI
|
|
default y if !EMBEDDED
|
|
|
|
config PSERIES_MSI
|
|
bool
|
|
depends on PCI_MSI && EEH
|
|
default y
|
|
|
|
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 SCANLOG
|
|
tristate "Scanlog dump interface"
|
|
depends on RTAS_PROC && PPC_PSERIES
|
|
|
|
config LPARCFG
|
|
bool "LPAR Configuration Data"
|
|
depends on PPC_PSERIES || PPC_ISERIES
|
|
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"
|
|
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.
|
|
default y
|
|
|
|
config PPC_SMLPAR
|
|
bool "Support for shared-memory logical partitions"
|
|
depends on PPC_PSERIES
|
|
select LPARCFG
|
|
default n
|
|
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
|
|
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 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.
|