[PATCH] drm/amdgpu/vcn: fix vcn ring test failure in igt reload test

James Zhu jamesz at amd.com
Tue Mar 15 12:01:32 UTC 2022


This patch is Reviewed-by: James Zhu <James.Zhu at amd.com>

On 2022-03-14 10:33 p.m., Tianci Yin wrote:
> From: "Tianci.Yin" <tianci.yin at amd.com>
>
> [why]
> On Renoir, vcn ring test failed on the second time insmod in the reload
> test. After invetigation, it proves that vcn only can disable dpg under
> dpg unpause mode (dpg unpause mode is default for dec only, dpg pause
> mode is for dec/enc).
>
> [how]
> unpause dpg in dpg stopping procedure.
>
> Change-Id: If6ec3af694e1d6b63ebce386a563f03ca6d291c1
> Signed-off-by: Tianci.Yin <tianci.yin at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c b/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
> index 319ac8ea434b..6e0972cd1f2f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
> @@ -1098,8 +1098,10 @@ static int vcn_v2_0_start(struct amdgpu_device *adev)
>   
>   static int vcn_v2_0_stop_dpg_mode(struct amdgpu_device *adev)
>   {
> +	struct dpg_pause_state state = {.fw_based = VCN_DPG_STATE__UNPAUSE};
>   	uint32_t tmp;
>   
> +	vcn_v2_0_pause_dpg_mode(adev, 0, &state);
>   	/* Wait for power status to be 1 */
>   	SOC15_WAIT_ON_RREG(UVD, 0, mmUVD_POWER_STATUS, 1,
>   		UVD_POWER_STATUS__UVD_POWER_STATUS_MASK);


More information about the amd-gfx mailing list