[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAE-0n52TG3hsytN5nRU7W=S6PffSj8yQDmuicN0-qxoW-jxiZQ@mail.gmail.com>
Date: Tue, 19 Jul 2022 01:49:23 -0400
From: Stephen Boyd <swboyd@...omium.org>
To: Akhil P Oommen <quic_akhilpo@...cinc.com>,
Doug Anderson <dianders@...omium.org>,
Taniya Das <quic_tdas@...cinc.com>, quic_rjendra@...cinc.com
Cc: devicetree@...r.kernel.org, Jonathan Marek <jonathan@...ek.ca>,
linux-arm-msm <linux-arm-msm@...r.kernel.org>,
Andy Gross <agross@...nel.org>,
dri-devel <dri-devel@...ts.freedesktop.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Rob Clark <robdclark@...il.com>,
Matthias Kaehlcke <mka@...omium.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Jordan Crouse <jordan@...micpenguin.net>,
freedreno <freedreno@...ts.freedesktop.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [Freedreno] [PATCH v2 5/7] arm64: dts: qcom: sc7280: Update gpu
register list
Quoting Akhil P Oommen (2022-07-18 21:07:05)
> On 7/14/2022 11:10 AM, Akhil P Oommen wrote:
> > On 7/12/2022 4:57 AM, Doug Anderson wrote:
> >> Hi,
> >>
> >> On Fri, Jul 8, 2022 at 11:00 PM Akhil P Oommen
> >> <quic_akhilpo@...cinc.com> wrote:
> >>> Update gpu register array with gpucc memory region.
> >>>
> >>> Signed-off-by: Akhil P Oommen <quic_akhilpo@...cinc.com>
> >>> ---
> >>>
> >>> (no changes since v1)
> >>>
> >>> arch/arm64/boot/dts/qcom/sc7280.dtsi | 6 ++++--
> >>> 1 file changed, 4 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi
> >>> b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> >>> index e66fc67..defdb25 100644
> >>> --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
> >>> +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> >>> @@ -2228,10 +2228,12 @@
> >>> compatible = "qcom,adreno-635.0",
> >>> "qcom,adreno";
> >>> reg = <0 0x03d00000 0 0x40000>,
> >>> <0 0x03d9e000 0 0x1000>,
> >>> - <0 0x03d61000 0 0x800>;
> >>> + <0 0x03d61000 0 0x800>,
> >>> + <0 0x03d90000 0 0x2000>;
> >>> reg-names = "kgsl_3d0_reg_memory",
> >>> "cx_mem",
> >>> - "cx_dbgc";
> >>> + "cx_dbgc",
> >>> + "gpucc";
> >> This doesn't seem right. Shouldn't you be coordinating with the
> >> existing gpucc instead of reaching into its registers?
> >>
> > IIUC, qcom gdsc driver doesn't ensure hardware is collapsed since they
> > are vote-able switches. Ideally, we should ensure that the hw has
> > collapsed for gpu recovery because there could be transient votes from
> > other subsystems like hypervisor using their vote register.
> >
> > I am not sure how complex the plumbing to gpucc driver would be to allow
> > gpu driver to check hw status. OTOH, with this patch, gpu driver does a
> > read operation on a gpucc register which is in always-on domain. That
> > means we don't need to vote any resource to access this register.
> >
> > Stephen/Rajendra/Taniya, any suggestion?
Why can't you assert a gpu reset signal with the reset APIs? This series
seems to jump through a bunch of hoops to get the gdsc and power domain
to "reset" when I don't know why any of that is necessary. Can't we
simply assert a reset to the hardware after recovery completes so the
device is back into a good known POR (power on reset) state?
Powered by blists - more mailing lists