summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
diff options
context:
space:
mode:
authorJack Xiao <Jack.Xiao@amd.com>2019-04-18 16:20:10 +0800
committerAlex Deucher <alexander.deucher@amd.com>2019-06-21 18:59:27 -0500
commitc113ba157f41325e62e434f21e7235e9e829ea65 (patch)
tree6bb15a4fdb33392a4762a1516e9a4ac2c500cc15 /drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
parent8a33c4f1945cdecc585eee6a94aa06fb9c85668c (diff)
drm/amdgpu/vcn2: notify SMU power up/down VCN
For sw control power gating, it needs notify SMU to power up/down VCN when enter/exit working state. Signed-off-by: Jack Xiao <Jack.Xiao@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Huang Rui <ray.huang@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c b/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
index b5f9afc08c4a..36a80e487b8d 100644
--- a/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
@@ -27,6 +27,7 @@
#include "amdgpu_vcn.h"
#include "soc15.h"
#include "soc15d.h"
+#include "amdgpu_pm.h"
#include "vcn/vcn_2_0_0_offset.h"
#include "vcn/vcn_2_0_0_sh_mask.h"
@@ -779,6 +780,9 @@ static int vcn_v2_0_start(struct amdgpu_device *adev)
uint32_t lmi_swap_cntl;
int i, j, r;
+ if (adev->pm.dpm_enabled)
+ amdgpu_dpm_enable_uvd(adev, true);
+
vcn_v2_0_disable_static_power_gating(adev);
/* set uvd status busy */
@@ -991,6 +995,9 @@ static int vcn_v2_0_stop(struct amdgpu_device *adev)
vcn_v2_0_enable_clock_gating(adev);
vcn_v2_0_enable_static_power_gating(adev);
+ if (adev->pm.dpm_enabled)
+ amdgpu_dpm_enable_uvd(adev, false);
+
return 0;
}