mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +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>
29 lines
936 B
Makefile
29 lines
936 B
Makefile
ccflags-$(CONFIG_PPC64) := -mno-minimal-toc
|
|
ccflags-$(CONFIG_PPC_PSERIES_DEBUG) += -DDEBUG
|
|
|
|
obj-y := lpar.o hvCall.o nvram.o reconfig.o \
|
|
setup.o iommu.o event_sources.o ras.o \
|
|
firmware.o power.o dlpar.o mobility.o
|
|
obj-$(CONFIG_SMP) += smp.o
|
|
obj-$(CONFIG_XICS) += xics.o
|
|
obj-$(CONFIG_SCANLOG) += scanlog.o
|
|
obj-$(CONFIG_EEH) += eeh.o eeh_cache.o eeh_driver.o eeh_event.o eeh_sysfs.o
|
|
obj-$(CONFIG_KEXEC) += kexec.o
|
|
obj-$(CONFIG_PCI) += pci.o pci_dlpar.o
|
|
obj-$(CONFIG_PSERIES_MSI) += msi.o
|
|
obj-$(CONFIG_PSERIES_ENERGY) += pseries_energy.o
|
|
|
|
obj-$(CONFIG_HOTPLUG_CPU) += hotplug-cpu.o
|
|
obj-$(CONFIG_MEMORY_HOTPLUG) += hotplug-memory.o
|
|
|
|
obj-$(CONFIG_HVC_CONSOLE) += hvconsole.o
|
|
obj-$(CONFIG_HVCS) += hvcserver.o
|
|
obj-$(CONFIG_HCALL_STATS) += hvCall_inst.o
|
|
obj-$(CONFIG_PHYP_DUMP) += phyp_dump.o
|
|
obj-$(CONFIG_CMM) += cmm.o
|
|
obj-$(CONFIG_DTL) += dtl.o
|
|
|
|
ifeq ($(CONFIG_PPC_PSERIES),y)
|
|
obj-$(CONFIG_SUSPEND) += suspend.o
|
|
endif
|