Because the rpm_mode flag is already set when the driver
is initialized, we use it directly for runtime suspend/resume
instead of checking it again

Signed-off-by: Ma Jun <jun....@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
index af7fae7907d7..8b83c26dc018 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
@@ -2666,7 +2666,7 @@ static int amdgpu_pmops_runtime_suspend(struct device 
*dev)
        }
 
        adev->in_runpm = true;
-       if (amdgpu_device_supports_px(drm_dev))
+       if (adev->pm.rpm_mode == AMDGPU_RUNPM_PX)
                drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING;
 
        /*
@@ -2676,7 +2676,7 @@ static int amdgpu_pmops_runtime_suspend(struct device 
*dev)
         * platforms.
         * TODO: this may be also needed for PX capable platform.
         */
-       if (amdgpu_device_supports_boco(drm_dev))
+       if (adev->pm.rpm_mode == AMDGPU_RUNPM_BOCO)
                adev->mp1_state = PP_MP1_STATE_UNLOAD;
 
        ret = amdgpu_device_prepare(drm_dev);
@@ -2685,15 +2685,15 @@ static int amdgpu_pmops_runtime_suspend(struct device 
*dev)
        ret = amdgpu_device_suspend(drm_dev, false);
        if (ret) {
                adev->in_runpm = false;
-               if (amdgpu_device_supports_boco(drm_dev))
+               if (adev->pm.rpm_mode == AMDGPU_RUNPM_BOCO)
                        adev->mp1_state = PP_MP1_STATE_NONE;
                return ret;
        }
 
-       if (amdgpu_device_supports_boco(drm_dev))
+       if (adev->pm.rpm_mode == AMDGPU_RUNPM_BOCO)
                adev->mp1_state = PP_MP1_STATE_NONE;
 
-       if (amdgpu_device_supports_px(drm_dev)) {
+       if (adev->pm.rpm_mode == AMDGPU_RUNPM_PX) {
                /* Only need to handle PCI state in the driver for ATPX
                 * PCI core handles it for _PR3.
                 */
@@ -2702,9 +2702,9 @@ static int amdgpu_pmops_runtime_suspend(struct device 
*dev)
                pci_ignore_hotplug(pdev);
                pci_set_power_state(pdev, PCI_D3cold);
                drm_dev->switch_power_state = DRM_SWITCH_POWER_DYNAMIC_OFF;
-       } else if (amdgpu_device_supports_boco(drm_dev)) {
+       } else if (adev->pm.rpm_mode == AMDGPU_RUNPM_BOCO) {
                /* nothing to do */
-       } else if (amdgpu_device_supports_baco(drm_dev)) {
+       } else if (adev->pm.rpm_mode == AMDGPU_RUNPM_BACO) {
                amdgpu_device_baco_enter(drm_dev);
        }
 
@@ -2727,7 +2727,7 @@ static int amdgpu_pmops_runtime_resume(struct device *dev)
        if (!pci_device_is_present(adev->pdev))
                adev->no_hw_access = true;
 
-       if (amdgpu_device_supports_px(drm_dev)) {
+       if (adev->pm.rpm_mode == AMDGPU_RUNPM_PX) {
                drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING;
 
                /* Only need to handle PCI state in the driver for ATPX
@@ -2739,22 +2739,22 @@ static int amdgpu_pmops_runtime_resume(struct device 
*dev)
                if (ret)
                        return ret;
                pci_set_master(pdev);
-       } else if (amdgpu_device_supports_boco(drm_dev)) {
+       } else if (adev->pm.rpm_mode == AMDGPU_RUNPM_BOCO) {
                /* Only need to handle PCI state in the driver for ATPX
                 * PCI core handles it for _PR3.
                 */
                pci_set_master(pdev);
-       } else if (amdgpu_device_supports_baco(drm_dev)) {
+       } else if (adev->pm.rpm_mode == AMDGPU_RUNPM_BACO) {
                amdgpu_device_baco_exit(drm_dev);
        }
        ret = amdgpu_device_resume(drm_dev, false);
        if (ret) {
-               if (amdgpu_device_supports_px(drm_dev))
+               if (adev->pm.rpm_mode == AMDGPU_RUNPM_PX)
                        pci_disable_device(pdev);
                return ret;
        }
 
-       if (amdgpu_device_supports_px(drm_dev))
+       if (adev->pm.rpm_mode == AMDGPU_RUNPM_PX)
                drm_dev->switch_power_state = DRM_SWITCH_POWER_ON;
        adev->in_runpm = false;
        return 0;
-- 
2.34.1

Reply via email to