On 2/28/2024 5:14 PM, Ma Jun wrote:
> 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>

Reviewed-by: Lijo Lazar <lijo.la...@amd.com>

Thanks,
Lijo

> ---
>  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;

Reply via email to