aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/linux-yocto-4.19.8/0408-drm-amdgpu-Fix-Rv-init-failed.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/0408-drm-amdgpu-Fix-Rv-init-failed.patch')
-rw-r--r--common/recipes-kernel/linux/linux-yocto-4.19.8/0408-drm-amdgpu-Fix-Rv-init-failed.patch63
1 files changed, 63 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/0408-drm-amdgpu-Fix-Rv-init-failed.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/0408-drm-amdgpu-Fix-Rv-init-failed.patch
new file mode 100644
index 00000000..a2a93ba0
--- /dev/null
+++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/0408-drm-amdgpu-Fix-Rv-init-failed.patch
@@ -0,0 +1,63 @@
+From d1aab8a6f5938b71de054c1f8172f44e1b52e918 Mon Sep 17 00:00:00 2001
+From: Rex Zhu <Rex.Zhu@amd.com>
+Date: Tue, 25 Sep 2018 17:43:30 +0800
+Subject: [PATCH 0408/2940] drm/amdgpu: Fix Rv init failed
+
+Partially revert:
+commit 91079a250cbe ("drm/amdgpu: Change the gfx/sdma init/fini sequence")'
+drm/amdgpu: Change the gfx/sdma init/fini sequence
+
+Currently sdma ip is power up when smu hw init, so can't change
+the hw sequence on Rv.
+
+v2: also revert the sequence change on Vega
+
+Reviewed-by: Huang Rui <ray.huang@amd.com>
+Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
+---
+ drivers/gpu/drm/amd/amdgpu/soc15.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/soc15.c b/drivers/gpu/drm/amd/amdgpu/soc15.c
+index c4edd9ac0599..bae16d942c21 100644
+--- a/drivers/gpu/drm/amd/amdgpu/soc15.c
++++ b/drivers/gpu/drm/amd/amdgpu/soc15.c
+@@ -529,8 +529,6 @@ int soc15_set_ip_blocks(struct amdgpu_device *adev)
+ amdgpu_device_ip_block_add(adev, &psp_v11_0_ip_block);
+ else
+ amdgpu_device_ip_block_add(adev, &psp_v3_1_ip_block);
+- amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block);
+- amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block);
+ if (!amdgpu_sriov_vf(adev))
+ amdgpu_device_ip_block_add(adev, &pp_smu_ip_block);
+ if (adev->enable_virtual_display || amdgpu_sriov_vf(adev))
+@@ -541,6 +539,8 @@ int soc15_set_ip_blocks(struct amdgpu_device *adev)
+ #else
+ # warning "Enable CONFIG_DRM_AMD_DC for display support on SOC15."
+ #endif
++ amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block);
++ amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block);
+ if (!(adev->asic_type == CHIP_VEGA20 && amdgpu_sriov_vf(adev))) {
+ amdgpu_device_ip_block_add(adev, &uvd_v7_0_ip_block);
+ amdgpu_device_ip_block_add(adev, &vce_v4_0_ip_block);
+@@ -551,8 +551,6 @@ int soc15_set_ip_blocks(struct amdgpu_device *adev)
+ amdgpu_device_ip_block_add(adev, &gmc_v9_0_ip_block);
+ amdgpu_device_ip_block_add(adev, &vega10_ih_ip_block);
+ amdgpu_device_ip_block_add(adev, &psp_v10_0_ip_block);
+- amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block);
+- amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block);
+ amdgpu_device_ip_block_add(adev, &pp_smu_ip_block);
+ if (adev->enable_virtual_display || amdgpu_sriov_vf(adev))
+ amdgpu_device_ip_block_add(adev, &dce_virtual_ip_block);
+@@ -562,6 +560,8 @@ int soc15_set_ip_blocks(struct amdgpu_device *adev)
+ #else
+ # warning "Enable CONFIG_DRM_AMD_DC for display support on SOC15."
+ #endif
++ amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block);
++ amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block);
+ amdgpu_device_ip_block_add(adev, &vcn_v1_0_ip_block);
+ break;
+ default:
+--
+2.17.1
+