[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CANMq1KBHu6CWsF0hhhxjWK81B+K0BbrVzbKvuwVgcDGO8SBUVg@mail.gmail.com>
Date: Fri, 10 Jan 2020 11:30:25 +0800
From: Nicolas Boichat <drinkcat@...omium.org>
To: Alyssa Rosenzweig <alyssa.rosenzweig@...labora.com>
Cc: Steven Price <steven.price@....com>,
Daniel Vetter <daniel@...ll.ch>,
David Airlie <airlied@...ux.ie>, Rob Herring <robh@...nel.org>,
Tomeu Vizoso <tomeu.vizoso@...labora.com>,
dri-devel <dri-devel@...ts.freedesktop.org>,
lkml <linux-kernel@...r.kernel.org>,
Robin Murphy <robin.murphy@....com>
Subject: Re: [PATCH] drm/panfrost: Remove core stack power management
On Thu, Jan 9, 2020 at 9:44 PM Alyssa Rosenzweig
<alyssa.rosenzweig@...labora.com> wrote:
>
> A-b
>
> On Thu, Jan 09, 2020 at 01:31:04PM +0000, Steven Price wrote:
> > Explict management of the GPU's core stacks is only necessary in the
> > case of a broken integration with the PDC. Since there are no known
> > platforms which have such a broken integration let's remove the explict
> > control from the driver since this apparently causes problems on other
> > platforms and will have a small performance penality.
> >
> > The out of tree mali_kbase driver contains this text regarding
> > controlling the core stack (CONFIGMALI_CORESTACK):
> >
> > Enabling this feature on supported GPUs will let the driver powering
> > on/off the GPU core stack independently without involving the Power
> > Domain Controller. This should only be enabled on platforms which
> > integration of the PDC to the Mali GPU is known to be problematic.
> > This feature is currently only supported on t-Six and t-HEx GPUs.
> >
> > If unsure, say N.
> >
Work on my G-72 Bifrost, no more errors on power on!
Reviewed-by: Nicolas Boichat <drinkcat@...omium.org>
Tested-by: Nicolas Boichat <drinkcat@...omium.org>
> > Signed-off-by: Steven Price <steven.price@....com>
> > ---
> > drivers/gpu/drm/panfrost/panfrost_gpu.c | 5 -----
> > 1 file changed, 5 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/panfrost/panfrost_gpu.c b/drivers/gpu/drm/panfrost/panfrost_gpu.c
> > index 8822ec13a0d6..460fc190de6e 100644
> > --- a/drivers/gpu/drm/panfrost/panfrost_gpu.c
> > +++ b/drivers/gpu/drm/panfrost/panfrost_gpu.c
> > @@ -309,10 +309,6 @@ void panfrost_gpu_power_on(struct panfrost_device *pfdev)
> > ret = readl_relaxed_poll_timeout(pfdev->iomem + L2_READY_LO,
> > val, val == pfdev->features.l2_present, 100, 1000);
> >
> > - gpu_write(pfdev, STACK_PWRON_LO, pfdev->features.stack_present);
> > - ret |= readl_relaxed_poll_timeout(pfdev->iomem + STACK_READY_LO,
> > - val, val == pfdev->features.stack_present, 100, 1000);
> > -
> > gpu_write(pfdev, SHADER_PWRON_LO, pfdev->features.shader_present);
> > ret |= readl_relaxed_poll_timeout(pfdev->iomem + SHADER_READY_LO,
> > val, val == pfdev->features.shader_present, 100, 1000);
> > @@ -329,7 +325,6 @@ void panfrost_gpu_power_off(struct panfrost_device *pfdev)
> > {
> > gpu_write(pfdev, TILER_PWROFF_LO, 0);
> > gpu_write(pfdev, SHADER_PWROFF_LO, 0);
> > - gpu_write(pfdev, STACK_PWROFF_LO, 0);
> > gpu_write(pfdev, L2_PWROFF_LO, 0);
> > }
> >
> > --
> > 2.20.1
> >
Powered by blists - more mailing lists