[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56d4e911-5bec-458e-acd1-3594a6d8b91d@kernel.org>
Date: Fri, 18 Jul 2025 12:04:54 +0200
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Konrad Dybcio <konrad.dybcio@....qualcomm.com>,
Jorge Ramirez <jorge.ramirez@....qualcomm.com>
Cc: Bryan O'Donoghue <bryan.odonoghue@...aro.org>, quic_vgarodia@...cinc.com,
quic_dikshita@...cinc.com, krzk+dt@...nel.org, konradybcio@...nel.org,
mchehab@...nel.org, andersson@...nel.org, conor+dt@...nel.org,
amit.kucheria@....qualcomm.com, linux-media@...r.kernel.org,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v7 1/7] media: dt-bindings: venus: Add qcm2290 dt schema
On 18/07/2025 12:02, Konrad Dybcio wrote:
> On 7/18/25 8:27 AM, Krzysztof Kozlowski wrote:
>> On 17/07/2025 19:00, Jorge Ramirez wrote:
>>> On 17/07/25 13:16:31, Jorge Ramirez wrote:
>>>> On 17/07/25 08:45:17, Krzysztof Kozlowski wrote:
>>>>> On 17/07/2025 08:35, Jorge Ramirez wrote:
>>>>>> On 17/07/25 00:22:53, Bryan O'Donoghue wrote:
>>>>>>> On 15/07/2025 21:47, Jorge Ramirez-Ortiz wrote:
>>>>>>>> Add a schema for the venus video encoder/decoder on the qcm2290.
>>>>>>>>
>>>>>>>> Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@....qualcomm.com>
>>>>>>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
>>>>>>>> Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@...aro.org>
>>>>>>>> ---
>>>>>>>> .../bindings/media/qcom,qcm2290-venus.yaml | 127 ++++++++++++++++++
>>>>>>>> 1 file changed, 127 insertions(+)
>>>>>>>> create mode 100644 Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml
>>>>>>>>
>>>>>>>> diff --git a/Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml b/Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml
>>>>>>>> new file mode 100644
>>>>>>>> index 000000000000..0371f8dd91a3
>>>>>>>> --- /dev/null
>>>>>>>> +++ b/Documentation/devicetree/bindings/media/qcom,qcm2290-venus.yaml
>>>>>>>> @@ -0,0 +1,127 @@
>>>>>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>>>>>> +%YAML 1.2
>>>>>>>> +---
>>>>>>>> +$id: http://devicetree.org/schemas/media/qcom,qcm2290-venus.yaml#
>>>>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>>>>>> +
>>>>>>>> +title: Qualcomm QCM2290 Venus video encode and decode accelerators
>>>>>>>> +
>>>>>>>> +maintainers:
>>>>>>>> + - Vikash Garodia <quic_vgarodia@...cinc.com>
>>>>>>>
>>>>>>> Shouldn't you be on this list ? If you upstream a file I think you should
>>>>>>> list yourself as responsible for its glory or its mess.
>>>>>>
>>>>>> happy to do it. The MAINTAINER's file covered all the files named
>>>>>
>>>>> This should be the person(s) interested and caring about this hardware,
>>>>> which means:
>>>>> 1. Subsystem maintainers: no
>>>>> 2. Driver maintainers: usually yes
>>>>> 3. Author(s) of new hardware support: usually yes
>>>>
>>>> perfect, will do
>>>>
>>>>>
>>>>>> schemas/media/*venus* so my understanding was that I shouldn't.
>>>>>
>>>>> I cannot comment why people decided to go one way or another in other
>>>>> code, but it as well could be just incorrect choice thinking only people
>>>>> in MAINTAINERS care about hardware.
>>>>>
>>>>> ...
>>>>>
>>>>>>>> +
>>>>>>>> + memory-region = <&pil_video_mem>;
>>>>>>>> + iommus = <&apps_smmu 0x860 0x0>,
>>>>>>>> + <&apps_smmu 0x880 0x0>,
>>>>>>>> + <&apps_smmu 0x861 0x04>,
>>>>>>>> + <&apps_smmu 0x863 0x0>,
>>>>>>>> + <&apps_smmu 0x804 0xe0>;
>>>>>>>
>>>>>>> You're listing five iommus.
>>>>>>>
>>>>>>> I understand there's some disagreement about whether or not to list all of
>>>>>>> the potential use-cases but, TBH I don't think those are good arguments.
>>>>>>>
>>>>>>> Unless there's some technical prohibition I can't think of listing all five
>>>>>>> maxItems:5 .. let's just do that.
>>>>>>
>>>>>> since the device tree should describe hardware and not policy, and the
>>>>>> driver seems to be able to ignore the unused SIDs I think this is the
>>>>>> right thing to do.
>>>>>
>>>>>
>>>>> It was never about the driver but about whether you should describe in
>>>>> DTS for non-secure world the entries which are secure world. The answer
>>>>> in general is that you can and there will be benefits (e.g. sharing DTS
>>>>> with secure world implementations).
>>>>
>>>> all right, sounds good then, thanks
>>>
>>> Not sure if I’ve shared this before, but following an internal
>>> discussion, I think it’s worth highlighting a functional dependency in
>>> the current kernel:
>>>
>>> - the driver only works if the first two IOMMUs in the list — the
>>> non-secure ones — are placed at the beginning. Reordering them breaks
>>> functionality, which introduces unexpected fragility.
>>>
>>> Regardless, this seems like a valid concern to me — a driver shouldn't
>>> rely on the order of phandles — and I just wanted to make sure you're
>>> aware of it before I post a v8 (likely sometime next week or the
>>> following, as I’ll be taking a short break soon).
>>
>>
>> Hm? Order of lists is strictly defined. That's actually an overlook that
>> we never do it for iommus, but the core rule stays.
>
> (FWIW "items:" is an ordered list, "enum:" is unordered)
enum is not a list, but enumeration, meaning one item of multiple values.
Best regards,
Krzysztof
Powered by blists - more mailing lists