linux/drivers/powercap
Zhang Rui bf44b9011d powercap: intel_rapl: Make cpu optional for rapl_package
MSR RAPL Interface always removes a rapl_package when all the CPUs in
that rapl_package are offlined. This is because it relies on an online
CPU to access the MSR.

But for RAPL Interface using MMIO registers, when all the cpus within
the rapl_package are offlined,
1. the register can still be accessed
2. monitoring and setting the Power Pimits for the rapl_package is still
   meaningful because of uncore power.

This means that, a valid rapl_package doesn't rely on one or more cpus
being onlined.

For this sense, make cpu optional for rapl_package. A rapl_package can
be registered either using a CPU id to represent the physical
package/die, or using the physical package id directly.

Note that, the thermal throttling interrupt is not disabled via
MSR_IA32_PACKAGE_THERM_INTERRUPT for such rapl_package at the moment.
If it is still needed in the future, this can be achieved by selecting
an onlined CPU using the physical package id.

Note that, processor_thermal_rapl, the current MMIO RAPL Interface
driver, can also be converted to register using a package id instead.
But this is not done right now because processor_thermal_rapl driver
works on single-package systems only, and offlining the only package
will not happen. So keep the previous logic.

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Tested-by: Wang Wendy <wendy.wang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2023-05-24 18:46:20 +02:00
..
arm_scmi_powercap.c powercap: arm_scmi: Add SCMI Powercap based driver 2022-10-25 18:53:15 +02:00
dtpm_cpu.c Power management updates for 5.20-rc1 2022-08-02 11:17:00 -07:00
dtpm_devfreq.c powercap/drivers/dtpm: Add dtpm devfreq with energy model support 2022-02-04 17:38:09 +01:00
dtpm_subsys.h powercap/drivers/dtpm: Add dtpm devfreq with energy model support 2022-02-04 17:38:09 +01:00
dtpm.c powercap: DTPM: Fix spelling mistake "initialze" -> "initialize" 2022-03-01 18:59:35 +01:00
idle_inject.c Thermal control updates for 6.3-rc1 2023-02-21 12:32:05 -08:00
intel_rapl_common.c powercap: intel_rapl: Make cpu optional for rapl_package 2023-05-24 18:46:20 +02:00
intel_rapl_msr.c powercap: intel_rapl: Make cpu optional for rapl_package 2023-05-24 18:46:20 +02:00
Kconfig powercap: arm_scmi: Add SCMI Powercap based driver 2022-10-25 18:53:15 +02:00
Makefile powercap: arm_scmi: Add SCMI Powercap based driver 2022-10-25 18:53:15 +02:00
powercap_sys.c powercap: remove MODULE_LICENSE in non-modules 2023-02-28 21:32:05 +01:00