+++ /dev/null
-From 1db4496f167bcc7c6541d449355ade2e7d339d52 Mon Sep 17 00:00:00 2001
-From: Peter Wu <peter@lekensteyn.nl>
-Date: Wed, 23 Nov 2016 02:22:24 +0100
-Subject: drm/amdgpu: fix power state when port pm is unavailable
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-From: Peter Wu <peter@lekensteyn.nl>
-
-commit 1db4496f167bcc7c6541d449355ade2e7d339d52 upstream.
-
-When PCIe port PM is not enabled (system BIOS is pre-2015 or the
-pcie_port_pm=off parameter is set), legacy ATPX PM should still be
-marked as supported. Otherwise the GPU can fail to power on after
-runtime suspend. This affected a Dell Inspiron 5548.
-
-Ideally the BIOS date in the PCI core is lowered to 2013 (the first year
-where hybrid graphics platforms using power resources was introduced),
-but that seems more risky at this point and would not solve the
-pcie_port_pm=off issue.
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98505
-Reported-and-tested-by: Nayan Deshmukh <nayan26deshmukh@gmail.com>
-Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Acked-by: Christian König <christian.koenig@amd.com>
-Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c
-@@ -33,6 +33,7 @@ struct amdgpu_atpx {
-
- static struct amdgpu_atpx_priv {
- bool atpx_detected;
-+ bool bridge_pm_usable;
- /* handle for device - and atpx */
- acpi_handle dhandle;
- acpi_handle other_handle;
-@@ -200,7 +201,11 @@ static int amdgpu_atpx_validate(struct a
- atpx->is_hybrid = false;
- if (valid_bits & ATPX_MS_HYBRID_GFX_SUPPORTED) {
- printk("ATPX Hybrid Graphics\n");
-- atpx->functions.power_cntl = false;
-+ /*
-+ * Disable legacy PM methods only when pcie port PM is usable,
-+ * otherwise the device might fail to power off or power on.
-+ */
-+ atpx->functions.power_cntl = !amdgpu_atpx_priv.bridge_pm_usable;
- atpx->is_hybrid = true;
- }
-
-@@ -471,6 +476,7 @@ static int amdgpu_atpx_power_state(enum
- */
- static bool amdgpu_atpx_pci_probe_handle(struct pci_dev *pdev)
- {
-+ struct pci_dev *parent_pdev = pci_upstream_bridge(pdev);
- acpi_handle dhandle, atpx_handle;
- acpi_status status;
-
-@@ -485,6 +491,7 @@ static bool amdgpu_atpx_pci_probe_handle
- }
- amdgpu_atpx_priv.dhandle = dhandle;
- amdgpu_atpx_priv.atpx.handle = atpx_handle;
-+ amdgpu_atpx_priv.bridge_pm_usable = parent_pdev && parent_pdev->bridge_d3;
- return true;
- }
-
+++ /dev/null
-From d3ac31f3b4bf9fade93d69770cb9c34912e017be Mon Sep 17 00:00:00 2001
-From: Peter Wu <peter@lekensteyn.nl>
-Date: Wed, 23 Nov 2016 02:22:25 +0100
-Subject: drm/radeon: fix power state when port pm is unavailable (v2)
-
-From: Peter Wu <peter@lekensteyn.nl>
-
-commit d3ac31f3b4bf9fade93d69770cb9c34912e017be upstream.
-
-When PCIe port PM is not enabled (system BIOS is pre-2015 or the
-pcie_port_pm=off parameter is set), legacy ATPX PM should still be
-marked as supported. Otherwise the GPU can fail to power on after
-runtime suspend. This affected a Dell Inspiron 5548.
-
-Ideally the BIOS date in the PCI core is lowered to 2013 (the first year
-where hybrid graphics platforms using power resources was introduced),
-but that seems more risky at this point and would not solve the
-pcie_port_pm=off issue.
-
-v2: agd: fix typo
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98505
-Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- drivers/gpu/drm/radeon/radeon_atpx_handler.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
---- a/drivers/gpu/drm/radeon/radeon_atpx_handler.c
-+++ b/drivers/gpu/drm/radeon/radeon_atpx_handler.c
-@@ -33,6 +33,7 @@ struct radeon_atpx {
-
- static struct radeon_atpx_priv {
- bool atpx_detected;
-+ bool bridge_pm_usable;
- /* handle for device - and atpx */
- acpi_handle dhandle;
- struct radeon_atpx atpx;
-@@ -198,7 +199,11 @@ static int radeon_atpx_validate(struct r
- atpx->is_hybrid = false;
- if (valid_bits & ATPX_MS_HYBRID_GFX_SUPPORTED) {
- printk("ATPX Hybrid Graphics\n");
-- atpx->functions.power_cntl = false;
-+ /*
-+ * Disable legacy PM methods only when pcie port PM is usable,
-+ * otherwise the device might fail to power off or power on.
-+ */
-+ atpx->functions.power_cntl = !radeon_atpx_priv.bridge_pm_usable;
- atpx->is_hybrid = true;
- }
-
-@@ -469,6 +474,7 @@ static int radeon_atpx_power_state(enum
- */
- static bool radeon_atpx_pci_probe_handle(struct pci_dev *pdev)
- {
-+ struct pci_dev *parent_pdev = pci_upstream_bridge(pdev);
- acpi_handle dhandle, atpx_handle;
- acpi_status status;
-
-@@ -482,6 +488,7 @@ static bool radeon_atpx_pci_probe_handle
-
- radeon_atpx_priv.dhandle = dhandle;
- radeon_atpx_priv.atpx.handle = atpx_handle;
-+ radeon_atpx_priv.bridge_pm_usable = parent_pdev && parent_pdev->bridge_d3;
- return true;
- }
-
scsi-mpt3sas-fix-secure-erase-premature-termination.patch
tile-avoid-using-clocksource_cyc2ns-with-absolute-cycle-count.patch
cfg80211-limit-scan-results-cache-size.patch
-drm-amdgpu-fix-power-state-when-port-pm-is-unavailable.patch
-drm-radeon-fix-power-state-when-port-pm-is-unavailable-v2.patch
apparmor-fix-change_hat-not-finding-hat-after-policy-replacement.patch
nfsv4.x-hide-array-bounds-warning.patch
x86-fpu-fix-invalid-fpu-ptrace-state-after-execve.patch