From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To: Krzysztof Kozlowski <krzk@kernel.org>,
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Cc: Vikash Garodia <quic_vgarodia@quicinc.com>,
Dikshita Agarwal <quic_dikshita@quicinc.com>,
Abhinav Kumar <abhinav.kumar@linux.dev>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
linux-media@vger.kernel.org, linux-arm-msm@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 0/5] Introduce "non-pixel" sub node within iris video node
Date: Thu, 3 Jul 2025 17:28:38 +0200 [thread overview]
Message-ID: <6840d462-8269-4359-a6e5-d154842b62db@oss.qualcomm.com> (raw)
In-Reply-To: <7da769b4-88e9-401f-bb21-0ff123818b9c@kernel.org>
On 03-Jul-25 14:54, Krzysztof Kozlowski wrote:
> On 03/07/2025 14:38, Konrad Dybcio wrote:
>>
>>
>> On 03-Jul-25 09:27, Krzysztof Kozlowski wrote:
>>> On 03/07/2025 00:26, Dmitry Baryshkov wrote:
>>>> On Wed, Jul 02, 2025 at 01:06:17PM +0100, Bryan O'Donoghue wrote:
>>>>> On 02/07/2025 13:01, Vikash Garodia wrote:
>>>>>>> Anyway, in other messages I explained what is missing. You are changing
>>>>>>> existing hardware and you clearly must explain how existing hardware is
>>>>>>> affected, how can we reproduce it, how users are affected.
>>>>>> Exactly all of these i have explained in the commit message. The limitation with
>>>>>> existing hardware binding usage and how my new approach mitigates that limition.
>>>>>>
>>>>>> Coming to usecase, i made a generic comment saying usecases which needs higher
>>>>>> IOVA, i can add the explicit detail about usecase like 8k or higher
>>>>>> concurrencies like 32 or higher concurrent sessions.
>>>>>
>>>>> Why not make this change for a new SoC, instead of an existing ?
>>>>
>>>> Because we definitely want to improve support for older SoCs too.
>>>
>>> Older SoCs came with completely new drivers and bindings, instead of
>>> evolving existing Venus, so they for sure came with correct code and
>>> correct binding.
>>
>> No, this is a terrible assumption to make, and we've been
>> through this time and time again - a huge portion of the code
>> submitted in the early days of linux-arm-msm did the bare minimum
>
> We do not talk about early days of linux-arm-msm, but latest where they
> rejected existing venus drivers and instead insisted on completely new
> driver iris. This is a new code, so how early days are applicable?
>
>> to present a feature, without giving much thought to the sanity of
>> hw description, be it on a block or platform level.
>
> You are saying that iris driver was again shoved without any sanity? It
> should have never been merged then. Better to grow existing insanity
> than allow to have two insanities - old venus and new iris.
Iris was created with the hard requirement of being compatible with the
bindings previously consumed by Venus. I think the logical consequences
of that are rather clear.
Perhaps you're saying that the binding for "newer" ("not previously
supported by venus") platforms should have included that from the start,
and I agree, that would have been better, but hindsight's always 20/20.
On a flip side, any additional requirements we talk about here, also
apply (in reality/hw, not talking about current bindings/driver state) to
every single "older" platform as well, and skipping them is pushing your
luck every time you access the hardware.
I also don't think it's fair to leave them in a permanently-suboptimal
state just because the initial submission wasn't forward-looking to
these previously-unimplemented requirements. I'd even say that if we
want to fix it, we should do it sooner than later, before the bindings
age and get more users that would care about breakage.
Comparing against downstream, I only really see IOMMU specifics (binding
SIDs to a PA range, which this series touches upon plus ensuring secure
buffers are associated with a specific SID, which is done basically the
same way) and (on some targets) an nvmem-cell for speedbinning.
Everything else (PDs, clks, icc, irq, etc.), we've already covered.
>> That's why we're still adding clocks to mdss, regulators to camera
>> etc. etc. to this day. And it's only going to get worse when there
>> will be a need or will to add S2disk support with register
>
> We speak about iris here only.
Sure, I'm using the other ones as an example to show you the actual
root cause of the problem. It's the same "the initial bindings
submission was not perfect and to make better use of the hardware, we
need to describe more resources / describe them more precisely"
problem that pops up every now and then and is actually difficult
to prevent.
Maybe we can have some sort of a broader conversation about whether
bindings from before SOME_DATE or e.g. not older than N kernel releases
back should be deemed volatile, but that is a story for another day.
Back to the point, I actually think what this patchset does is
resonable, especially given the address range and SMMU SID requirements
that the OS *must* be aware of (or the device will crash after a
translation fault / security violation).
Konrad
next prev parent reply other threads:[~2025-07-03 15:28 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-27 15:48 [PATCH v3 0/5] Introduce "non-pixel" sub node within iris video node Vikash Garodia
2025-06-27 15:48 ` [PATCH v3 1/5] media: dt-bindings: add non-pixel property in iris schema Vikash Garodia
2025-06-27 16:31 ` Bryan O'Donoghue
2025-06-27 17:16 ` Vikash Garodia
2025-06-30 15:48 ` neil.armstrong
2025-06-30 15:56 ` Neil Armstrong
2025-07-02 11:13 ` Krzysztof Kozlowski
2025-07-02 11:32 ` Vikash Garodia
2025-07-02 11:46 ` Krzysztof Kozlowski
2025-07-02 13:11 ` Konrad Dybcio
2025-07-02 13:59 ` Krzysztof Kozlowski
2025-07-02 16:36 ` Vikash Garodia
2025-07-02 20:16 ` Krzysztof Kozlowski
2025-07-03 10:11 ` Konrad Dybcio
2025-07-03 7:29 ` Krzysztof Kozlowski
2025-07-02 11:23 ` Krzysztof Kozlowski
2025-07-02 11:45 ` Vikash Garodia
2025-07-02 11:47 ` Krzysztof Kozlowski
2025-07-02 11:55 ` Vikash Garodia
2025-07-02 11:58 ` Krzysztof Kozlowski
2025-07-02 12:08 ` Vikash Garodia
2025-07-02 12:11 ` Krzysztof Kozlowski
2025-06-27 15:48 ` [PATCH v3 2/5] media: iris: register and configure non-pixel node as platform device Vikash Garodia
2025-06-27 17:01 ` Bryan O'Donoghue
2025-07-02 11:04 ` Krzysztof Kozlowski
2025-07-02 11:39 ` Vikash Garodia
2025-07-02 12:45 ` Konrad Dybcio
2025-06-27 15:48 ` [PATCH v3 3/5] media: iris: use np_dev as preferred DMA device in HFI queue management Vikash Garodia
2025-06-27 17:03 ` Bryan O'Donoghue
2025-06-27 15:48 ` [PATCH v3 4/5] media: iris: select appropriate DMA device for internal buffers Vikash Garodia
2025-06-27 17:07 ` Bryan O'Donoghue
2025-06-27 15:48 ` [PATCH v3 5/5] media: iris: configure DMA device for vb2 queue on OUTPUT plane Vikash Garodia
2025-06-27 17:08 ` Bryan O'Donoghue
2025-06-30 7:58 ` Vikash Garodia
2025-07-01 12:04 ` Konrad Dybcio
2025-06-27 16:30 ` [PATCH v3 0/5] Introduce "non-pixel" sub node within iris video node Bryan O'Donoghue
2025-06-27 17:00 ` Vikash Garodia
2025-07-02 11:05 ` Krzysztof Kozlowski
2025-06-30 15:55 ` neil.armstrong
2025-06-30 18:04 ` neil.armstrong
2025-07-01 8:42 ` Konrad Dybcio
2025-07-01 10:23 ` Vikash Garodia
2025-07-01 13:19 ` Neil Armstrong
2025-07-01 16:11 ` Vikash Garodia
2025-07-02 7:59 ` Neil Armstrong
2025-07-02 11:06 ` Krzysztof Kozlowski
2025-07-02 11:18 ` Krzysztof Kozlowski
2025-07-02 11:37 ` Vikash Garodia
2025-07-02 11:52 ` Krzysztof Kozlowski
2025-07-02 11:54 ` Krzysztof Kozlowski
2025-07-02 12:01 ` Vikash Garodia
2025-07-02 12:05 ` Krzysztof Kozlowski
2025-07-02 12:57 ` Vikash Garodia
2025-07-02 12:06 ` Bryan O'Donoghue
2025-07-02 22:26 ` Dmitry Baryshkov
2025-07-03 7:27 ` Krzysztof Kozlowski
2025-07-03 12:38 ` Konrad Dybcio
2025-07-03 12:54 ` Krzysztof Kozlowski
2025-07-03 15:28 ` Konrad Dybcio [this message]
2025-07-03 20:28 ` Bryan O'Donoghue
2025-07-03 21:23 ` Dmitry Baryshkov
2025-07-04 8:23 ` Bryan O'Donoghue
2025-07-04 10:28 ` Konrad Dybcio
2025-07-04 16:45 ` Dmitry Baryshkov
2025-07-04 22:44 ` Bryan O'Donoghue
2025-07-10 18:18 ` Prakash Gupta
2025-07-15 12:15 ` Konrad Dybcio
2025-07-04 19:15 ` Vikash Garodia
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=6840d462-8269-4359-a6e5-d154842b62db@oss.qualcomm.com \
--to=konrad.dybcio@oss.qualcomm.com \
--cc=abhinav.kumar@linux.dev \
--cc=bryan.odonoghue@linaro.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=quic_dikshita@quicinc.com \
--cc=quic_vgarodia@quicinc.com \
--cc=robh@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).