powercap: Add Power Limit4 support
authorSumeet Pawnikar <sumeet.r.pawnikar@intel.com>
Thu, 16 Jul 2020 17:44:55 +0000 (23:14 +0530)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 27 Jul 2020 12:17:36 +0000 (14:17 +0200)
commit8365a898fe53f85529566501d3b3d88640b3975e
tree7984171ae5c65ba430b85596592bbe39b4b4a1ea
parent0735069c5e49d3f4f5f92669fcc3882500c118e5
powercap: Add Power Limit4 support

Modern Intel Mobile platforms support power limit4 (PL4), which is
the SoC package level maximum power limit (in Watts). It can be used
to preemptively limits potential SoC power to prevent power spikes
from tripping the power adapter and battery over-current protection.
This patch enables this feature by exposing package level peak power
capping control to userspace via RAPL sysfs interface. With this,
application like DTPF can modify PL4 power limit, the similar way
of other package power limit (PL1).
As this feature is not tested on previous generations, here it is
enabled only for the platform that has been verified to work,
for safety concerns.

Signed-off-by: Sumeet Pawnikar <sumeet.r.pawnikar@intel.com>
Co-developed-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Tested-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Documentation/power/powercap/powercap.rst
drivers/powercap/intel_rapl_common.c
drivers/powercap/intel_rapl_msr.c
include/linux/intel_rapl.h