diff options
author | egnappahz | 2020-04-19 23:49:19 +0200 |
---|---|---|
committer | egnappahz | 2020-04-19 23:49:19 +0200 |
commit | 9f97ce9ecbd5ef64011005d83063cdbe7f0c4f62 (patch) | |
tree | 300a00d61e1a3e55f7c0b7d41dee91117bd34654 | |
parent | 39a52a77b822ce7ddaf2c58565f54b50c0b380b0 (diff) | |
download | aur-9f97ce9ecbd5ef64011005d83063cdbe7f0c4f62.tar.gz |
Implemented suggested amdgpu patch by bedson
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 18 | ||||
-rw-r--r-- | amdgpu_hwhang_reboot.patch | 35 |
3 files changed, 51 insertions, 6 deletions
@@ -1,6 +1,6 @@ pkgbase = linux-amd pkgver = 5.6.v.5 - pkgrel = 1 + pkgrel = 2 url = https://www.kernel.org/ arch = x86_64 license = GPL2 @@ -16,10 +16,12 @@ pkgbase = linux-amd source = config.x86_64 source = linux-amd.preset source = 5012_enable-cpu-optimizations-for-gcc91.patch + source = amdgpu_hwhang_reboot.patch sha256sums = SKIP sha256sums = dcf938e044b44db4732576b3e8da9eda1790e1931215c3c63fe0c7151d70d6dc sha256sums = 71caf34adf69e9e2567a38cfc951d1c60b13dbe87f58a9acfeb3fe48ffdc9d08 sha256sums = cc739c9c9f7ce08e6bbc161b8232208bbc00820342a32fb1f69bff6326ae1370 + sha256sums = 62fc91e581c56240220dac84b77684387ae3d5c52afc5904f76a8cfa43e73c05 pkgname = linux-amd pkgdesc = Linux kernel for AMD CPU based hardware @@ -4,7 +4,7 @@ pkgbase=linux-amd _srcname=linux gitver=v5.6.5 pkgver=5.6.v.5 -pkgrel=1 +pkgrel=2 arch=('x86_64') url="https://www.kernel.org/" license=('GPL2') @@ -21,15 +21,19 @@ source=('git+https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git' "${pkgbase}.preset" # patch from our gentoo overlords 5012_enable-cpu-optimizations-for-gcc91.patch + # amdgpuhang on reboot patch + 'amdgpu_hwhang_reboot.patch' ) sha256sums=('SKIP' - #config.x86_64 + #config.x86_64 'dcf938e044b44db4732576b3e8da9eda1790e1931215c3c63fe0c7151d70d6dc' - #.preset file + #.preset file '71caf34adf69e9e2567a38cfc951d1c60b13dbe87f58a9acfeb3fe48ffdc9d08' - #patch gentoo + #patch gentoo 'cc739c9c9f7ce08e6bbc161b8232208bbc00820342a32fb1f69bff6326ae1370' - ) + #amdgpuhang on reboot patch + '62fc91e581c56240220dac84b77684387ae3d5c52afc5904f76a8cfa43e73c05' +) _kernelname=${pkgbase#linux} @@ -53,6 +57,10 @@ prepare() { # Implement cpu optimisation (MZEN2) patch from our gentoo lords git apply ../5012_enable-cpu-optimizations-for-gcc91.patch + + # Implement amdgpu_hwhang_reboot.patch + git apply ../amdgpu_hwhang_reboot.patch + # get kernel version yes "" | make prepare diff --git a/amdgpu_hwhang_reboot.patch b/amdgpu_hwhang_reboot.patch new file mode 100644 index 000000000000..dc24eff4dd7c --- /dev/null +++ b/amdgpu_hwhang_reboot.patch @@ -0,0 +1,35 @@ +From b2a7e9735ab2864330be9d00d7f38c961c28de5d 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 + +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 +--- + 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 7d35b0a366a2..f84f9e35a73b 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +@@ -2356,6 +2356,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.1 |