@@ -586,12 +586,28 @@ static int sienna_cichlid_get_smu_metrics_data(struct smu_context *smu,
586
586
uint16_t average_gfx_activity ;
587
587
int ret = 0 ;
588
588
589
- if ((smu -> adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
590
- (smu -> smc_fw_version >= 0x3A4900 ))
591
- use_metrics_v3 = true;
592
- else if ((smu -> adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
593
- (smu -> smc_fw_version >= 0x3A4300 ))
594
- use_metrics_v2 = true;
589
+ switch (smu -> adev -> ip_versions [MP1_HWIP ][0 ]) {
590
+ case IP_VERSION (11 , 0 , 7 ):
591
+ if (smu -> smc_fw_version >= 0x3A4900 )
592
+ use_metrics_v3 = true;
593
+ else if (smu -> smc_fw_version >= 0x3A4300 )
594
+ use_metrics_v2 = true;
595
+ break ;
596
+ case IP_VERSION (11 , 0 , 11 ):
597
+ if (smu -> smc_fw_version >= 0x412D00 )
598
+ use_metrics_v2 = true;
599
+ break ;
600
+ case IP_VERSION (11 , 0 , 12 ):
601
+ if (smu -> smc_fw_version >= 0x3B2300 )
602
+ use_metrics_v2 = true;
603
+ break ;
604
+ case IP_VERSION (11 , 0 , 13 ):
605
+ if (smu -> smc_fw_version >= 0x491100 )
606
+ use_metrics_v2 = true;
607
+ break ;
608
+ default :
609
+ break ;
610
+ }
595
611
596
612
ret = smu_cmn_get_metrics_table (smu ,
597
613
NULL ,
@@ -3701,13 +3717,28 @@ static ssize_t sienna_cichlid_get_gpu_metrics(struct smu_context *smu,
3701
3717
uint16_t average_gfx_activity ;
3702
3718
int ret = 0 ;
3703
3719
3704
- if ((adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
3705
- (smu -> smc_fw_version >= 0x3A4900 ))
3706
- use_metrics_v3 = true;
3707
- else if ((adev -> ip_versions [MP1_HWIP ][0 ] == IP_VERSION (11 , 0 , 7 )) &&
3708
- (smu -> smc_fw_version >= 0x3A4300 ))
3709
- use_metrics_v2 = true;
3710
-
3720
+ switch (smu -> adev -> ip_versions [MP1_HWIP ][0 ]) {
3721
+ case IP_VERSION (11 , 0 , 7 ):
3722
+ if (smu -> smc_fw_version >= 0x3A4900 )
3723
+ use_metrics_v3 = true;
3724
+ else if (smu -> smc_fw_version >= 0x3A4300 )
3725
+ use_metrics_v2 = true;
3726
+ break ;
3727
+ case IP_VERSION (11 , 0 , 11 ):
3728
+ if (smu -> smc_fw_version >= 0x412D00 )
3729
+ use_metrics_v2 = true;
3730
+ break ;
3731
+ case IP_VERSION (11 , 0 , 12 ):
3732
+ if (smu -> smc_fw_version >= 0x3B2300 )
3733
+ use_metrics_v2 = true;
3734
+ break ;
3735
+ case IP_VERSION (11 , 0 , 13 ):
3736
+ if (smu -> smc_fw_version >= 0x491100 )
3737
+ use_metrics_v2 = true;
3738
+ break ;
3739
+ default :
3740
+ break ;
3741
+ }
3711
3742
3712
3743
ret = smu_cmn_get_metrics_table (smu ,
3713
3744
& metrics_external ,
0 commit comments