Re: [PATCH v4 4/5] drm/msm/a6xx: Remove cx gdsc polling using 'reset'

From: Ulf Hansson
Date: Thu Dec 22 2022 - 11:06:32 EST


On Wed, 21 Dec 2022 at 18:14, Akhil P Oommen <quic_akhilpo@xxxxxxxxxxx> wrote:
>
> Remove the unused 'reset' interface which was supposed to help to ensure
> that cx gdsc has collapsed during gpu recovery. This is was not enabled
> so far due to missing gpucc driver support. Similar functionality using
> genpd framework will be implemented in the upcoming patch.
>
> This effectively reverts commit 1f6cca404918
> ("drm/msm/a6xx: Ensure CX collapse during gpu recovery").
>
> Signed-off-by: Akhil P Oommen <quic_akhilpo@xxxxxxxxxxx>

Reviewed-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

Kind regards
Uffe


> ---
>
> (no changes since v3)
>
> Changes in v3:
> - Updated commit msg (Philipp)
>
> drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 4 ----
> drivers/gpu/drm/msm/msm_gpu.c | 4 ----
> drivers/gpu/drm/msm/msm_gpu.h | 4 ----
> 3 files changed, 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c
> index 36c8fb699b56..4b16e75dfa50 100644
> --- a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c
> +++ b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c
> @@ -10,7 +10,6 @@
>
> #include <linux/bitfield.h>
> #include <linux/devfreq.h>
> -#include <linux/reset.h>
> #include <linux/soc/qcom/llcc-qcom.h>
>
> #define GPU_PAS_ID 13
> @@ -1298,9 +1297,6 @@ static void a6xx_recover(struct msm_gpu *gpu)
> /* And the final one from recover worker */
> pm_runtime_put_sync(&gpu->pdev->dev);
>
> - /* Call into gpucc driver to poll for cx gdsc collapse */
> - reset_control_reset(gpu->cx_collapse);
> -
> pm_runtime_use_autosuspend(&gpu->pdev->dev);
>
> if (active_submits)
> diff --git a/drivers/gpu/drm/msm/msm_gpu.c b/drivers/gpu/drm/msm/msm_gpu.c
> index 30ed45af76ad..97e1319d4577 100644
> --- a/drivers/gpu/drm/msm/msm_gpu.c
> +++ b/drivers/gpu/drm/msm/msm_gpu.c
> @@ -16,7 +16,6 @@
> #include <generated/utsrelease.h>
> #include <linux/string_helpers.h>
> #include <linux/devcoredump.h>
> -#include <linux/reset.h>
> #include <linux/sched/task.h>
>
> /*
> @@ -933,9 +932,6 @@ int msm_gpu_init(struct drm_device *drm, struct platform_device *pdev,
> if (IS_ERR(gpu->gpu_cx))
> gpu->gpu_cx = NULL;
>
> - gpu->cx_collapse = devm_reset_control_get_optional_exclusive(&pdev->dev,
> - "cx_collapse");
> -
> gpu->pdev = pdev;
> platform_set_drvdata(pdev, &gpu->adreno_smmu);
>
> diff --git a/drivers/gpu/drm/msm/msm_gpu.h b/drivers/gpu/drm/msm/msm_gpu.h
> index 651786bc55e5..fa9e34d02c91 100644
> --- a/drivers/gpu/drm/msm/msm_gpu.h
> +++ b/drivers/gpu/drm/msm/msm_gpu.h
> @@ -13,7 +13,6 @@
> #include <linux/interconnect.h>
> #include <linux/pm_opp.h>
> #include <linux/regulator/consumer.h>
> -#include <linux/reset.h>
>
> #include "msm_drv.h"
> #include "msm_fence.h"
> @@ -282,9 +281,6 @@ struct msm_gpu {
> bool hw_apriv;
>
> struct thermal_cooling_device *cooling;
> -
> - /* To poll for cx gdsc collapse during gpu recovery */
> - struct reset_control *cx_collapse;
> };
>
> static inline struct msm_gpu *dev_to_gpu(struct device *dev)
> --
> 2.7.4
>