Merge tag 'iwlwifi-for-kalle-2019-03-22' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / tools / perf / util / pmu.c
index 51d437f..6199a31 100644 (file)
@@ -752,6 +752,19 @@ perf_pmu__get_default_config(struct perf_pmu *pmu __maybe_unused)
        return NULL;
 }
 
+static int pmu_max_precise(const char *name)
+{
+       char path[PATH_MAX];
+       int max_precise = -1;
+
+       scnprintf(path, PATH_MAX,
+                "bus/event_source/devices/%s/caps/max_precise",
+                name);
+
+       sysfs__read_int(path, &max_precise);
+       return max_precise;
+}
+
 static struct perf_pmu *pmu_lookup(const char *name)
 {
        struct perf_pmu *pmu;
@@ -784,6 +797,7 @@ static struct perf_pmu *pmu_lookup(const char *name)
        pmu->name = strdup(name);
        pmu->type = type;
        pmu->is_uncore = pmu_is_uncore(name);
+       pmu->max_precise = pmu_max_precise(name);
        pmu_add_cpu_aliases(&aliases, pmu);
 
        INIT_LIST_HEAD(&pmu->format);