[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAF6AEGu_vmR1N9C=1BQ21kk4w-tz6n3j-Sv14RoqbkxAeNUsvw@mail.gmail.com>
Date: Fri, 1 Nov 2024 09:05:04 -0700
From: Rob Clark <robdclark@...il.com>
To: Kieran Bingham <kieran.bingham@...asonboard.com>
Cc: "Bryan O'Donoghue" <bryan.odonoghue@...aro.org>, Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>,
Depeng Shao <quic_depengs@...cinc.com>, Vikram Sharma <quic_vikramsa@...cinc.com>,
Vladimir Zapolskiy <vladimir.zapolskiy@...aro.org>, linux-arm-msm@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
Laurent Pinchart <laurent.pinchart@...asonboard.com>
Subject: Re: [PATCH 6/6] arm64: dts: qcom: sdm845-db845c-navigation-mezzanine:
Add cma heap for libcamera softisp support
On Fri, Nov 1, 2024 at 8:18 AM Kieran Bingham
<kieran.bingham@...asonboard.com> wrote:
>
> +Cc Laurent
>
> Quoting Rob Clark (2024-11-01 12:33:44)
> > On Fri, Oct 25, 2024 at 8:49 AM Bryan O'Donoghue
> > <bryan.odonoghue@...aro.org> wrote:
> > >
> > > libcamera softisp requires a linux,cma heap export in order to support
> > > user-space debayering, 3a and export to other system components such as
> > > pipewire, Firefox/Chromium - Hangouts, Zoom etc.
> >
> > AFAIU libcamera could use udmabuf, etc, and there is no hw requirement
> > for CMA. So it doesn't seem we should be adding this to dt. And I'd
> > really prefer that we not be using CMA just for lolz.
>
> I agree here. Otherwise this theoretically locks this memory to the pool
> 'forever'. It's not something we should define in device tree.
>
> udmabuf provides a means to get memfd allocated memory which is not
> physically contiguous - but /is/ managed by a dmabuf handle.
>
> Presently with SoftISP being CPU only - physically contiguous memory is
> not required.
>
> Bryan, will this still be true when you have a GPU based ISP ? Will that
> require physically contiguous memory ? Or will the mapping into the GPU
> handle any required translations?
GPU does not require phys contiguous. OTOH it may/will impose some
layout constraints.
I'm kinda leaning towards teaching gbm to allocate YUV plus add a
GBO_BO_USE_CPU usage bit if softisp also needs CPU access. (Modern
adreno can do cached-coherent buffers, at some small performance cost,
so that CPU access doesn't have to fall off a cliff.) But that
doesn't exist yet.
BR,
-R
>
> --
> Kieran
>
>
> >
> > BR,
> > -R
> >
> > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@...aro.org>
> > > ---
> > > .../boot/dts/qcom/sdm845-db845c-navigation-mezzanine.dtso | 11 +++++++++++
> > > 1 file changed, 11 insertions(+)
> > >
> > > diff --git a/arch/arm64/boot/dts/qcom/sdm845-db845c-navigation-mezzanine.dtso b/arch/arm64/boot/dts/qcom/sdm845-db845c-navigation-mezzanine.dtso
> > > index d62a20f018e7a7e1c7e77f0c927c2d9fe7ae8509..c8507afcd1e0d1f9b14b6e4edcbc646032e7b6c9 100644
> > > --- a/arch/arm64/boot/dts/qcom/sdm845-db845c-navigation-mezzanine.dtso
> > > +++ b/arch/arm64/boot/dts/qcom/sdm845-db845c-navigation-mezzanine.dtso
> > > @@ -9,6 +9,17 @@
> > > #include <dt-bindings/clock/qcom,camcc-sdm845.h>
> > > #include <dt-bindings/gpio/gpio.h>
> > >
> > > +/ {
> > > + reserved-memory {
> > > + linux,cma {
> > > + compatible = "shared-dma-pool";
> > > + size = <0x0 0x8000000>;
> > > + reusable;
> > > + linux,cma-default;
> > > + };
> > > + };
> > > +};
> > > +
> > > &camss {
> > > vdda-phy-supply = <&vreg_l1a_0p875>;
> > > vdda-pll-supply = <&vreg_l26a_1p2>;
> > >
> > > --
> > > 2.47.0
> > >
> > >
Powered by blists - more mailing lists