Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powercap/intel_rapl: Support multi-die/package

RAPL "package" domains are actually implemented in hardware per-die.
Thus, the new multi-die/package systems have mulitple domains
within each physical package.

Update the intel_rapl driver to be "die aware" -- exporting multiple
domains within a single package, when present. No change on single
die/package systems.

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Ingo Molnar <mingo@kernel.org>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: linux-pm@vger.kernel.org
Link: https://lkml.kernel.org/r/9fcb4719aeb7efccf3bc75ed8dd559e46121649f.1557769318.git.len.brown@intel.com

authored by

Zhang Rui and committed by
Thomas Gleixner
32fb480e aadf7b38

+2 -2
+2 -2
drivers/powercap/intel_rapl.c
··· 266 266 /* caller to ensure CPU hotplug lock is held */ 267 267 static struct rapl_package *rapl_find_package_domain(int cpu) 268 268 { 269 - int id = topology_physical_package_id(cpu); 269 + int id = topology_logical_die_id(cpu); 270 270 struct rapl_package *rp; 271 271 272 272 list_for_each_entry(rp, &rapl_packages, plist) { ··· 1459 1459 /* called from CPU hotplug notifier, hotplug lock held */ 1460 1460 static struct rapl_package *rapl_add_package(int cpu) 1461 1461 { 1462 - int id = topology_physical_package_id(cpu); 1462 + int id = topology_logical_die_id(cpu); 1463 1463 struct rapl_package *rp; 1464 1464 int ret; 1465 1465