Commit 6f7fe9a9 authored by KyleMahlkuch's avatar KyleMahlkuch Committed by Alex Deucher
Browse files

drm/radeon: Fix EEH during kexec



During kexec some adapters hit an EEH since they are not properly
shut down in the radeon_pci_shutdown() function. Adding
radeon_suspend_kms() fixes this issue.

Signed-off-by: default avatarKyleMahlkuch <kmahlkuc@linux.vnet.ibm.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 5145d57e
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -349,11 +349,19 @@ radeon_pci_remove(struct pci_dev *pdev)
static void
radeon_pci_shutdown(struct pci_dev *pdev)
{
	struct drm_device *ddev = pci_get_drvdata(pdev);

	/* if we are running in a VM, make sure the device
	 * torn down properly on reboot/shutdown
	 */
	if (radeon_device_is_virtual())
		radeon_pci_remove(pdev);

	/* Some adapters need to be suspended before a
	* shutdown occurs in order to prevent an error
	* during kexec.
	*/
	radeon_suspend_kms(ddev, true, true, false);
}

static int radeon_pmops_suspend(struct device *dev)