[Patch v6] dt-bindings: media: s5p-mfc: convert bindings to json-schema

Aakarsh Jain aakarsh.jain at samsung.com
Sun Mar 12 20:56:03 PDT 2023



> -----Original Message-----
> From: Krzysztof Kozlowski [mailto:krzysztof.kozlowski at linaro.org]
> Sent: 10 March 2023 14:38
> To: Aakarsh Jain <aakarsh.jain at samsung.com>; linux-arm-
> kernel at lists.infradead.org; linux-media at vger.kernel.org; linux-
> kernel at vger.kernel.org; devicetree at vger.kernel.org
> Cc: m.szyprowski at samsung.com; andrzej.hajda at intel.com;
> mchehab at kernel.org; hverkuil-cisco at xs4all.nl;
> ezequiel at vanguardiasur.com.ar; jernej.skrabec at gmail.com;
> benjamin.gaignard at collabora.com; krzysztof.kozlowski+dt at linaro.org;
> stanimir.varbanov at linaro.org; dillon.minfei at gmail.com;
> david.plowman at raspberrypi.com; mark.rutland at arm.com;
> robh+dt at kernel.org; krzk+dt at kernel.org; andi at etezian.org;
> alim.akhtar at samsung.com; aswani.reddy at samsung.com;
> pankaj.dubey at samsung.com
> Subject: Re: [Patch v6] dt-bindings: media: s5p-mfc: convert bindings to json-
> schema
> 
> On 09/03/2023 09:48, Aakarsh Jain wrote:
> >>> won't fit here.
> >>> Since IOMMUs maxItems is 2 here for Exynos4. Giving maxItems:2 alone
> >> will also break the bindings. Thanks why suggested
> >>>          iommus:
> >>>            minItems: 1
> >>>            maxItems: 2
> >>
> >> Are you sure you are putting this in correct place? This is if:then
> >> for Exynos3250, isn't it?
> >>
> > Its not only for Exynos3250, its along with Exynos4 since their clock
> > properties are same
> > allOf:
> >   - if:
> >       properties:
> >         compatible:
> >           contains:
> >             enum:
> >               - samsung,mfc-v5        #Exynos4
> >               - samsung,exynos3250-mfc
> >     then:
> >       properties:
> >         clocks:
> >           maxItems: 2
> >         clock-names:
> >           items:
> >             - const: mfc
> >             - const: sclk_mfc
> >         iommus:
> >           minItems: 1
> >           maxItems: 2
> >
> > or do I keep different if:then condition for both Exynos3250 and Exynos4
> for IOMMUs property ?
> 
> Yes, they should be split into two if-then.
> 
okay will keep it in this way.
  - if:
      properties:
        compatible:
          contains:
            enum:
              - samsung,mfc-v5
    then:
      properties:
        clocks:
          maxItems: 2
        clock-names:
          items:
            - const: mfc
            - const: sclk_mfc
        iommus:
          maxItems: 2
        iommu-names:
          items:
            - const: left
            - const: right

  - 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

Also, "samsung,mfc-v7" compatible is used for both SOCs Exynos 5420 & Exynos 3250.
And for both SOCs, clock and IOMMUs properties are different. So in order to differentiate that, will keep it in this way.
  - if:
      properties:
        compatible:
          contains:
            enum:
              - samsung,mfc-v7
    then:
      properties:
        clocks:
          minItems: 1
          maxItems: 2
        iommus:
          minItems: 1
          maxItems: 2

I hope that will be fine?
> 
> Best regards,
> Krzysztof





More information about the linux-arm-kernel mailing list