aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.19.8/0527-drm-amdgpu-vcn-Update-SPG-mode-UVD-status-clear.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/0527-drm-amdgpu-vcn-Update-SPG-mode-UVD-status-clear.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.19.8/0527-drm-amdgpu-vcn-Update-SPG-mode-UVD-status-clear.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/0527-drm-amdgpu-vcn-Update-SPG-mode-UVD-status-clear.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/0527-drm-amdgpu-vcn-Update-SPG-mode-UVD-status-clear.patch
new file mode 100644
index 00000000..c1111784
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/0527-drm-amdgpu-vcn-Update-SPG-mode-UVD-status-clear.patch
@@ -0,0 +1,34 @@
+From 4e4d0c0c52b00ff395947c3a7411c1b1371171c3 Mon Sep 17 00:00:00 2001
+From: James Zhu <James.Zhu@amd.com>
+Date: Tue, 9 Oct 2018 17:06:56 -0400
+Subject: [PATCH 0527/2940] drm/amdgpu/vcn:Update SPG mode UVD status clear
+
+Update Static Power Gate mode UVD status clear
+
+Signed-off-by: James Zhu <James.Zhu@amd.com>
+Acked-by: Leo Liu <leo.liu@amd.com>
+Acked-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c b/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c
+index d8fe14d43db0..bc6470668057 100644
+--- a/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c
++++ b/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c
+@@ -883,9 +883,9 @@ static int vcn_v1_0_start_spg_mode(struct amdgpu_device *adev)
+ UVD_SYS_INT_EN__UVD_JRBC_EN_MASK,
+ ~UVD_SYS_INT_EN__UVD_JRBC_EN_MASK);
+
+- /* clear the bit 4 of VCN_STATUS */
+- WREG32_P(SOC15_REG_OFFSET(UVD, 0, mmUVD_STATUS), 0,
+- ~(2 << UVD_STATUS__VCPU_REPORT__SHIFT));
++ /* clear the busy bit of UVD_STATUS */
++ tmp = RREG32_SOC15(UVD, 0, mmUVD_STATUS) & ~UVD_STATUS__UVD_BUSY;
++ WREG32_SOC15(UVD, 0, mmUVD_STATUS, tmp);
+
+ /* force RBC into idle state */
+ rb_bufsz = order_base_2(ring->ring_size);
+--
+2.17.1
+