drm/amdgpu: clean doorbell after sending init table to mmsch
authorFrank Min <Frank.Min@amd.com>
Tue, 2 May 2017 11:49:32 +0000 (19:49 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 24 May 2017 21:40:22 +0000 (17:40 -0400)
According to HW design, need to clean doorbell after setup MMSCH
table.

Signed-off-by: Frank Min <Frank.Min@amd.com>
Signed-off-by: Xiangliang Yu <Xiangliang.Yu@amd.com>
Reviewed-by: Monk Liu <Monk.Liu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c

index e3cf8e49d3364ca2871243928bea69242da4305f..aaa3662ca63a1d0b5f79a6def015960b47d8c3a4 100644 (file)
@@ -702,6 +702,7 @@ static int uvd_v7_0_mmsch_start(struct amdgpu_device *adev,
                dev_err(adev->dev, "failed to init MMSCH, mmVCE_MMSCH_VF_MAILBOX_RESP = %x\n", data);
                return -EBUSY;
        }
+       WDOORBELL32(adev->uvd.ring_enc[0].doorbell_index, 0);
 
        return 0;
 }
index a7af08a353424eba90f170a815b5012189d5187e..77f1b60ab4165a043ed2a039f0707c910c09d488 100644 (file)
@@ -190,6 +190,7 @@ static int vce_v4_0_mmsch_start(struct amdgpu_device *adev,
                dev_err(adev->dev, "failed to init MMSCH, mmVCE_MMSCH_VF_MAILBOX_RESP = %x\n", data);
                return -EBUSY;
        }
+       WDOORBELL32(adev->vce.ring[0].doorbell_index, 0);
 
        return 0;
 }