summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--0003-drm-amdgpu-fix-the-hw-hang-during-perform-system-reboot-and-reset.patch39
-rw-r--r--PKGBUILD5
2 files changed, 43 insertions, 1 deletions
diff --git a/0003-drm-amdgpu-fix-the-hw-hang-during-perform-system-reboot-and-reset.patch b/0003-drm-amdgpu-fix-the-hw-hang-during-perform-system-reboot-and-reset.patch
new file mode 100644
index 0000000..bbe177a
--- /dev/null
+++ b/0003-drm-amdgpu-fix-the-hw-hang-during-perform-system-reboot-and-reset.patch
@@ -0,0 +1,39 @@
+From 1f8782c04f587b9e0901f7736c112814dd0dcc47 Mon Sep 17 00:00:00 2001
+From: Prike Liang <Prike.Liang@amd.com>
+Date: Mon, 13 Apr 2020 21:41:14 +0800
+Subject: drm/amdgpu: fix the hw hang during perform system reboot and reset
+
+commit b2a7e9735ab2864330be9d00d7f38c961c28de5d upstream.
+
+The system reboot failed as some IP blocks enter power gate before perform
+hw resource destory. Meanwhile use unify interface to set device CGPG to ungate
+state can simplify the amdgpu poweroff or reset ungate guard.
+
+Fixes: 487eca11a321ef ("drm/amdgpu: fix gfx hang during suspend with video playback (v2)")
+Signed-off-by: Prike Liang <Prike.Liang@amd.com>
+Tested-by: Mengbing Wang <Mengbing.Wang@amd.com>
+Tested-by: Paul Menzel <pmenzel@molgen.mpg.de>
+Acked-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Cc: stable@vger.kernel.org
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+index 48e2863461b7..c8bf9cb3cebf 100644
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+@@ -2285,6 +2285,8 @@ static int amdgpu_device_ip_suspend_phase1(struct amdgpu_device *adev)
+ {
+ int i, r;
+
++ amdgpu_device_set_pg_state(adev, AMD_PG_STATE_UNGATE);
++ amdgpu_device_set_cg_state(adev, AMD_CG_STATE_UNGATE);
+
+ for (i = adev->num_ip_blocks - 1; i >= 0; i--) {
+ if (!adev->ip_blocks[i].status.valid)
+--
+cgit v1.2.3-1-gf6bb5
+
diff --git a/PKGBUILD b/PKGBUILD
index c27ff4e..6948531 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -22,7 +22,7 @@ _gccpatchker='5.5'
else
pkgver=${_supver}.${_majver}.${_minver}
fi
-pkgrel=2
+pkgrel=3
pkgdesc='Linux-libre'
url='https://linux-libre.fsfla.org/'
arch=(x86_64)
@@ -40,6 +40,7 @@ source=(
https://linux-libre.fsfla.org/pub/linux-libre/releases/${_gnumajver}/linux-libre-${_gnumajver}.tar.xz{,.sign}
0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
0002-Revert-ACPI-EC-Do-not-clear-boot_ec_is_ecdt-in-acpi_ec_add.patch
+ 0003-drm-amdgpu-fix-the-hw-hang-during-perform-system-reboot-and-reset.patch
graysky_bdver2-hotfix.patch
kernel_gcc_patch-${_gccpatchver}.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/${_gccpatchver}.tar.gz
ath9k-regdom-hack.patch
@@ -57,6 +58,7 @@ b2sums=('921a3836ffbd5ababb897b8d923ab3e97c10c39b8d01060fe41742005f8111b5c2c9e76
'SKIP'
'ab1fb19c67d4c107f75767581c33d9c1458b4d9fdb88f4adb41d30a36f5a2f95f1c48ef079eb87e1e6e8ce2f98b293195cb2c0f2a8ec975aa817453289158c6e'
'4ffbef601d902432e13c9012e3b46f0321c6277aa36a2bc23b2929e6404d0171e881e4b367d29ac7eb02b6c0d9faa06f152d27fdb88f76aa0c27e68c51b466e8'
+ '641284ba5239e23ad7e0f74ca101ba37938c39b46eb3dd90bd8c85cd6feef217ce3b326687c43c52fd984c1fa305e092a3b81a18b02571b36e4152c0bff2f9a9'
'1892bd22775eac3bcc4d37f4fd30c95346bf3a0888cbbff57fd614973b525390dff2e315ce35b2e498523cceaab94ff21a80475dee8df3de4dd8fc0fab07d74e'
'd76bd0bf237ea2bb7999fd3715cb664d89148cb0ade8057d57cdb40bc0a7954336e50ee077312e5e192398b0f35f055786deb98af9130d57e60f2ea040fbb66f'
'2e58bb89b247b1678355368956e67c1de51fcde97a227b2162f6771e30f17fa5520faafe7be4b6816a542e7ae10d05f64c6b6354f352c12746d4b8da632936dd'
@@ -84,6 +86,7 @@ prepare() {
echo "Applying hotfixes"
patch -p1 -i ../0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
patch -p1 -i ../0002-Revert-ACPI-EC-Do-not-clear-boot_ec_is_ecdt-in-acpi_ec_add.patch
+ patch -p1 -i ../0003-drm-amdgpu-fix-the-hw-hang-during-perform-system-reboot-and-reset.patch
patch -p1 -i ../sphinx-workaround.patch