[why] Previously I found that powering up SDMA after mode2 reset can cause ring-sdma0 test failed. Perhaps the mode2 reset does not reset the SDMA PG state, so SDMA is already powered up so there is no need to ask the SMU to power it up again and doing so causes some other problem. So I skipped function 'amdgpu_dpm_set_powergating_by_smu(adev, AMD_IP_BLOCK_TYPE_SDMA, false)' with '!adev->in_gpu_reset'. But now, for #34 sdma firmware, dmesg log show "ring-sdma0 test failed " after the mode2 reset, and scan data show SDMA does not have power. Then I re-enable function "amdgpu_dpm_set_powergating_by_smu(adev, AMD_IP_BLOCK_TYPE_SDMA, false)" during mode2 reset, The result is issue disappear. Besides, I did more experiments base on previous sdma firmware for this patch. Situation Normal. [how] Remove "!adev->in_gpu_reset" Signed-off-by: chen gong <curry.gong@xxxxxxx> --- drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c index c0ca9a82..0ecab41 100644 --- a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c +++ b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c @@ -1914,7 +1914,7 @@ static int sdma_v4_0_hw_init(void *handle) if ((adev->asic_type == CHIP_RAVEN && adev->powerplay.pp_funcs && adev->powerplay.pp_funcs->set_powergating_by_smu) || - (adev->asic_type == CHIP_RENOIR && !adev->in_gpu_reset)) + adev->asic_type == CHIP_RENOIR) amdgpu_dpm_set_powergating_by_smu(adev, AMD_IP_BLOCK_TYPE_SDMA, false); if (!amdgpu_sriov_vf(adev)) -- 2.7.4 _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx