From: Robert Beckett <[email protected]>
Add bindings for the wave5 chips&media codec driver
Signed-off-by: Robert Beckett <[email protected]>
Signed-off-by: Dafna Hirschfeld <[email protected]>
Signed-off-by: Sebastian Fricke <[email protected]>
---
.../devicetree/bindings/cnm,wave5.yml | 72 +++++++++++++++++++
1 file changed, 72 insertions(+)
create mode 100644 Documentation/devicetree/bindings/cnm,wave5.yml
diff --git a/Documentation/devicetree/bindings/cnm,wave5.yml b/Documentation/devicetree/bindings/cnm,wave5.yml
new file mode 100644
index 000000000000..01dddebb162e
--- /dev/null
+++ b/Documentation/devicetree/bindings/cnm,wave5.yml
@@ -0,0 +1,72 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/wave5.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Chips&Media Wave 5 Series multi-standard codec IP
+
+maintainers:
+ - Nas Chung <[email protected]>
+ - Robert Beckett <[email protected]>
+ - Sebastian Fricke <[email protected]>
+
+description: |-
+ The Chips&Media WAVE codec IP is a multi format video encoder/decoder
+
+properties:
+ compatible:
+ anyOf:
+ - items:
+ - enum:
+ - cnm,cm511-vpu
+ - cnm,cm517-vpu
+ - cnm,cm521-vpu
+ - cnm,cm521c-vpu
+ - cnm,cm521c-dual-vpu
+ - cnm,cm521e1-vpu
+ - cnm,cm537-vpu
+ reg:
+ maxItems: 1
+
+ clocks:
+ minItems: 1
+ maxItems: 4
+
+ clock-names:
+ minItems: 1
+ maxItems: 4
+
+ interrupts:
+ maxItems: 1
+
+ power-domains:
+ maxItems: 1
+
+ resets:
+ maxItems: 1
+
+ sram:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description: phandle pointing to the SRAM device node
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - clock-names
+
+additionalProperties: false
+
+examples:
+ - |
+ vpu: video-codec@12345678 {
+ compatible = "cnm,cm521-vpu";
+ reg = <0x12345678 0x1000>;
+ interrupts = <42>;
+ clocks = <&clks 42>;
+ clock-names = "vcodec";
+ sram = <&sram>;
+ };
--
2.25.1
On 07/12/2022 13:13, Sebastian Fricke wrote:
> From: Robert Beckett <[email protected]>
>
> Add bindings for the wave5 chips&media codec driver
>
> Signed-off-by: Robert Beckett <[email protected]>
> Signed-off-by: Dafna Hirschfeld <[email protected]>
> Signed-off-by: Sebastian Fricke <[email protected]>
What's happening with this patch? Where is the changelog? Why it is v11
and first time I see it? And why it is v11 with basic mistakes and lack
of testing?!? I would assume that v11 was already seen and tested...
> ---
> .../devicetree/bindings/cnm,wave5.yml | 72 +++++++++++++++++++
> 1 file changed, 72 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/cnm,wave5.yml
Wrong directory. It wasn't here at all before, so I am really confused
how this could happen.
Subject: drop redundant pieces: yaml, devicetree and bindings.
>
> diff --git a/Documentation/devicetree/bindings/cnm,wave5.yml b/Documentation/devicetree/bindings/cnm,wave5.yml
> new file mode 100644
> index 000000000000..01dddebb162e
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/cnm,wave5.yml
> @@ -0,0 +1,72 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/media/wave5.yaml#
You clearly did not test them before sending.
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Chips&Media Wave 5 Series multi-standard codec IP
> +
> +maintainers:
> + - Nas Chung <[email protected]>
> + - Robert Beckett <[email protected]>
> + - Sebastian Fricke <[email protected]>
> +
> +description: |-
> + The Chips&Media WAVE codec IP is a multi format video encoder/decoder
> +
> +properties:
> + compatible:
> + anyOf:
Please start from example-schema or other recently approved bindings. No
anyOf.
> + - items:
No items...
> + - enum:
> + - cnm,cm511-vpu
> + - cnm,cm517-vpu
> + - cnm,cm521-vpu
> + - cnm,cm521c-vpu
> + - cnm,cm521c-dual-vpu
What's the difference between this and one above?
> + - cnm,cm521e1-vpu
> + - cnm,cm537-vpu
> + reg:
> + maxItems: 1
> +
> + clocks:
> + minItems: 1
> + maxItems: 4
This has to be specific.
> +
> + clock-names:
> + minItems: 1
> + maxItems: 4
You need to list the names.
> +
> + interrupts:
> + maxItems: 1
> +
> + power-domains:
> + maxItems: 1
> +
> + resets:
> + maxItems: 1
> +
> + sram:
Missing vendor prefix.
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description: phandle pointing to the SRAM device node
And what is it for? Why do you need SRAM?
> + maxItems: 1
Drop
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - clocks
> + - clock-names
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + vpu: video-codec@12345678 {
> + compatible = "cnm,cm521-vpu";
> + reg = <0x12345678 0x1000>;
> + interrupts = <42>;
> + clocks = <&clks 42>;
> + clock-names = "vcodec";
> + sram = <&sram>;
> + };
Best regards,
Krzysztof
On 07/12/2022 13:31, Krzysztof Kozlowski wrote:
> On 07/12/2022 13:13, Sebastian Fricke wrote:
>> From: Robert Beckett <[email protected]>
>>
>> Add bindings for the wave5 chips&media codec driver
>>
>> Signed-off-by: Robert Beckett <[email protected]>
>> Signed-off-by: Dafna Hirschfeld <[email protected]>
>> Signed-off-by: Sebastian Fricke <[email protected]>
>
> What's happening with this patch? Where is the changelog? Why it is v11
> and first time I see it? And why it is v11 with basic mistakes and lack
> of testing?!? I would assume that v11 was already seen and tested...
>
>
>> ---
>> .../devicetree/bindings/cnm,wave5.yml | 72 +++++++++++++++++++
>> 1 file changed, 72 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/cnm,wave5.yml
>
> Wrong directory. It wasn't here at all before, so I am really confused
> how this could happen.
>
> Subject: drop redundant pieces: yaml, devicetree and bindings.
>
>
>>
>> diff --git a/Documentation/devicetree/bindings/cnm,wave5.yml b/Documentation/devicetree/bindings/cnm,wave5.yml
>> new file mode 100644
>> index 000000000000..01dddebb162e
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/cnm,wave5.yml
>> @@ -0,0 +1,72 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/media/wave5.yaml#
>
> You clearly did not test them before sending.
>
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Chips&Media Wave 5 Series multi-standard codec IP
>> +
>> +maintainers:
>> + - Nas Chung <[email protected]>
>> + - Robert Beckett <[email protected]>
>> + - Sebastian Fricke <[email protected]>
>> +
>> +description: |-
>> + The Chips&Media WAVE codec IP is a multi format video encoder/decoder
>> +
>> +properties:
>> + compatible:
>> + anyOf:
>
> Please start from example-schema or other recently approved bindings. No
> anyOf.
>
>> + - items:
>
> No items...
>
>> + - enum:
>> + - cnm,cm511-vpu
>> + - cnm,cm517-vpu
>> + - cnm,cm521-vpu
>> + - cnm,cm521c-vpu
>> + - cnm,cm521c-dual-vpu
>
> What's the difference between this and one above?
>
>> + - cnm,cm521e1-vpu
>> + - cnm,cm537-vpu
One more question - why "vpu" suffixes?
Best regards,
Krzysztof
Hello Krzysztof,
On 07.12.2022 13:31, Krzysztof Kozlowski wrote:
>On 07/12/2022 13:13, Sebastian Fricke wrote:
>> From: Robert Beckett <[email protected]>
>>
>> Add bindings for the wave5 chips&media codec driver
>>
>> Signed-off-by: Robert Beckett <[email protected]>
>> Signed-off-by: Dafna Hirschfeld <[email protected]>
>> Signed-off-by: Sebastian Fricke <[email protected]>
>
>What's happening with this patch? Where is the changelog?
The changelog is located in the cover letter.
https://lore.kernel.org/linux-media/[email protected]/
>Why it is v11 and first time I see it?
You actually replied to V10:
https://lore.kernel.org/linux-media/20221023085341.s23qinjuw4qls3dn@basti-XPS-13-9310/
>And why it is v11 with basic mistakes and lack of testing?!?
>I would assume that v11 was already seen and tested...
Sorry I don't have a lot of experience with dt-bindings, thank you for
highlighting the issues, I will correct them. And I forgot to build the
documentation during my testing runs.
I took over the patch set from another contributor and as no one
complained about the dt-bindings for the last 10 versions, I concentrated
my energy on other problems.
>
>
>> ---
>> .../devicetree/bindings/cnm,wave5.yml | 72 +++++++++++++++++++
>> 1 file changed, 72 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/cnm,wave5.yml
>
>Wrong directory. It wasn't here at all before, so I am really confused
>how this could happen.
Thanks for the highlight.
I will move it to:
Documentation/devicetree/bindings/media/cnm,wave5.yml
>
>Subject: drop redundant pieces: yaml, devicetree and bindings.
I call it:
dt-bindings: media: chips-media: add wave5 bindings
in V12
Sincerely,
Sebastian Fricke
>
>
>>
>> diff --git a/Documentation/devicetree/bindings/cnm,wave5.yml b/Documentation/devicetree/bindings/cnm,wave5.yml
>> new file mode 100644
>> index 000000000000..01dddebb162e
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/cnm,wave5.yml
>> @@ -0,0 +1,72 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/media/wave5.yaml#
>
>You clearly did not test them before sending.
>
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Chips&Media Wave 5 Series multi-standard codec IP
>> +
>> +maintainers:
>> + - Nas Chung <[email protected]>
>> + - Robert Beckett <[email protected]>
>> + - Sebastian Fricke <[email protected]>
>> +
>> +description: |-
>> + The Chips&Media WAVE codec IP is a multi format video encoder/decoder
>> +
>> +properties:
>> + compatible:
>> + anyOf:
>
>Please start from example-schema or other recently approved bindings. No
>anyOf.
>
>> + - items:
>
>No items...
>
>> + - enum:
>> + - cnm,cm511-vpu
>> + - cnm,cm517-vpu
>> + - cnm,cm521-vpu
>> + - cnm,cm521c-vpu
>> + - cnm,cm521c-dual-vpu
>
>What's the difference between this and one above?
>
>> + - cnm,cm521e1-vpu
>> + - cnm,cm537-vpu
>> + reg:
>> + maxItems: 1
>> +
>> + clocks:
>> + minItems: 1
>> + maxItems: 4
>
>This has to be specific.
>
>> +
>> + clock-names:
>> + minItems: 1
>> + maxItems: 4
>
>You need to list the names.
>
>> +
>> + interrupts:
>> + maxItems: 1
>> +
>> + power-domains:
>> + maxItems: 1
>> +
>> + resets:
>> + maxItems: 1
>> +
>> + sram:
>
>Missing vendor prefix.
>
>> + $ref: /schemas/types.yaml#/definitions/phandle
>> + description: phandle pointing to the SRAM device node
>
>And what is it for? Why do you need SRAM?
>
>> + maxItems: 1
>
>Drop
>
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - interrupts
>> + - clocks
>> + - clock-names
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> + - |
>> + vpu: video-codec@12345678 {
>> + compatible = "cnm,cm521-vpu";
>> + reg = <0x12345678 0x1000>;
>> + interrupts = <42>;
>> + clocks = <&clks 42>;
>> + clock-names = "vcodec";
>> + sram = <&sram>;
>> + };
>
>Best regards,
>Krzysztof
>
On 07/12/2022 16:09, Sebastian Fricke wrote:
> Hello Krzysztof,
>
> On 07.12.2022 13:31, Krzysztof Kozlowski wrote:
>> On 07/12/2022 13:13, Sebastian Fricke wrote:
>>> From: Robert Beckett <[email protected]>
>>>
>>> Add bindings for the wave5 chips&media codec driver
>>>
>>> Signed-off-by: Robert Beckett <[email protected]>
>>> Signed-off-by: Dafna Hirschfeld <[email protected]>
>>> Signed-off-by: Sebastian Fricke <[email protected]>
>>
>> What's happening with this patch? Where is the changelog?
>
> The changelog is located in the cover letter.
> https://lore.kernel.org/linux-media/[email protected]/
Which you did not sent to us... so? How does it help us?
>
>> Why it is v11 and first time I see it?
>
> You actually replied to V10:
> https://lore.kernel.org/linux-media/20221023085341.s23qinjuw4qls3dn@basti-XPS-13-9310/
>
>> And why it is v11 with basic mistakes and lack of testing?!?
>> I would assume that v11 was already seen and tested...
>
> Sorry I don't have a lot of experience with dt-bindings, thank you for
> highlighting the issues, I will correct them. And I forgot to build the
> documentation during my testing runs.
> I took over the patch set from another contributor and as no one
> complained about the dt-bindings for the last 10 versions, I concentrated
> my energy on other problems.
Because they were never sent to maintainers...
>
>>
>>
>>> ---
>>> .../devicetree/bindings/cnm,wave5.yml | 72 +++++++++++++++++++
>>> 1 file changed, 72 insertions(+)
>>> create mode 100644 Documentation/devicetree/bindings/cnm,wave5.yml
>>
>> Wrong directory. It wasn't here at all before, so I am really confused
>> how this could happen.
>
> Thanks for the highlight.
>
> I will move it to:
> Documentation/devicetree/bindings/media/cnm,wave5.yml
>
>>
>> Subject: drop redundant pieces: yaml, devicetree and bindings.
>
> I call it:
>
> dt-bindings: media: chips-media: add wave5 bindings
>
> in V12
>
> Sincerely,
> Sebastian Fricke
And the rest questions? Lack of response means agreement, which is fine,
so in v12 questionable parts will be removed?
Best regards,
Krzysztof
Hey Krzysztof,
On 07.12.2022 16:27, Krzysztof Kozlowski wrote:
>On 07/12/2022 16:09, Sebastian Fricke wrote:
>> Hello Krzysztof,
>>
>> On 07.12.2022 13:31, Krzysztof Kozlowski wrote:
>>> On 07/12/2022 13:13, Sebastian Fricke wrote:
>>>> From: Robert Beckett <[email protected]>
>>>>
>>>> Add bindings for the wave5 chips&media codec driver
>>>>
>>>> Signed-off-by: Robert Beckett <[email protected]>
>>>> Signed-off-by: Dafna Hirschfeld <[email protected]>
>>>> Signed-off-by: Sebastian Fricke <[email protected]>
>>>
>>> What's happening with this patch? Where is the changelog?
>>
>> The changelog is located in the cover letter.
>> https://lore.kernel.org/linux-media/[email protected]/
>
>
>Which you did not sent to us... so? How does it help us?
I completely agree, I simply forgot to add the [email protected] mail to the list of receivers.
>
>>
>>> Why it is v11 and first time I see it?
>>
>> You actually replied to V10:
>> https://lore.kernel.org/linux-media/20221023085341.s23qinjuw4qls3dn@basti-XPS-13-9310/
>>
>>> And why it is v11 with basic mistakes and lack of testing?!?
>>> I would assume that v11 was already seen and tested...
>>
>> Sorry I don't have a lot of experience with dt-bindings, thank you for
>> highlighting the issues, I will correct them. And I forgot to build the
>> documentation during my testing runs.
>> I took over the patch set from another contributor and as no one
>> complained about the dt-bindings for the last 10 versions, I concentrated
>> my energy on other problems.
>
>Because they were never sent to maintainers...
>
>>
>>>
>>>
>>>> ---
>>>> .../devicetree/bindings/cnm,wave5.yml | 72 +++++++++++++++++++
>>>> 1 file changed, 72 insertions(+)
>>>> create mode 100644 Documentation/devicetree/bindings/cnm,wave5.yml
>>>
>>> Wrong directory. It wasn't here at all before, so I am really confused
>>> how this could happen.
>>
>> Thanks for the highlight.
>>
>> I will move it to:
>> Documentation/devicetree/bindings/media/cnm,wave5.yml
>>
>>>
>>> Subject: drop redundant pieces: yaml, devicetree and bindings.
>>
>> I call it:
>>
>> dt-bindings: media: chips-media: add wave5 bindings
>>
>> in V12
>>
>And the rest questions? Lack of response means agreement, which is fine,
>so in v12 questionable parts will be removed?
Yes, I will completely rework this part, thus I try to take all of your
highlights into consideration.
>
>Best regards,
>Krzysztof
Sincerely,
Sebastian Fricke
Hey Krzysztof,
sorry for digging this mail out of the tombs.
We have worked for quite a while on a new version of the driver and we
are currently finishing it up. I have a few questions before I can
finish the patchset.
Please see below...
On 07.12.2022 13:31, Krzysztof Kozlowski wrote:
>On 07/12/2022 13:13, Sebastian Fricke wrote:
>> From: Robert Beckett <[email protected]>
>>
>> Add bindings for the wave5 chips&media codec driver
>>
>> Signed-off-by: Robert Beckett <[email protected]>
>> Signed-off-by: Dafna Hirschfeld <[email protected]>
>> Signed-off-by: Sebastian Fricke <[email protected]>
>
>What's happening with this patch? Where is the changelog? Why it is v11
>and first time I see it? And why it is v11 with basic mistakes and lack
>of testing?!? I would assume that v11 was already seen and tested...
>
>
>> ---
>> .../devicetree/bindings/cnm,wave5.yml | 72 +++++++++++++++++++
>> 1 file changed, 72 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/cnm,wave5.yml
>
>Wrong directory. It wasn't here at all before, so I am really confused
>how this could happen.
>
>Subject: drop redundant pieces: yaml, devicetree and bindings.
>
>
>>
>> diff --git a/Documentation/devicetree/bindings/cnm,wave5.yml b/Documentation/devicetree/bindings/cnm,wave5.yml
>> new file mode 100644
>> index 000000000000..01dddebb162e
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/cnm,wave5.yml
>> @@ -0,0 +1,72 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/media/wave5.yaml#
>
>You clearly did not test them before sending.
>
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Chips&Media Wave 5 Series multi-standard codec IP
>> +
>> +maintainers:
>> + - Nas Chung <[email protected]>
>> + - Robert Beckett <[email protected]>
>> + - Sebastian Fricke <[email protected]>
>> +
>> +description: |-
>> + The Chips&Media WAVE codec IP is a multi format video encoder/decoder
>> +
>> +properties:
>> + compatible:
>> + anyOf:
>
>Please start from example-schema or other recently approved bindings. No
>anyOf.
>
>> + - items:
>
>No items...
>
>> + - enum:
>> + - cnm,cm511-vpu
>> + - cnm,cm517-vpu
>> + - cnm,cm521-vpu
>> + - cnm,cm521c-vpu
>> + - cnm,cm521c-dual-vpu
>
>What's the difference between this and one above?
>
>> + - cnm,cm521e1-vpu
>> + - cnm,cm537-vpu
>> + reg:
>> + maxItems: 1
>> +
>> + clocks:
>> + minItems: 1
>> + maxItems: 4
>
>This has to be specific.
>
>> +
>> + clock-names:
>> + minItems: 1
>> + maxItems: 4
>
>You need to list the names.
>
>> +
>> + interrupts:
>> + maxItems: 1
>> +
>> + power-domains:
>> + maxItems: 1
>> +
>> + resets:
>> + maxItems: 1
>> +
>> + sram:
>
>Missing vendor prefix.
After some discussion with the the manufacturer of this CODEC chip, the SRAM
is not fixed to the CODEC chip but instead part of the SoC, thus the
vendor can vary. It sounds like the policy is to use the vendor prefix
of the SoC, that was used for upstreaming. But that policy sounds a bit
like a potential for future confusion to me, so I wanted to ask what you
would like to see. The SoC we develop on is from TI and the CODEC chip is from
C&M, so I could either call it: `ti,sram` or `cnm,sram`
>
>> + $ref: /schemas/types.yaml#/definitions/phandle
>> + description: phandle pointing to the SRAM device node
>
>And what is it for? Why do you need SRAM?
I would write the following here:
The VPU uses the SRAM to store some of the reference data instead of storing it on DMA memory. It is mainly used for the purpose of reducing bandwidth.
Sincerely,
Sebastian
>
>> + maxItems: 1
>
>Drop
>
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - interrupts
>> + - clocks
>> + - clock-names
>> +
>> +additionalProperties: false
>> +
>> +examples:
>> + - |
>> + vpu: video-codec@12345678 {
>> + compatible = "cnm,cm521-vpu";
>> + reg = <0x12345678 0x1000>;
>> + interrupts = <42>;
>> + clocks = <&clks 42>;
>> + clock-names = "vcodec";
>> + sram = <&sram>;
>> + };
>
>Best regards,
>Krzysztof
>