@@ -697,12 +697,28 @@ static int sienna_cichlid_get_smu_metrics_data(struct smu_context *smu,
697
697
uint32_t apu_percent = 0 ;
698
698
uint32_t dgpu_percent = 0 ;
699
699
700
- if ((smu -> adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
701
- (smu -> smc_fw_version >= 0x3A4900 ))
702
- use_metrics_v3 = true;
703
- else if ((smu -> adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
704
- (smu -> smc_fw_version >= 0x3A4300 ))
705
- use_metrics_v2 = true;
700
+ switch (smu -> adev -> ip_versions [MP1_HWIP ][0 ]) {
701
+ case IP_VERSION (11 , 0 , 7 ):
702
+ if (smu -> smc_fw_version >= 0x3A4900 )
703
+ use_metrics_v3 = true;
704
+ else if (smu -> smc_fw_version >= 0x3A4300 )
705
+ use_metrics_v2 = true;
706
+ break ;
707
+ case IP_VERSION (11 , 0 , 11 ):
708
+ if (smu -> smc_fw_version >= 0x412D00 )
709
+ use_metrics_v2 = true;
710
+ break ;
711
+ case IP_VERSION (11 , 0 , 12 ):
712
+ if (smu -> smc_fw_version >= 0x3B2300 )
713
+ use_metrics_v2 = true;
714
+ break ;
715
+ case IP_VERSION (11 , 0 , 13 ):
716
+ if (smu -> smc_fw_version >= 0x491100 )
717
+ use_metrics_v2 = true;
718
+ break ;
719
+ default :
720
+ break ;
721
+ }
706
722
707
723
ret = smu_cmn_get_metrics_table (smu ,
708
724
NULL ,
@@ -3833,13 +3849,28 @@ static ssize_t sienna_cichlid_get_gpu_metrics(struct smu_context *smu,
3833
3849
uint16_t average_gfx_activity ;
3834
3850
int ret = 0 ;
3835
3851
3836
- if ((adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
3837
- (smu -> smc_fw_version >= 0x3A4900 ))
3838
- use_metrics_v3 = true;
3839
- else if ((adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
3840
- (smu -> smc_fw_version >= 0x3A4300 ))
3841
- use_metrics_v2 = true;
3842
-
3852
+ switch (smu -> adev -> ip_versions [MP1_HWIP ][0 ]) {
3853
+ case IP_VERSION (11 , 0 , 7 ):
3854
+ if (smu -> smc_fw_version >= 0x3A4900 )
3855
+ use_metrics_v3 = true;
3856
+ else if (smu -> smc_fw_version >= 0x3A4300 )
3857
+ use_metrics_v2 = true;
3858
+ break ;
3859
+ case IP_VERSION (11 , 0 , 11 ):
3860
+ if (smu -> smc_fw_version >= 0x412D00 )
3861
+ use_metrics_v2 = true;
3862
+ break ;
3863
+ case IP_VERSION (11 , 0 , 12 ):
3864
+ if (smu -> smc_fw_version >= 0x3B2300 )
3865
+ use_metrics_v2 = true;
3866
+ break ;
3867
+ case IP_VERSION (11 , 0 , 13 ):
3868
+ if (smu -> smc_fw_version >= 0x491100 )
3869
+ use_metrics_v2 = true;
3870
+ break ;
3871
+ default :
3872
+ break ;
3873
+ }
3843
3874
3844
3875
ret = smu_cmn_get_metrics_table (smu ,
3845
3876
& metrics_external ,
0 commit comments