@@ -839,6 +839,23 @@ static const struct platform_features spr_features = {
839
839
.rapl_msrs = RAPL_PKG_ALL | RAPL_DRAM_ALL | RAPL_PSYS ,
840
840
};
841
841
842
+ static const struct platform_features dmr_features = {
843
+ .has_msr_misc_feature_control = spr_features .has_msr_misc_feature_control ,
844
+ .has_msr_misc_pwr_mgmt = spr_features .has_msr_misc_pwr_mgmt ,
845
+ .has_nhm_msrs = spr_features .has_nhm_msrs ,
846
+ .has_config_tdp = spr_features .has_config_tdp ,
847
+ .bclk_freq = spr_features .bclk_freq ,
848
+ .supported_cstates = spr_features .supported_cstates ,
849
+ .cst_limit = spr_features .cst_limit ,
850
+ .has_msr_core_c1_res = spr_features .has_msr_core_c1_res ,
851
+ .has_msr_module_c6_res_ms = 1 , /* DMR has Dual Core Module and MC6 MSR */
852
+ .has_irtl_msrs = spr_features .has_irtl_msrs ,
853
+ .has_cst_prewake_bit = spr_features .has_cst_prewake_bit ,
854
+ .has_fixed_rapl_psys_unit = spr_features .has_fixed_rapl_psys_unit ,
855
+ .trl_msrs = spr_features .trl_msrs ,
856
+ .rapl_msrs = 0 , /* DMR does not have RAPL MSRs */
857
+ };
858
+
842
859
static const struct platform_features srf_features = {
843
860
.has_msr_misc_feature_control = 1 ,
844
861
.has_msr_misc_pwr_mgmt = 1 ,
@@ -1028,6 +1045,7 @@ static const struct platform_data turbostat_pdata[] = {
1028
1045
{ INTEL_EMERALDRAPIDS_X , & spr_features },
1029
1046
{ INTEL_GRANITERAPIDS_X , & spr_features },
1030
1047
{ INTEL_GRANITERAPIDS_D , & spr_features },
1048
+ { INTEL_PANTHERCOVE_X , & dmr_features },
1031
1049
{ INTEL_LAKEFIELD , & cnl_features },
1032
1050
{ INTEL_ALDERLAKE , & adl_features },
1033
1051
{ INTEL_ALDERLAKE_L , & adl_features },
0 commit comments