From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Loic Poulain <loic.poulain@oss.qualcomm.com>
Cc: Bryan O'Donoghue <bod@kernel.org>,
vladimir.zapolskiy@linaro.org, kieran.bingham@ideasonboard.com,
robh@kernel.org, krzk+dt@kernel.org, andersson@kernel.org,
konradybcio@kernel.org, linux-media@vger.kernel.org,
linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, johannes.goede@oss.qualcomm.com,
mchehab@kernel.org
Subject: Re: [RFC PATCH 0/3] media: qcom: camss: CAMSS Offline Processing Engine support
Date: Sun, 5 Apr 2026 22:48:51 +0300 [thread overview]
Message-ID: <20260405194851.GA3972481@killaraus.ideasonboard.com> (raw)
In-Reply-To: <CAFEp6-2NniQquVrw_V8P_cyUayMMY0SPC8hgczjB3ef5zx7e5A@mail.gmail.com>
On Tue, Mar 24, 2026 at 05:16:21PM +0100, Loic Poulain wrote:
> On Tue, Mar 24, 2026 at 1:54 PM Bryan O'Donoghue wrote:
> > On 23/03/2026 12:58, Loic Poulain wrote:
> > > This first version is intentionally minimalistic. It provides a working
> > > configuration using a fixed set of static processing parameters, mainly
> > > to achieve correct and good-quality debayering.
> >
> > You need the other 50% of the kernel side - the generation of bayer
> > statistics in the IFE, as well as generation of parameters to feed back
> > into the OPE - which requires a user-space implementation too, so a lot
> > of work there too.
> >
> > I'd also say when we have an ICP we should be using it via the HFI
> > protocol, thus burying all of the IPE/OPE BPS and CDM complexity in the
> > firmware.
> >
> > Understood Agatti has no ICP so you're limited to direct OPE/IFE
> > register access here. For HFI capable platforms - the majority - HFI is
> > the way to go.
>
> Fully agree, this is exactly the point where we should sync and work
> together on a proper solution.
I don't necessarily agree with that. There are pros and cons for using
HFI on platforms that have an ICP. If correctly written, a firmware can
improve the throughput in multi-camera use cases by reprogramming the
time-multiplexed OPE faster. On the other hand, in use cases that don't
require pushing the platform to its limits, dealing with a closed-source
firmware often causes lots of issues.
We should aim at supporting both direct ISP access and HFI with the same
userspace API, even on a single platform. Which option to start with is
an open question that we should discuss.
> As a follow‑up to this RFC, I already have several ongoing pieces that
> aim to generalize the CAMSS ISP support, and I’d very much like to
> discuss them with you:
>
> - camss-isp-m2m: Generic M2M scheduling framework handling job dispatch
> based on buffer readiness and enabled endpoints (frame input, output,
> statistics, parameters).
This should be generic, not limited to camss. v4l2-isp is a good
candidate.
> - camss-isp-pipeline: Helper layer to construct complex media/ISP graphs
> from a structural description (endpoints, links, etc.).
That also doesn't seem specific to camss.
> - camss-isp-params: Generic helper for handling ISP parameter buffers
> (using v4l2-isp-params).
I'm curious to know what camss-specific helpers you envision there.
> - camss-isp-stats: Generic helper framework for CAMSS statistics devices.
Same.
> - camss-(isp-)ope: OPE‑specific logic only (register configuration, IRQ
> handling, parameter‑to‑register translation).
>
> This approach should significantly reduce the amount of
> platform‑specific code required for future ISP blocks. It should also
> allow you to integrate a camss-isp-hamoa (or similar) backend, or even
> a camss-isp-hfi implementation for the M2M functions, without
> duplicating the infrastructure.
>
> So yes, let’s sync and agree on a shared/open development model and an
> overall direction, possibly even a common tree, to ensure we stay
> aligned and can collaborate effectively.
Let's schedule a call to kickstart those discussions. Many people are on
Easter vacation this week, next week could be a good candidate.
> > I'll publish an RFC for Hamoa for that soonish so we can make sure both
> > coexist.
>
> Ack.
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2026-04-05 19:48 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <xy6TKmdveRx4cMshSHEUGZ7s3lbsurWcsc2vq05A7_N4bCialR7EelZitouugtZDkpFCAghjqY4NDdSQEIPprw==@protonmail.internalid>
2026-03-23 12:58 ` [RFC PATCH 0/3] media: qcom: camss: CAMSS Offline Processing Engine support Loic Poulain
2026-03-23 12:58 ` [RFC PATCH 1/3] dt-bindings: media: qcom: Add CAMSS Offline Processing Engine (OPE) Loic Poulain
2026-03-23 13:03 ` Krzysztof Kozlowski
2026-03-23 16:03 ` Loic Poulain
2026-03-23 16:10 ` Krzysztof Kozlowski
2026-03-23 13:03 ` Bryan O'Donoghue
2026-03-23 12:58 ` [RFC PATCH 2/3] media: qcom: camss: Add CAMSS Offline Processing Engine driver Loic Poulain
2026-03-23 13:43 ` Bryan O'Donoghue
2026-03-23 15:31 ` Loic Poulain
2026-03-24 11:00 ` Bryan O'Donoghue
2026-03-24 15:57 ` Loic Poulain
2026-03-24 21:27 ` Dmitry Baryshkov
2026-03-26 12:06 ` johannes.goede
2026-03-30 11:37 ` Dmitry Baryshkov
2026-03-30 13:46 ` johannes.goede
2026-03-30 14:11 ` Bryan O'Donoghue
2026-03-30 14:27 ` johannes.goede
2026-03-30 14:32 ` Bryan O'Donoghue
2026-03-30 18:59 ` Dmitry Baryshkov
2026-03-30 19:07 ` Loic Poulain
2026-04-05 20:23 ` Laurent Pinchart
2026-03-30 18:55 ` Dmitry Baryshkov
2026-03-30 22:51 ` Bryan O'Donoghue
2026-03-31 8:11 ` Konrad Dybcio
2026-04-05 20:14 ` Laurent Pinchart
2026-03-25 9:30 ` Konrad Dybcio
2026-04-05 20:11 ` Laurent Pinchart
2026-04-05 20:15 ` Bryan O'Donoghue
2026-04-05 20:24 ` Laurent Pinchart
2026-04-05 20:28 ` Bryan O'Donoghue
2026-03-25 17:08 ` kernel test robot
2026-03-25 18:10 ` kernel test robot
2026-03-25 21:08 ` kernel test robot
2026-08-13 22:33 ` sashiko-bot
2026-03-23 12:58 ` [RFC PATCH 3/3] arm64: dts: qcom: qcm2290: Add CAMSS OPE node Loic Poulain
2026-03-23 13:03 ` Bryan O'Donoghue
2026-03-23 13:24 ` Konrad Dybcio
2026-03-23 13:33 ` Bryan O'Donoghue
2026-03-23 16:15 ` Krzysztof Kozlowski
2026-03-24 10:30 ` Bryan O'Donoghue
2026-03-23 16:31 ` Loic Poulain
2026-03-24 10:43 ` Konrad Dybcio
2026-03-24 12:54 ` [RFC PATCH 0/3] media: qcom: camss: CAMSS Offline Processing Engine support Bryan O'Donoghue
2026-03-24 16:16 ` Loic Poulain
2026-04-05 19:48 ` Laurent Pinchart [this message]
2026-04-05 19:55 ` Bryan O'Donoghue
2026-04-05 20:47 ` Laurent Pinchart
2026-04-05 21:29 ` Bryan O'Donoghue
2026-04-05 23:02 ` Bryan O'Donoghue
2026-04-06 13:22 ` Loic Poulain
2026-04-05 19:57 ` Laurent Pinchart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260405194851.GA3972481@killaraus.ideasonboard.com \
--to=laurent.pinchart@ideasonboard.com \
--cc=andersson@kernel.org \
--cc=bod@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=johannes.goede@oss.qualcomm.com \
--cc=kieran.bingham@ideasonboard.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=loic.poulain@oss.qualcomm.com \
--cc=mchehab@kernel.org \
--cc=robh@kernel.org \
--cc=vladimir.zapolskiy@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.