[v7] dt-bindings: media: s5p-mfc: convert bindings to json-schema
Commit Message
Convert s5p-mfc bindings to DT schema format using json-schema.
Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
---
changes since v6:
kept hw properties for Exynos3250 and Exynos4
under different if:then condition.
changes since v5:
kept compatible strings under enum
sorted compatible strings
added iommu maxItems:2
Added indentation with 4 spaces in dts example
changes since v4:
Removed items from oneOf section
dropped black line
defined the iommus names items as
items:
-const left
-const right
changes since v3:
fixed dt-schema warnings and errors while running make dtbs_check and make dt_binding_check for ARMv7
Since, obsolete properties are not part of dt-node so we are not including these properties in dt-schema.
changes since v2:
changed Commit message from Adds to Convert
Removed text "This file has moved to samsung,s5p-mfc.yaml" from s5p-mfc.txt
fixed dt-schema warnings and errors while running make dtbs_check and make dt_binding_check
changes since v1:
fixed dt-schema warnings and errors while running make dtbs_check and make dt_binding_check
Removed description.
Listed items.
Added allOf:if:then for restricting two items to specific compatible
.../devicetree/bindings/media/s5p-mfc.txt | 78 --------
.../bindings/media/samsung,s5p-mfc.yaml | 184 ++++++++++++++++++
2 files changed, 184 insertions(+), 78 deletions(-)
create mode 100644 Documentation/devicetree/bindings/media/samsung,s5p-mfc.yaml
Comments
On 28/03/2023 13:47, Aakarsh Jain wrote:
> Convert s5p-mfc bindings to DT schema format using json-schema.
>
> Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
> ---
> changes since v6:
This is a friendly reminder during the review process.
It looks like you received a tag and forgot to add it.
If you do not know the process, here is a short explanation:
Please add Acked-by/Reviewed-by/Tested-by tags when posting new
versions. However, there's no need to repost patches *only* to add the
tags. The upstream maintainer will do that for acks received on the
version they apply.
https://elixir.bootlin.com/linux/v5.17/source/Documentation/process/submitting-patches.rst#L540
If a tag was not added on purpose, please state why and what changed.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
> -----Original Message-----
> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@linaro.org]
> Sent: 28 March 2023 20:06
> To: Aakarsh Jain <aakarsh.jain@samsung.com>; linux-arm-
> kernel@lists.infradead.org; linux-media@vger.kernel.org; linux-
> kernel@vger.kernel.org; devicetree@vger.kernel.org
> Cc: m.szyprowski@samsung.com; andrzej.hajda@intel.com;
> mchehab@kernel.org; hverkuil-cisco@xs4all.nl;
> ezequiel@vanguardiasur.com.ar; jernej.skrabec@gmail.com;
> benjamin.gaignard@collabora.com; krzysztof.kozlowski+dt@linaro.org;
> stanimir.varbanov@linaro.org; dillon.minfei@gmail.com;
> david.plowman@raspberrypi.com; mark.rutland@arm.com;
> robh+dt@kernel.org; krzk+dt@kernel.org; andi@etezian.org;
> alim.akhtar@samsung.com; aswani.reddy@samsung.com;
> pankaj.dubey@samsung.com
> Subject: Re: [Patch v7] dt-bindings: media: s5p-mfc: convert bindings to json-
> schema
>
> On 28/03/2023 13:47, Aakarsh Jain wrote:
> > Convert s5p-mfc bindings to DT schema format using json-schema.
> >
> > Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
> > ---
> > changes since v6:
>
> This is a friendly reminder during the review process.
>
> It looks like you received a tag and forgot to add it.
>
> If you do not know the process, here is a short explanation:
> Please add Acked-by/Reviewed-by/Tested-by tags when posting new
> versions. However, there's no need to repost patches *only* to add the
> tags. The upstream maintainer will do that for acks received on the version
> they apply.
>
> https://protect2.fireeye.com/v1/url?k=03601d03-62eb0848-0361964c-
> 74fe485fb305-ca0023b5279dd925&q=1&e=9490b51d-9547-4566-bb76-
> 8c1401745ae1&u=https%3A%2F%2Felixir.bootlin.com%2Flinux%2Fv5.17%2Fs
> ource%2FDocumentation%2Fprocess%2Fsubmitting-patches.rst%23L540
>
> If a tag was not added on purpose, please state why and what changed.
>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>
> Best regards,
> Krzysztof
Hi Krzysztof,
I don’t see this patch in linux-next. It's been more than a month now.
Please let me know if any other changes required.
Thanks,
Aakarsh
On 11/05/2023 11:34, Aakarsh Jain wrote:
>
>
>> -----Original Message-----
>> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@linaro.org]
>> Sent: 28 March 2023 20:06
>> To: Aakarsh Jain <aakarsh.jain@samsung.com>; linux-arm-
>> kernel@lists.infradead.org; linux-media@vger.kernel.org; linux-
>> kernel@vger.kernel.org; devicetree@vger.kernel.org
>> Cc: m.szyprowski@samsung.com; andrzej.hajda@intel.com;
>> mchehab@kernel.org; hverkuil-cisco@xs4all.nl;
>> ezequiel@vanguardiasur.com.ar; jernej.skrabec@gmail.com;
>> benjamin.gaignard@collabora.com; krzysztof.kozlowski+dt@linaro.org;
>> stanimir.varbanov@linaro.org; dillon.minfei@gmail.com;
>> david.plowman@raspberrypi.com; mark.rutland@arm.com;
>> robh+dt@kernel.org; krzk+dt@kernel.org; andi@etezian.org;
>> alim.akhtar@samsung.com; aswani.reddy@samsung.com;
>> pankaj.dubey@samsung.com
>> Subject: Re: [Patch v7] dt-bindings: media: s5p-mfc: convert bindings to json-
>> schema
>>
>> On 28/03/2023 13:47, Aakarsh Jain wrote:
>>> Convert s5p-mfc bindings to DT schema format using json-schema.
>>>
>>> Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
>>> ---
>>> changes since v6:
>>
>> This is a friendly reminder during the review process.
>>
>> It looks like you received a tag and forgot to add it.
>>
>> If you do not know the process, here is a short explanation:
>> Please add Acked-by/Reviewed-by/Tested-by tags when posting new
>> versions. However, there's no need to repost patches *only* to add the
>> tags. The upstream maintainer will do that for acks received on the version
>> they apply.
>>
>> https://protect2.fireeye.com/v1/url?k=03601d03-62eb0848-0361964c-
>> 74fe485fb305-ca0023b5279dd925&q=1&e=9490b51d-9547-4566-bb76-
>> 8c1401745ae1&u=https%3A%2F%2Felixir.bootlin.com%2Flinux%2Fv5.17%2Fs
>> ource%2FDocumentation%2Fprocess%2Fsubmitting-patches.rst%23L540
>>
>> If a tag was not added on purpose, please state why and what changed.
>>
>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>
>> Best regards,
>> Krzysztof
>
>
> Hi Krzysztof,
>
> I don’t see this patch in linux-next. It's been more than a month now.
> Please let me know if any other changes required.
I already provided you review tag.
Best regards,
Krzysztof
Hi Krzysztof,
> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> Sent: Saturday, May 13, 2023 3:03 PM
> To: Aakarsh Jain <aakarsh.jain@samsung.com>; linux-arm-
> kernel@lists.infradead.org; linux-media@vger.kernel.org; linux-
> kernel@vger.kernel.org; devicetree@vger.kernel.org
> Cc: m.szyprowski@samsung.com; andrzej.hajda@intel.com;
> mchehab@kernel.org; hverkuil-cisco@xs4all.nl;
> ezequiel@vanguardiasur.com.ar; jernej.skrabec@gmail.com;
> benjamin.gaignard@collabora.com; krzysztof.kozlowski+dt@linaro.org;
> stanimir.varbanov@linaro.org; dillon.minfei@gmail.com;
> david.plowman@raspberrypi.com; mark.rutland@arm.com;
> robh+dt@kernel.org; krzk+dt@kernel.org; andi@etezian.org;
> alim.akhtar@samsung.com; aswani.reddy@samsung.com;
> pankaj.dubey@samsung.com
> Subject: Re: [Patch v7] dt-bindings: media: s5p-mfc: convert bindings to json-
> schema
>
> On 11/05/2023 11:34, Aakarsh Jain wrote:
> >
> >
> >> -----Original Message-----
> >> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@linaro.org]
> >> Sent: 28 March 2023 20:06
> >> To: Aakarsh Jain <aakarsh.jain@samsung.com>; linux-arm-
> >> kernel@lists.infradead.org; linux-media@vger.kernel.org; linux-
> >> kernel@vger.kernel.org; devicetree@vger.kernel.org
> >> Cc: m.szyprowski@samsung.com; andrzej.hajda@intel.com;
> >> mchehab@kernel.org; hverkuil-cisco@xs4all.nl;
> >> ezequiel@vanguardiasur.com.ar; jernej.skrabec@gmail.com;
> >> benjamin.gaignard@collabora.com; krzysztof.kozlowski+dt@linaro.org;
> >> stanimir.varbanov@linaro.org; dillon.minfei@gmail.com;
> >> david.plowman@raspberrypi.com; mark.rutland@arm.com;
> >> robh+dt@kernel.org; krzk+dt@kernel.org; andi@etezian.org;
> >> alim.akhtar@samsung.com; aswani.reddy@samsung.com;
> >> pankaj.dubey@samsung.com
> >> Subject: Re: [Patch v7] dt-bindings: media: s5p-mfc: convert bindings
> >> to json- schema
> >>
> >> On 28/03/2023 13:47, Aakarsh Jain wrote:
> >>> Convert s5p-mfc bindings to DT schema format using json-schema.
> >>>
> >>> Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
> >>> ---
> >>> changes since v6:
> >>
> >> This is a friendly reminder during the review process.
> >>
> >> It looks like you received a tag and forgot to add it.
> >>
> >> If you do not know the process, here is a short explanation:
> >> Please add Acked-by/Reviewed-by/Tested-by tags when posting new
> >> versions. However, there's no need to repost patches *only* to add
> >> the tags. The upstream maintainer will do that for acks received on
> >> the version they apply.
> >>
> >> https://protect2.fireeye.com/v1/url?k=03601d03-62eb0848-0361964c-
> >> 74fe485fb305-ca0023b5279dd925&q=1&e=9490b51d-9547-4566-bb76-
> >>
> 8c1401745ae1&u=https%3A%2F%2Felixir.bootlin.com%2Flinux%2Fv5.17%2Fs
> >> ource%2FDocumentation%2Fprocess%2Fsubmitting-patches.rst%23L540
> >>
> >> If a tag was not added on purpose, please state why and what changed.
> >>
> >> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> >>
> >> Best regards,
> >> Krzysztof
> >
> >
> > Hi Krzysztof,
> >
> > I don’t see this patch in linux-next. It's been more than a month now.
> > Please let me know if any other changes required.
>
> I already provided you review tag.
Thanks for your review.
The question was more on, if you will pick up this patch via your tree or this will go via Rob's or Media tree.
I will prefer if this goes via your tree.
>
> Best regards,
> Krzysztof
On 13/05/2023 16:44, Alim Akhtar wrote:
> Hi Krzysztof,
>
>> -----Original Message-----
>> From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>> Sent: Saturday, May 13, 2023 3:03 PM
>> To: Aakarsh Jain <aakarsh.jain@samsung.com>; linux-arm-
>> kernel@lists.infradead.org; linux-media@vger.kernel.org; linux-
>> kernel@vger.kernel.org; devicetree@vger.kernel.org
>> Cc: m.szyprowski@samsung.com; andrzej.hajda@intel.com;
>> mchehab@kernel.org; hverkuil-cisco@xs4all.nl;
>> ezequiel@vanguardiasur.com.ar; jernej.skrabec@gmail.com;
>> benjamin.gaignard@collabora.com; krzysztof.kozlowski+dt@linaro.org;
>> stanimir.varbanov@linaro.org; dillon.minfei@gmail.com;
>> david.plowman@raspberrypi.com; mark.rutland@arm.com;
>> robh+dt@kernel.org; krzk+dt@kernel.org; andi@etezian.org;
>> alim.akhtar@samsung.com; aswani.reddy@samsung.com;
>> pankaj.dubey@samsung.com
>> Subject: Re: [Patch v7] dt-bindings: media: s5p-mfc: convert bindings to json-
>> schema
>>
>> On 11/05/2023 11:34, Aakarsh Jain wrote:
>>>
>>>
>>>> -----Original Message-----
>>>> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski@linaro.org]
>>>> Sent: 28 March 2023 20:06
>>>> To: Aakarsh Jain <aakarsh.jain@samsung.com>; linux-arm-
>>>> kernel@lists.infradead.org; linux-media@vger.kernel.org; linux-
>>>> kernel@vger.kernel.org; devicetree@vger.kernel.org
>>>> Cc: m.szyprowski@samsung.com; andrzej.hajda@intel.com;
>>>> mchehab@kernel.org; hverkuil-cisco@xs4all.nl;
>>>> ezequiel@vanguardiasur.com.ar; jernej.skrabec@gmail.com;
>>>> benjamin.gaignard@collabora.com; krzysztof.kozlowski+dt@linaro.org;
>>>> stanimir.varbanov@linaro.org; dillon.minfei@gmail.com;
>>>> david.plowman@raspberrypi.com; mark.rutland@arm.com;
>>>> robh+dt@kernel.org; krzk+dt@kernel.org; andi@etezian.org;
>>>> alim.akhtar@samsung.com; aswani.reddy@samsung.com;
>>>> pankaj.dubey@samsung.com
>>>> Subject: Re: [Patch v7] dt-bindings: media: s5p-mfc: convert bindings
>>>> to json- schema
>>>>
>>>> On 28/03/2023 13:47, Aakarsh Jain wrote:
>>>>> Convert s5p-mfc bindings to DT schema format using json-schema.
>>>>>
>>>>> Signed-off-by: Aakarsh Jain <aakarsh.jain@samsung.com>
>>>>> ---
>>>>> changes since v6:
>>>>
>>>> This is a friendly reminder during the review process.
>>>>
>>>> It looks like you received a tag and forgot to add it.
>>>>
>>>> If you do not know the process, here is a short explanation:
>>>> Please add Acked-by/Reviewed-by/Tested-by tags when posting new
>>>> versions. However, there's no need to repost patches *only* to add
>>>> the tags. The upstream maintainer will do that for acks received on
>>>> the version they apply.
>>>>
>>>> https://protect2.fireeye.com/v1/url?k=03601d03-62eb0848-0361964c-
>>>> 74fe485fb305-ca0023b5279dd925&q=1&e=9490b51d-9547-4566-bb76-
>>>>
>> 8c1401745ae1&u=https%3A%2F%2Felixir.bootlin.com%2Flinux%2Fv5.17%2Fs
>>>> ource%2FDocumentation%2Fprocess%2Fsubmitting-patches.rst%23L540
>>>>
>>>> If a tag was not added on purpose, please state why and what changed.
>>>>
>>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>>>
>>>> Best regards,
>>>> Krzysztof
>>>
>>>
>>> Hi Krzysztof,
>>>
>>> I don’t see this patch in linux-next. It's been more than a month now.
>>> Please let me know if any other changes required.
>>
>> I already provided you review tag.
> Thanks for your review.
> The question was more on, if you will pick up this patch via your tree or this will go via Rob's or Media tree.
> I will prefer if this goes via your tree.
Generic recommendation is that all device-related bindings go via their
subsystem, so in this case via media tree. I see in patchwork it is
still in new state, so maybe was forgotten. OK, let me grab it.
Best regards,
Krzysztof
On Tue, 28 Mar 2023 17:17:29 +0530, Aakarsh Jain wrote:
> Convert s5p-mfc bindings to DT schema format using json-schema.
>
>
Applied, thanks!
[1/1] dt-bindings: media: s5p-mfc: convert bindings to json-schema
https://git.kernel.org/krzk/linux/c/538af6e5856b1aa971975c747a2974a74db48928
Best regards,
@@ -1,78 +0,0 @@
-* Samsung Multi Format Codec (MFC)
-
-Multi Format Codec (MFC) is the IP present in Samsung SoCs which
-supports high resolution decoding and encoding functionalities.
-The MFC device driver is a v4l2 driver which can encode/decode
-video raw/elementary streams and has support for all popular
-video codecs.
-
-Required properties:
- - compatible : value should be either one among the following
- (a) "samsung,mfc-v5" for MFC v5 present in Exynos4 SoCs
- (b) "samsung,mfc-v6" for MFC v6 present in Exynos5 SoCs
- (c) "samsung,exynos3250-mfc", "samsung,mfc-v7" for MFC v7
- present in Exynos3250 SoC
- (d) "samsung,mfc-v7" for MFC v7 present in Exynos5420 SoC
- (e) "samsung,mfc-v8" for MFC v8 present in Exynos5800 SoC
- (f) "samsung,exynos5433-mfc" for MFC v8 present in Exynos5433 SoC
- (g) "samsung,mfc-v10" for MFC v10 present in Exynos7880 SoC
-
- - reg : Physical base address of the IP registers and length of memory
- mapped region.
-
- - interrupts : MFC interrupt number to the CPU.
- - clocks : from common clock binding: handle to mfc clock.
- - clock-names : from common clock binding: must contain "mfc",
- corresponding to entry in the clocks property.
-
-Optional properties:
- - power-domains : power-domain property defined with a phandle
- to respective power domain.
- - memory-region : from reserved memory binding: phandles to two reserved
- memory regions, first is for "left" mfc memory bus interfaces,
- second if for the "right" mfc memory bus, used when no SYSMMU
- support is available; used only by MFC v5 present in Exynos4 SoCs
-
-Obsolete properties:
- - samsung,mfc-r, samsung,mfc-l : support removed, please use memory-region
- property instead
-
-
-Example:
-SoC specific DT entry:
-
-mfc: codec@13400000 {
- compatible = "samsung,mfc-v5";
- reg = <0x13400000 0x10000>;
- interrupts = <0 94 0>;
- power-domains = <&pd_mfc>;
- clocks = <&clock 273>;
- clock-names = "mfc";
-};
-
-Reserved memory specific DT entry for given board (see reserved memory binding
-for more information):
-
-reserved-memory {
- #address-cells = <1>;
- #size-cells = <1>;
- ranges;
-
- mfc_left: region@51000000 {
- compatible = "shared-dma-pool";
- no-map;
- reg = <0x51000000 0x800000>;
- };
-
- mfc_right: region@43000000 {
- compatible = "shared-dma-pool";
- no-map;
- reg = <0x43000000 0x800000>;
- };
-};
-
-Board specific DT entry:
-
-codec@13400000 {
- memory-region = <&mfc_left>, <&mfc_right>;
-};
new file mode 100644
@@ -0,0 +1,184 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/samsung,s5p-mfc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Samsung Exynos Multi Format Codec (MFC)
+
+maintainers:
+ - Marek Szyprowski <m.szyprowski@samsung.com>
+ - Aakarsh Jain <aakarsh.jain@samsung.com>
+
+description:
+ Multi Format Codec (MFC) is the IP present in Samsung SoCs which
+ supports high resolution decoding and encoding functionalities.
+
+properties:
+ compatible:
+ oneOf:
+ - enum:
+ - samsung,exynos5433-mfc # Exynos5433
+ - samsung,mfc-v5 # Exynos4
+ - samsung,mfc-v6 # Exynos5
+ - samsung,mfc-v7 # Exynos5420
+ - samsung,mfc-v8 # Exynos5800
+ - samsung,mfc-v10 # Exynos7880
+ - items:
+ - enum:
+ - samsung,exynos3250-mfc # Exynos3250
+ - const: samsung,mfc-v7 # Fall back for Exynos3250
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ minItems: 1
+ maxItems: 3
+
+ clock-names:
+ minItems: 1
+ maxItems: 3
+
+ interrupts:
+ maxItems: 1
+
+ iommus:
+ minItems: 1
+ maxItems: 2
+
+ iommu-names:
+ minItems: 1
+ maxItems: 2
+
+ power-domains:
+ maxItems: 1
+
+ memory-region:
+ minItems: 1
+ maxItems: 2
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+ - interrupts
+
+additionalProperties: false
+
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - samsung,exynos3250-mfc
+ then:
+ properties:
+ clocks:
+ maxItems: 2
+ clock-names:
+ items:
+ - const: mfc
+ - const: sclk_mfc
+ iommus:
+ maxItems: 1
+ iommus-names: false
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - samsung,exynos5433-mfc
+ then:
+ properties:
+ clocks:
+ maxItems: 3
+ clock-names:
+ items:
+ - const: pclk
+ - const: aclk
+ - const: aclk_xiu
+ iommus:
+ maxItems: 2
+ iommus-names:
+ items:
+ - const: left
+ - const: right
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - samsung,mfc-v5
+ then:
+ properties:
+ clocks:
+ maxItems: 2
+ clock-names:
+ items:
+ - const: mfc
+ - const: sclk_mfc
+ iommus:
+ maxItems: 2
+ iommus-names:
+ items:
+ - const: left
+ - const: right
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - samsung,mfc-v6
+ - samsung,mfc-v8
+ then:
+ properties:
+ clocks:
+ maxItems: 1
+ clock-names:
+ items:
+ - const: mfc
+ iommus:
+ maxItems: 2
+ iommus-names:
+ items:
+ - const: left
+ - const: right
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - samsung,mfc-v7
+ then:
+ properties:
+ clocks:
+ minItems: 1
+ maxItems: 2
+ iommus:
+ minItems: 1
+ maxItems: 2
+
+examples:
+ - |
+ #include <dt-bindings/clock/exynos4.h>
+ #include <dt-bindings/clock/exynos-audss-clk.h>
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ codec@13400000 {
+ compatible = "samsung,mfc-v5";
+ reg = <0x13400000 0x10000>;
+ interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
+ power-domains = <&pd_mfc>;
+ clocks = <&clock CLK_MFC>, <&clock CLK_SCLK_MFC>;
+ clock-names = "mfc", "sclk_mfc";
+ iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>;
+ iommu-names = "left", "right";
+ };