Browse Source

drm/amdgpu: be consistent with uvd cg flags

Don't do anything if the uvd cg flags are not set.

Reviewed-by: Eric Huang <JinHuiEric.Huang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Alex Deucher 9 years ago
parent
commit
35e5912d08
2 changed files with 8 additions and 0 deletions
  1. 3 0
      drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c
  2. 5 0
      drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c

+ 3 - 0
drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c

@@ -830,6 +830,9 @@ static int uvd_v4_2_set_clockgating_state(void *handle,
 	bool gate = false;
 	struct amdgpu_device *adev = (struct amdgpu_device *)handle;
 
+	if (!(adev->cg_flags & AMDGPU_CG_SUPPORT_UVD_MGCG))
+		return 0;
+
 	if (state == AMD_CG_STATE_GATE)
 		gate = true;
 

+ 5 - 0
drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c

@@ -774,6 +774,11 @@ static int uvd_v5_0_process_interrupt(struct amdgpu_device *adev,
 static int uvd_v5_0_set_clockgating_state(void *handle,
 					  enum amd_clockgating_state state)
 {
+	struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+
+	if (!(adev->cg_flags & AMDGPU_CG_SUPPORT_UVD_MGCG))
+		return 0;
+
 	return 0;
 }