|
69 | 69 | #define SMU_14_0_0_UMD_PSTATE_SOCCLK 678 |
70 | 70 | #define SMU_14_0_0_UMD_PSTATE_FCLK 1800 |
71 | 71 |
|
| 72 | +#define SMU_14_0_4_UMD_PSTATE_GFXCLK 938 |
| 73 | +#define SMU_14_0_4_UMD_PSTATE_SOCCLK 938 |
| 74 | + |
72 | 75 | #define FEATURE_MASK(feature) (1ULL << feature) |
73 | 76 | #define SMC_DPM_FEATURE ( \ |
74 | 77 | FEATURE_MASK(FEATURE_CCLK_DPM_BIT) | \ |
@@ -1296,19 +1299,28 @@ static int smu_v14_0_common_get_dpm_profile_freq(struct smu_context *smu, |
1296 | 1299 | switch (clk_type) { |
1297 | 1300 | case SMU_GFXCLK: |
1298 | 1301 | case SMU_SCLK: |
1299 | | - clk_limit = SMU_14_0_0_UMD_PSTATE_GFXCLK; |
| 1302 | + if (amdgpu_ip_version(smu->adev, MP1_HWIP, 0) == IP_VERSION(14, 0, 4)) |
| 1303 | + clk_limit = SMU_14_0_4_UMD_PSTATE_GFXCLK; |
| 1304 | + else |
| 1305 | + clk_limit = SMU_14_0_0_UMD_PSTATE_GFXCLK; |
1300 | 1306 | if (level == AMD_DPM_FORCED_LEVEL_PROFILE_PEAK) |
1301 | 1307 | smu_v14_0_common_get_dpm_ultimate_freq(smu, SMU_SCLK, NULL, &clk_limit); |
1302 | 1308 | else if (level == AMD_DPM_FORCED_LEVEL_PROFILE_MIN_SCLK) |
1303 | 1309 | smu_v14_0_common_get_dpm_ultimate_freq(smu, SMU_SCLK, &clk_limit, NULL); |
1304 | 1310 | break; |
1305 | 1311 | case SMU_SOCCLK: |
1306 | | - clk_limit = SMU_14_0_0_UMD_PSTATE_SOCCLK; |
| 1312 | + if (amdgpu_ip_version(smu->adev, MP1_HWIP, 0) == IP_VERSION(14, 0, 4)) |
| 1313 | + clk_limit = SMU_14_0_4_UMD_PSTATE_SOCCLK; |
| 1314 | + else |
| 1315 | + clk_limit = SMU_14_0_0_UMD_PSTATE_SOCCLK; |
1307 | 1316 | if (level == AMD_DPM_FORCED_LEVEL_PROFILE_PEAK) |
1308 | 1317 | smu_v14_0_common_get_dpm_ultimate_freq(smu, SMU_SOCCLK, NULL, &clk_limit); |
1309 | 1318 | break; |
1310 | 1319 | case SMU_FCLK: |
1311 | | - clk_limit = SMU_14_0_0_UMD_PSTATE_FCLK; |
| 1320 | + if (amdgpu_ip_version(smu->adev, MP1_HWIP, 0) == IP_VERSION(14, 0, 4)) |
| 1321 | + smu_v14_0_common_get_dpm_ultimate_freq(smu, SMU_FCLK, NULL, &clk_limit); |
| 1322 | + else |
| 1323 | + clk_limit = SMU_14_0_0_UMD_PSTATE_FCLK; |
1312 | 1324 | if (level == AMD_DPM_FORCED_LEVEL_PROFILE_PEAK) |
1313 | 1325 | smu_v14_0_common_get_dpm_ultimate_freq(smu, SMU_FCLK, NULL, &clk_limit); |
1314 | 1326 | else if (level == AMD_DPM_FORCED_LEVEL_PROFILE_MIN_MCLK) |
|
0 commit comments