Reviewed-by: Andrey Grodzovsky <[email protected]>

Andrey

On 10/4/19 2:38 PM, Alex Deucher wrote:
> It's only used in amdgpu_device.c and the naming also
> reflects that.  Move it there.
>
> Signed-off-by: Alex Deucher <[email protected]>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu.h        |  4 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 64 +++++++++++++++++++++
>   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c    | 67 ----------------------
>   3 files changed, 67 insertions(+), 68 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> index 79ea620aac04..f321dc2751e4 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
> @@ -107,6 +107,8 @@ struct amdgpu_mgpu_info
>       uint32_t                        num_apu;
>   };
>   
> +#define AMDGPU_MAX_TIMEOUT_PARAM_LENTH       256
> +
>   /*
>    * Modules parameters.
>    */
> @@ -123,6 +125,7 @@ extern int amdgpu_disp_priority;
>   extern int amdgpu_hw_i2c;
>   extern int amdgpu_pcie_gen2;
>   extern int amdgpu_msi;
> +extern char amdgpu_lockup_timeout[AMDGPU_MAX_TIMEOUT_PARAM_LENTH];
>   extern int amdgpu_dpm;
>   extern int amdgpu_fw_load_type;
>   extern int amdgpu_aspm;
> @@ -427,7 +430,6 @@ struct amdgpu_fpriv {
>   };
>   
>   int amdgpu_file_to_fpriv(struct file *filp, struct amdgpu_fpriv **fpriv);
> -int amdgpu_device_get_job_timeout_settings(struct amdgpu_device *adev);
>   
>   int amdgpu_ib_get(struct amdgpu_device *adev, struct amdgpu_vm *vm,
>                 unsigned size, struct amdgpu_ib *ib);
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index ba7d1fa58c5b..660ce71e1ea1 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -2579,6 +2579,70 @@ static void amdgpu_device_xgmi_reset_func(struct 
> work_struct *__work)
>                        adev->asic_reset_res, adev->ddev->unique);
>   }
>   
> +static int amdgpu_device_get_job_timeout_settings(struct amdgpu_device *adev)
> +{
> +     char *input = amdgpu_lockup_timeout;
> +     char *timeout_setting = NULL;
> +     int index = 0;
> +     long timeout;
> +     int ret = 0;
> +
> +     /*
> +      * By default timeout for non compute jobs is 10000.
> +      * And there is no timeout enforced on compute jobs.
> +      * In SR-IOV or passthrough mode, timeout for compute
> +      * jobs are 10000 by default.
> +      */
> +     adev->gfx_timeout = msecs_to_jiffies(10000);
> +     adev->sdma_timeout = adev->video_timeout = adev->gfx_timeout;
> +     if (amdgpu_sriov_vf(adev) || amdgpu_passthrough(adev))
> +             adev->compute_timeout = adev->gfx_timeout;
> +     else
> +             adev->compute_timeout = MAX_SCHEDULE_TIMEOUT;
> +
> +     if (strnlen(input, AMDGPU_MAX_TIMEOUT_PARAM_LENTH)) {
> +             while ((timeout_setting = strsep(&input, ",")) &&
> +                             strnlen(timeout_setting, 
> AMDGPU_MAX_TIMEOUT_PARAM_LENTH)) {
> +                     ret = kstrtol(timeout_setting, 0, &timeout);
> +                     if (ret)
> +                             return ret;
> +
> +                     if (timeout == 0) {
> +                             index++;
> +                             continue;
> +                     } else if (timeout < 0) {
> +                             timeout = MAX_SCHEDULE_TIMEOUT;
> +                     } else {
> +                             timeout = msecs_to_jiffies(timeout);
> +                     }
> +
> +                     switch (index++) {
> +                     case 0:
> +                             adev->gfx_timeout = timeout;
> +                             break;
> +                     case 1:
> +                             adev->compute_timeout = timeout;
> +                             break;
> +                     case 2:
> +                             adev->sdma_timeout = timeout;
> +                             break;
> +                     case 3:
> +                             adev->video_timeout = timeout;
> +                             break;
> +                     default:
> +                             break;
> +                     }
> +             }
> +             /*
> +              * There is only one value specified and
> +              * it should apply to all non-compute jobs.
> +              */
> +             if (index == 1)
> +                     adev->sdma_timeout = adev->video_timeout = 
> adev->gfx_timeout;
> +     }
> +
> +     return ret;
> +}
>   
>   /**
>    * amdgpu_device_init - initialize the driver
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> index 5edf74b5c860..bfb4504fa195 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> @@ -88,8 +88,6 @@
>   #define KMS_DRIVER_MINOR    35
>   #define KMS_DRIVER_PATCHLEVEL       0
>   
> -#define AMDGPU_MAX_TIMEOUT_PARAM_LENTH       256
> -
>   int amdgpu_vram_limit = 0;
>   int amdgpu_vis_vram_limit = 0;
>   int amdgpu_gart_size = -1; /* auto */
> @@ -1306,71 +1304,6 @@ int amdgpu_file_to_fpriv(struct file *filp, struct 
> amdgpu_fpriv **fpriv)
>       return 0;
>   }
>   
> -int amdgpu_device_get_job_timeout_settings(struct amdgpu_device *adev)
> -{
> -     char *input = amdgpu_lockup_timeout;
> -     char *timeout_setting = NULL;
> -     int index = 0;
> -     long timeout;
> -     int ret = 0;
> -
> -     /*
> -      * By default timeout for non compute jobs is 10000.
> -      * And there is no timeout enforced on compute jobs.
> -      * In SR-IOV or passthrough mode, timeout for compute
> -      * jobs are 10000 by default.
> -      */
> -     adev->gfx_timeout = msecs_to_jiffies(10000);
> -     adev->sdma_timeout = adev->video_timeout = adev->gfx_timeout;
> -     if (amdgpu_sriov_vf(adev) || amdgpu_passthrough(adev))
> -             adev->compute_timeout = adev->gfx_timeout;
> -     else
> -             adev->compute_timeout = MAX_SCHEDULE_TIMEOUT;
> -
> -     if (strnlen(input, AMDGPU_MAX_TIMEOUT_PARAM_LENTH)) {
> -             while ((timeout_setting = strsep(&input, ",")) &&
> -                             strnlen(timeout_setting, 
> AMDGPU_MAX_TIMEOUT_PARAM_LENTH)) {
> -                     ret = kstrtol(timeout_setting, 0, &timeout);
> -                     if (ret)
> -                             return ret;
> -
> -                     if (timeout == 0) {
> -                             index++;
> -                             continue;
> -                     } else if (timeout < 0) {
> -                             timeout = MAX_SCHEDULE_TIMEOUT;
> -                     } else {
> -                             timeout = msecs_to_jiffies(timeout);
> -                     }
> -
> -                     switch (index++) {
> -                     case 0:
> -                             adev->gfx_timeout = timeout;
> -                             break;
> -                     case 1:
> -                             adev->compute_timeout = timeout;
> -                             break;
> -                     case 2:
> -                             adev->sdma_timeout = timeout;
> -                             break;
> -                     case 3:
> -                             adev->video_timeout = timeout;
> -                             break;
> -                     default:
> -                             break;
> -                     }
> -             }
> -             /*
> -              * There is only one value specified and
> -              * it should apply to all non-compute jobs.
> -              */
> -             if (index == 1)
> -                     adev->sdma_timeout = adev->video_timeout = 
> adev->gfx_timeout;
> -     }
> -
> -     return ret;
> -}
> -
>   static bool
>   amdgpu_get_crtc_scanout_position(struct drm_device *dev, unsigned int pipe,
>                                bool in_vblank_irq, int *vpos, int *hpos,
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to