|
@@ -405,6 +405,9 @@ static int radeon_pmops_runtime_suspend(struct device *dev)
|
|
|
if (radeon_runtime_pm == 0)
|
|
|
return -EINVAL;
|
|
|
|
|
|
+ if (radeon_runtime_pm == -1 && !radeon_is_px())
|
|
|
+ return -EINVAL;
|
|
|
+
|
|
|
drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING;
|
|
|
drm_kms_helper_poll_disable(drm_dev);
|
|
|
vga_switcheroo_set_dynamic_switch(pdev, VGA_SWITCHEROO_OFF);
|
|
@@ -427,6 +430,9 @@ static int radeon_pmops_runtime_resume(struct device *dev)
|
|
|
if (radeon_runtime_pm == 0)
|
|
|
return -EINVAL;
|
|
|
|
|
|
+ if (radeon_runtime_pm == -1 && !radeon_is_px())
|
|
|
+ return -EINVAL;
|
|
|
+
|
|
|
drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING;
|
|
|
|
|
|
pci_set_power_state(pdev, PCI_D0);
|