diff options
author | Len Brown <len.brown@intel.com> | 2015-12-03 01:35:36 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2016-02-17 01:43:05 -0500 |
commit | f0057310b40efe9f797ff337e9464e6a6fb9d782 (patch) | |
tree | d6a8ee3ea486f39745f2f8f38acc3c40d03b670b /tools | |
parent | 7f5c258e1ce1e0909d3195694ac79f143051e513 (diff) |
tools/power turbostat: Decode MSR_MISC_PWR_MGMT
This MSR is helpful to show if P-state HW coordination
is enabled or disabled.
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/power/x86/turbostat/turbostat.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tools/power/x86/turbostat/turbostat.c b/tools/power/x86/turbostat/turbostat.c index af3b955aad1d..c600340dfc4e 100644 --- a/tools/power/x86/turbostat/turbostat.c +++ b/tools/power/x86/turbostat/turbostat.c | |||
@@ -2783,6 +2783,26 @@ void decode_misc_enable_msr(void) | |||
2783 | msr & (1 << 18) ? "MONITOR" : ""); | 2783 | msr & (1 << 18) ? "MONITOR" : ""); |
2784 | } | 2784 | } |
2785 | 2785 | ||
2786 | /* | ||
2787 | * Decode MSR_MISC_PWR_MGMT | ||
2788 | * | ||
2789 | * Decode the bits according to the Nehalem documentation | ||
2790 | * bit[0] seems to continue to have same meaning going forward | ||
2791 | * bit[1] less so... | ||
2792 | */ | ||
2793 | void decode_misc_pwr_mgmt_msr(void) | ||
2794 | { | ||
2795 | unsigned long long msr; | ||
2796 | |||
2797 | if (!do_nhm_platform_info) | ||
2798 | return; | ||
2799 | |||
2800 | if (!get_msr(base_cpu, MSR_MISC_PWR_MGMT, &msr)) | ||
2801 | fprintf(stderr, "cpu%d: MSR_MISC_PWR_MGMT: 0x%08llx (%sable-EIST_Coordination %sable-EPB)\n", | ||
2802 | base_cpu, msr, | ||
2803 | msr & (1 << 0) ? "DIS" : "EN", | ||
2804 | msr & (1 << 1) ? "EN" : "DIS"); | ||
2805 | } | ||
2786 | 2806 | ||
2787 | void process_cpuid() | 2807 | void process_cpuid() |
2788 | { | 2808 | { |
@@ -2936,6 +2956,9 @@ void process_cpuid() | |||
2936 | do_slm_cstates = is_slm(family, model); | 2956 | do_slm_cstates = is_slm(family, model); |
2937 | do_knl_cstates = is_knl(family, model); | 2957 | do_knl_cstates = is_knl(family, model); |
2938 | 2958 | ||
2959 | if (debug) | ||
2960 | decode_misc_pwr_mgmt_msr(); | ||
2961 | |||
2939 | rapl_probe(family, model); | 2962 | rapl_probe(family, model); |
2940 | perf_limit_reasons_probe(family, model); | 2963 | perf_limit_reasons_probe(family, model); |
2941 | 2964 | ||