diff options
author | Monk Liu <Monk.Liu@amd.com> | 2017-09-15 04:43:01 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-09-26 15:14:24 -0400 |
commit | 4ff184d70e1dd85cc39f3b8ed0d98b728d6d9b6c (patch) | |
tree | 42d88687e0ac2de987cb8e5f8fbea77f9a00bdea /drivers/gpu/drm/amd | |
parent | beb841028480a13a664f868688102f3cee762a6b (diff) |
drm/amdgpu:fix uvd ring fini routine(v2)
fix missing finish uvd enc_ring.
v2:
since the adev pointer check in already in ring_fini
so drop the check outsider
Signed-off-by: Monk Liu <Monk.Liu@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c index 331e34ac61fd..e8bd50cf9785 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | |||
@@ -269,6 +269,7 @@ int amdgpu_uvd_sw_init(struct amdgpu_device *adev) | |||
269 | 269 | ||
270 | int amdgpu_uvd_sw_fini(struct amdgpu_device *adev) | 270 | int amdgpu_uvd_sw_fini(struct amdgpu_device *adev) |
271 | { | 271 | { |
272 | int i; | ||
272 | kfree(adev->uvd.saved_bo); | 273 | kfree(adev->uvd.saved_bo); |
273 | 274 | ||
274 | amd_sched_entity_fini(&adev->uvd.ring.sched, &adev->uvd.entity); | 275 | amd_sched_entity_fini(&adev->uvd.ring.sched, &adev->uvd.entity); |
@@ -279,6 +280,9 @@ int amdgpu_uvd_sw_fini(struct amdgpu_device *adev) | |||
279 | 280 | ||
280 | amdgpu_ring_fini(&adev->uvd.ring); | 281 | amdgpu_ring_fini(&adev->uvd.ring); |
281 | 282 | ||
283 | for (i = 0; i < AMDGPU_MAX_UVD_ENC_RINGS; ++i) | ||
284 | amdgpu_ring_fini(&adev->uvd.ring_enc[i]); | ||
285 | |||
282 | release_firmware(adev->uvd.fw); | 286 | release_firmware(adev->uvd.fw); |
283 | 287 | ||
284 | return 0; | 288 | return 0; |