- 20 Oct, 2023 5 commits
-
-
Zhang Rui authored
Thread_id doesn't tell if a CPU is allowed or not. Detect allowed CPUs only and use the first detected thread/core as the primary thread/core of a core/package. Signed-off-by:
Zhang Rui <rui.zhang@intel.com>
-
Zhang Rui authored
When detecting the primary thread/core in a core/package, current code doesn't handle the allowed CPUs. Abstract several functions for further fix of this issue. No functional change. Signed-off-by:
Zhang Rui <rui.zhang@intel.com>
-
Zhang Rui authored
Set turbostat CPU affinity to make sure turbostat is running on one of the allowed CPUs. Set base_cpu to the first allowed CPU so that some platform information is dumped using one of the allowed CPUs. Signed-off-by:
Zhang Rui <rui.zhang@intel.com>
-
Zhang Rui authored
for_all_cpus/for_all_cpus_2 are used for accessing the per CPU counters, and they should follow the cpu_allowed_set instead of cpu_present_set. Signed-off-by:
Zhang Rui <rui.zhang@intel.com>
-
Zhang Rui authored
Turbostat supports "-c" parameter which limits output to system summary plus the specified cpu-set. But some code still uses cpu_present_set to read and dump the counters. Introduce cpu_allowed_set for code that should obey the specified cpu-set. No functional change. Signed-off-by:
Zhang Rui <rui.zhang@intel.com>
-
- 27 Sep, 2023 35 commits
-
-
Zhang Rui authored
Compared with other platforms that share cnl_features, ADL/RPL don't have PC7/PC9. Clone a new platform feature set from cnl_features for ADL/RPL, with PC7/PC9 removed. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
All recent Intel client platforms have MSR_CORE_C1_RES. Enable the support on these platforms, including CNL/ICL/LKF/RKL/TGL/ADL/RPL/MTL. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Feature probe has nothing to do with CPUID, thus it should not be in process_cpuids(). Introduce probe_pm_features() and move all feature probing functions into it. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Relocate more feature probing code outside of process_cpuids() into the corresponding probing functions. This improves the readability of code and the turbostat output. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Reorder some functions to solve code depdency introduced by next patch. No functional change. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Introduce probe_thermal(), and move all thermal probing related code into it. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Introduce probe_lpi(), and move all lpi probing related code into it. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Introduce probe_graphics(), and move all graphics probing related code into it. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Rename rapl_probe() to probe_rapl() to be consistent with other probing function names. Probe rapl after probing uncore frequency. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Rename intel_uncore_frequency_probe() to probe_intel_uncore_frequency() to be consistent with other probing function names. Probe uncore frequency right after probing cstates. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Introduce probe_pstates() and move all pstate probing related code into it. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Move all cstate probing related code into probe_cstates(). Note that dump_platform_info() actually dumps both MSR_PLATFORM_INFO and MSR_IA32_POWER_CTL. MSR_PLATFORM_INFO is for pstate and MSR_IA32_POWER_CTL is for cstate. So split dump_platform_info() and dump MSR_IA32_POWER_CTL in probe_cstates(). Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
AMD/Hygon platforms that don't have RAPL use 'amd_features' to describe the platform features. Unknown Intel platforms use 'default_features' to describe the platform features. As none of the platform feature is set for 'amd_features' or 'default_features', there is no need to maintain both of them. Remove 'amd_features' structure and improve the logic in probe_platform_features(). Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Now CPU model checks have been cleaned up, no code depends on the duplicated CPU model value. Delete intel_model_duplicates(). Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract cstate prewake bit support. Delete is_icx()/is_spr() CPU model checks. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract aperf/mperf multiplier support. Delete is_knl() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract the support for MSR_PKG_WEIGHTED_CORE_C0_RES, MSR_PKG_ANY_CORE_C0_RES, MSR_PKG_ANY_GFXE_C0_RES and MSR_PKG_BOTH_CORE_GFXE_C0_RES. Delete has_skl_msrs() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract the support for MSR_KNL_CORE_C6_RESIDENCY. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract the support for MSR_ATOM_PKG_C6_RESIDENCY. Delete is_slm() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract the support for MSR_CC6/MC6_DEMOTION_POLICY_CONFIG. Delete has_slv_msrs() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract MSR_MODULE_C6_RES_MS support. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract the support for MSR_CORE_C1_RES. Delete is_dnv() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Abstract the support for MSR_PKGC3/PKGC6/PKGC7/PKGC8/PKGC9/PKGC10_IRTL. Delete has_snb_msrs() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
It is pointless to dump the IRTL register for a package cstate that is not supported by the platform. Print IRTL only for states that are available in platform->supported_cstates. Delete has_c8910_msrs() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Disable CC3 for is_slm()/is_knl()/is_cnl()/is_ehl() models. Delete is_cnl()/is_ehl() CPU model checks. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Enable PC8/PC9/PC10 for has_c8910_msrs() models. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Disable CC7/PC7 for is_bdx() models. Delete is_bdx() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Disable CC3/CC7/PC3/PC7 for is_skx()/is_icx()/is_spr() models. Delete is_skx() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Enable CC1 and disable CC3/CC7/PC3/PC7 for is_dnv() models. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Disable CC3/CC7/PC2/PC3/PC6/PC7 for is_jvl() models. Delete is_jvl() CPU model check. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Disable PC2/PC3/PC7 and enable PC6 for has_slv_msrs() models. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Enable PC7 for has_snb_msrs() models. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Enable PC3/PC6 for platforms with .cst_limit set because package cstates are guarded by pkg_cstate_limit. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Enable CC7 and PC2 for has_snb_msrs() models. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-
Zhang Rui authored
Enable CC1/CC3/CC6 for platforms with .has_nhm_msrs set. Signed-off-by:
Zhang Rui <rui.zhang@intel.com> Reviewed-by:
Len Brown <len.brown@intel.com>
-