summaryrefslogtreecommitdiff
path: root/drivers/powercap/intel_rapl.c
diff options
context:
space:
mode:
authorJacob Pan <jacob.jun.pan@linux.intel.com>2014-02-10 06:11:51 -0800
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-02-14 00:49:33 +0100
commit7b8747725d0a6842a82ea60fe95b9d4d7ae008fd (patch)
treee5d245e9a39d0be9fc2b5d833f3c525c13e94460 /drivers/powercap/intel_rapl.c
parentb28a960c42fcd9cfc987441fa6d1c1a471f0f9ed (diff)
powercap / intel_rapl: relax sanity check on energy counters
Some RAPL domains may not be active at the time driver is being loaded. Checking energy counter increment may be too strict and time consuming. So relax the sanity check on energy counters of these domains. Otherwise, they may be ignored and become unavailable to the powercap framework. Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/powercap/intel_rapl.c')
-rw-r--r--drivers/powercap/intel_rapl.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/powercap/intel_rapl.c b/drivers/powercap/intel_rapl.c
index 3c6768378a94..0e37fe106eb2 100644
--- a/drivers/powercap/intel_rapl.c
+++ b/drivers/powercap/intel_rapl.c
@@ -1147,6 +1147,11 @@ static int rapl_check_domain(int cpu, int domain)
if (rdmsrl_safe_on_cpu(cpu, msr, &val1))
return -ENODEV;
+ /* PP1/uncore/graphics domain may not be active at the time of
+ * driver loading. So skip further checks.
+ */
+ if (domain == RAPL_DOMAIN_PP1)
+ return 0;
/* energy counters roll slowly on some domains */
while (++retry < 10) {
usleep_range(10000, 15000);