diff options
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/radeon/radeon_drv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_drv.c b/drivers/gpu/drm/radeon/radeon_drv.c index 1235a78fbba1..ec8c388eec17 100644 --- a/drivers/gpu/drm/radeon/radeon_drv.c +++ b/drivers/gpu/drm/radeon/radeon_drv.c | |||
| @@ -405,6 +405,9 @@ static int radeon_pmops_runtime_suspend(struct device *dev) | |||
| 405 | if (radeon_runtime_pm == 0) | 405 | if (radeon_runtime_pm == 0) |
| 406 | return -EINVAL; | 406 | return -EINVAL; |
| 407 | 407 | ||
| 408 | if (radeon_runtime_pm == -1 && !radeon_is_px()) | ||
| 409 | return -EINVAL; | ||
| 410 | |||
| 408 | drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; | 411 | drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; |
| 409 | drm_kms_helper_poll_disable(drm_dev); | 412 | drm_kms_helper_poll_disable(drm_dev); |
| 410 | vga_switcheroo_set_dynamic_switch(pdev, VGA_SWITCHEROO_OFF); | 413 | vga_switcheroo_set_dynamic_switch(pdev, VGA_SWITCHEROO_OFF); |
| @@ -427,6 +430,9 @@ static int radeon_pmops_runtime_resume(struct device *dev) | |||
| 427 | if (radeon_runtime_pm == 0) | 430 | if (radeon_runtime_pm == 0) |
| 428 | return -EINVAL; | 431 | return -EINVAL; |
| 429 | 432 | ||
| 433 | if (radeon_runtime_pm == -1 && !radeon_is_px()) | ||
| 434 | return -EINVAL; | ||
| 435 | |||
| 430 | drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; | 436 | drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING; |
| 431 | 437 | ||
| 432 | pci_set_power_state(pdev, PCI_D0); | 438 | pci_set_power_state(pdev, PCI_D0); |
