[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAApk1dWzDOXqyUegibhjMYam-7k5Rn5KLRaYHrxu3mCeHRaznA@mail.gmail.com>
Date: Mon, 3 Dec 2018 17:44:34 +0000
From: Dave Emett <david.emett@...adcom.com>
To: Eric Anholt <eric@...olt.net>
Cc: dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
Thomas Spurden <thomas.spurden@...adcom.com>
Subject: Re: [PATCH 2/6] drm/v3d: Drop unused v3d_flush_caches().
It will be needed for the CSD, which does not have a way to clean the
L1T/L2T before reporting completion.
In any case it's unused now, so I don't see a problem with removing it.
On Sat, 1 Dec 2018 at 00:58, Eric Anholt <eric@...olt.net> wrote:
>
> Now that I've specified how the end-of-pipeline flushing should work,
> we're never going to use this function.
>
> Signed-off-by: Eric Anholt <eric@...olt.net>
Reviewed-by: Dave Emett <david.emett@...adcom.com>
> ---
> drivers/gpu/drm/v3d/v3d_drv.h | 1 -
> drivers/gpu/drm/v3d/v3d_gem.c | 21 ---------------------
> 2 files changed, 22 deletions(-)
>
> diff --git a/drivers/gpu/drm/v3d/v3d_drv.h b/drivers/gpu/drm/v3d/v3d_drv.h
> index bcd3d567bec2..239b56d76f3e 100644
> --- a/drivers/gpu/drm/v3d/v3d_drv.h
> +++ b/drivers/gpu/drm/v3d/v3d_drv.h
> @@ -314,7 +314,6 @@ void v3d_exec_put(struct v3d_exec_info *exec);
> void v3d_tfu_job_put(struct v3d_tfu_job *exec);
> void v3d_reset(struct v3d_dev *v3d);
> void v3d_invalidate_caches(struct v3d_dev *v3d);
> -void v3d_flush_caches(struct v3d_dev *v3d);
>
> /* v3d_irq.c */
> void v3d_irq_init(struct v3d_dev *v3d);
> diff --git a/drivers/gpu/drm/v3d/v3d_gem.c b/drivers/gpu/drm/v3d/v3d_gem.c
> index 8b4af512450f..34103205b7cb 100644
> --- a/drivers/gpu/drm/v3d/v3d_gem.c
> +++ b/drivers/gpu/drm/v3d/v3d_gem.c
> @@ -175,20 +175,6 @@ v3d_invalidate_slices(struct v3d_dev *v3d, int core)
> V3D_SET_FIELD(0xf, V3D_SLCACTL_ICC));
> }
>
> -/* Invalidates texture L2 cachelines */
> -static void
> -v3d_invalidate_l2t(struct v3d_dev *v3d, int core)
> -{
> - V3D_CORE_WRITE(core,
> - V3D_CTL_L2TCACTL,
> - V3D_L2TCACTL_L2TFLS |
> - V3D_SET_FIELD(V3D_L2TCACTL_FLM_CLEAR, V3D_L2TCACTL_FLM));
> - if (wait_for(!(V3D_CORE_READ(core, V3D_CTL_L2TCACTL) &
> - V3D_L2TCACTL_L2TFLS), 100)) {
> - DRM_ERROR("Timeout waiting for L2T invalidate\n");
> - }
> -}
> -
> void
> v3d_invalidate_caches(struct v3d_dev *v3d)
> {
> @@ -199,13 +185,6 @@ v3d_invalidate_caches(struct v3d_dev *v3d)
> v3d_flush_l2t(v3d, 0);
> }
>
> -void
> -v3d_flush_caches(struct v3d_dev *v3d)
> -{
> - v3d_invalidate_l1td(v3d, 0);
> - v3d_invalidate_l2t(v3d, 0);
> -}
> -
> static void
> v3d_attach_object_fences(struct v3d_bo **bos, int bo_count,
> struct dma_fence *fence)
> --
> 2.20.0.rc1
>
Powered by blists - more mailing lists