Commit 5a90c24a authored by Alex Deucher's avatar Alex Deucher

Revert "drm/amdgpu: disable runpm if we are the primary adapter"

This reverts commit b95dc06a.

This workaround is no longer necessary.  We have a better workaround
in commit f95af4a9 ("drm/amdgpu: don't runtime suspend if there are displays attached (v3)").
Reviewed-by: default avatarJavier Martinez Canillas <javierm@redhat.com>
Acked-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 98bae896
...@@ -1005,7 +1005,6 @@ struct amdgpu_device { ...@@ -1005,7 +1005,6 @@ struct amdgpu_device {
bool runpm; bool runpm;
bool in_runpm; bool in_runpm;
bool has_pr3; bool has_pr3;
bool is_fw_fb;
bool pm_sysfs_en; bool pm_sysfs_en;
bool ucode_sysfs_en; bool ucode_sysfs_en;
......
...@@ -38,7 +38,6 @@ ...@@ -38,7 +38,6 @@
#include <linux/mmu_notifier.h> #include <linux/mmu_notifier.h>
#include <linux/suspend.h> #include <linux/suspend.h>
#include <linux/cc_platform.h> #include <linux/cc_platform.h>
#include <linux/fb.h>
#include "amdgpu.h" #include "amdgpu.h"
#include "amdgpu_irq.h" #include "amdgpu_irq.h"
...@@ -1960,26 +1959,6 @@ MODULE_DEVICE_TABLE(pci, pciidlist); ...@@ -1960,26 +1959,6 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
static const struct drm_driver amdgpu_kms_driver; static const struct drm_driver amdgpu_kms_driver;
static bool amdgpu_is_fw_framebuffer(resource_size_t base,
resource_size_t size)
{
bool found = false;
#if IS_REACHABLE(CONFIG_FB)
struct apertures_struct *a;
a = alloc_apertures(1);
if (!a)
return false;
a->ranges[0].base = base;
a->ranges[0].size = size;
found = is_firmware_framebuffer(a);
kfree(a);
#endif
return found;
}
static void amdgpu_get_secondary_funcs(struct amdgpu_device *adev) static void amdgpu_get_secondary_funcs(struct amdgpu_device *adev)
{ {
struct pci_dev *p = NULL; struct pci_dev *p = NULL;
...@@ -2010,8 +1989,6 @@ static int amdgpu_pci_probe(struct pci_dev *pdev, ...@@ -2010,8 +1989,6 @@ static int amdgpu_pci_probe(struct pci_dev *pdev,
unsigned long flags = ent->driver_data; unsigned long flags = ent->driver_data;
int ret, retry = 0, i; int ret, retry = 0, i;
bool supports_atomic = false; bool supports_atomic = false;
bool is_fw_fb;
resource_size_t base, size;
/* skip devices which are owned by radeon */ /* skip devices which are owned by radeon */
for (i = 0; i < ARRAY_SIZE(amdgpu_unsupported_pciidlist); i++) { for (i = 0; i < ARRAY_SIZE(amdgpu_unsupported_pciidlist); i++) {
...@@ -2078,10 +2055,6 @@ static int amdgpu_pci_probe(struct pci_dev *pdev, ...@@ -2078,10 +2055,6 @@ static int amdgpu_pci_probe(struct pci_dev *pdev,
} }
#endif #endif
base = pci_resource_start(pdev, 0);
size = pci_resource_len(pdev, 0);
is_fw_fb = amdgpu_is_fw_framebuffer(base, size);
/* Get rid of things like offb */ /* Get rid of things like offb */
ret = drm_aperture_remove_conflicting_pci_framebuffers(pdev, &amdgpu_kms_driver); ret = drm_aperture_remove_conflicting_pci_framebuffers(pdev, &amdgpu_kms_driver);
if (ret) if (ret)
...@@ -2094,7 +2067,6 @@ static int amdgpu_pci_probe(struct pci_dev *pdev, ...@@ -2094,7 +2067,6 @@ static int amdgpu_pci_probe(struct pci_dev *pdev,
adev->dev = &pdev->dev; adev->dev = &pdev->dev;
adev->pdev = pdev; adev->pdev = pdev;
ddev = adev_to_drm(adev); ddev = adev_to_drm(adev);
adev->is_fw_fb = is_fw_fb;
if (!supports_atomic) if (!supports_atomic)
ddev->driver_features &= ~DRIVER_ATOMIC; ddev->driver_features &= ~DRIVER_ATOMIC;
......
...@@ -185,12 +185,6 @@ int amdgpu_driver_load_kms(struct amdgpu_device *adev, unsigned long flags) ...@@ -185,12 +185,6 @@ int amdgpu_driver_load_kms(struct amdgpu_device *adev, unsigned long flags)
adev->runpm = true; adev->runpm = true;
break; break;
} }
/* XXX: disable runtime pm if we are the primary adapter
* to avoid displays being re-enabled after DPMS.
* This needs to be sorted out and fixed properly.
*/
if (adev->is_fw_fb)
adev->runpm = false;
amdgpu_runtime_pm_quirk(adev); amdgpu_runtime_pm_quirk(adev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment