[PATCH] drm/amdgpu/vcn: Need to unpause dpg before stop dpg

Leo Liu leo.liu at amd.com
Thu Jun 22 12:21:17 UTC 2023


Reviewed-by: Leo Liu <leo.liu at amd.com>

On 2023-06-20 21:29, Emily Deng wrote:
> Need to unpause dpg first, or it will hit follow error during stop dpg:
> "[drm] Register(1) [regUVD_POWER_STATUS] failed to reach value 0x00000001 != 0x00000000n"
>
> Signed-off-by: Emily Deng <Emily.Deng at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
> index b48bb5212488..259795098173 100644
> --- a/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c
> @@ -1424,8 +1424,10 @@ static int vcn_v4_0_start_sriov(struct amdgpu_device *adev)
>    */
>   static void vcn_v4_0_stop_dpg_mode(struct amdgpu_device *adev, int inst_idx)
>   {
> +	struct dpg_pause_state state = {.fw_based = VCN_DPG_STATE__UNPAUSE};
>   	uint32_t tmp;
>   
> +	vcn_v4_0_pause_dpg_mode(adev, inst_idx, &state);
>   	/* Wait for power status to be 1 */
>   	SOC15_WAIT_ON_RREG(VCN, inst_idx, regUVD_POWER_STATUS, 1,
>   		UVD_POWER_STATUS__UVD_POWER_STATUS_MASK);


More information about the amd-gfx mailing list