diff mbox series

dt-bindings: memory-controllers: tegra: Fix type references

Message ID 20191211163210.9778-1-robh@kernel.org
State Accepted
Commit 70c812106c87981a087fafacab004aee37193405
Headers show
Series dt-bindings: memory-controllers: tegra: Fix type references | expand

Commit Message

Rob Herring Dec. 11, 2019, 4:32 p.m. UTC
Json-schema requires a $ref to be under an 'allOf' if there are
additional constraints otherwise the additional constraints are
ignored. (Note that this behavior will be changed in draft8.)

Fixes: 641262f5e1ed ("dt-bindings: memory: Add binding for NVIDIA Tegra30 External Memory Controller")
Fixes: 785685b7a106 ("dt-bindings: memory: Add binding for NVIDIA Tegra30 Memory Controller")
Fixes: 8da65c377b21 ("dt-bindings: memory: tegra30: Convert to Tegra124 YAML")
Cc: Dmitry Osipenko <digetx@gmail.com>
Cc: Thierry Reding <treding@nvidia.com>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: linux-tegra@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>

---
I'll take this via the DT tree for rc2.

 .../bindings/memory-controllers/nvidia,tegra124-mc.yaml  | 3 ++-
 .../bindings/memory-controllers/nvidia,tegra30-emc.yaml  | 9 ++++++---
 .../bindings/memory-controllers/nvidia,tegra30-mc.yaml   | 3 ++-
 3 files changed, 10 insertions(+), 5 deletions(-)

-- 
2.20.1

Comments

Dmitry Osipenko Dec. 12, 2019, 1:36 p.m. UTC | #1
11.12.2019 19:32, Rob Herring пишет:
> Json-schema requires a $ref to be under an 'allOf' if there are

> additional constraints otherwise the additional constraints are

> ignored. (Note that this behavior will be changed in draft8.)

> 

> Fixes: 641262f5e1ed ("dt-bindings: memory: Add binding for NVIDIA Tegra30 External Memory Controller")

> Fixes: 785685b7a106 ("dt-bindings: memory: Add binding for NVIDIA Tegra30 Memory Controller")

> Fixes: 8da65c377b21 ("dt-bindings: memory: tegra30: Convert to Tegra124 YAML")

> Cc: Dmitry Osipenko <digetx@gmail.com>

> Cc: Thierry Reding <treding@nvidia.com>

> Cc: Jonathan Hunter <jonathanh@nvidia.com>

> Cc: linux-tegra@vger.kernel.org

> Signed-off-by: Rob Herring <robh@kernel.org>

> ---

> I'll take this via the DT tree for rc2.

> 

>  .../bindings/memory-controllers/nvidia,tegra124-mc.yaml  | 3 ++-

>  .../bindings/memory-controllers/nvidia,tegra30-emc.yaml  | 9 ++++++---

>  .../bindings/memory-controllers/nvidia,tegra30-mc.yaml   | 3 ++-

>  3 files changed, 10 insertions(+), 5 deletions(-)

> 

> diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

> index 30d9fb193d7f..22a94b6fdbde 100644

> --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

> +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

> @@ -60,7 +60,8 @@ patternProperties:

>              maximum: 1066000000

>  

>            nvidia,emem-configuration:

> -            $ref: /schemas/types.yaml#/definitions/uint32-array

> +            allOf:

> +              - $ref: /schemas/types.yaml#/definitions/uint32-array

>              description: |

>                Values to be written to the EMEM register block. See section

>                "15.6.1 MC Registers" in the TRM.

> diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

> index 7fe0ca14e324..e4135bac6957 100644

> --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

> +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

> @@ -56,7 +56,8 @@ patternProperties:

>              maximum: 900000000

>  

>            nvidia,emc-auto-cal-interval:

> -            $ref: /schemas/types.yaml#/definitions/uint32

> +            allOf:

> +              - $ref: /schemas/types.yaml#/definitions/uint32

>              description:

>                Pad calibration interval in microseconds.

>              minimum: 0

> @@ -78,7 +79,8 @@ patternProperties:

>                Mode Register 0.

>  

>            nvidia,emc-zcal-cnt-long:

> -            $ref: /schemas/types.yaml#/definitions/uint32

> +            allOf:

> +              - $ref: /schemas/types.yaml#/definitions/uint32

>              description:

>                Number of EMC clocks to wait before issuing any commands after

>                sending ZCAL_MRW_CMD.

> @@ -96,7 +98,8 @@ patternProperties:

>                FBIO "read" FIFO periodic resetting enabled.

>  

>            nvidia,emc-configuration:

> -            $ref: /schemas/types.yaml#/definitions/uint32-array

> +            allOf:

> +              - $ref: /schemas/types.yaml#/definitions/uint32-array

>              description:

>                EMC timing characterization data. These are the registers

>                (see section "18.13.2 EMC Registers" in the TRM) whose values

> diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

> index 84fd57bcf0dc..4b9196c83291 100644

> --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

> +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

> @@ -77,7 +77,8 @@ patternProperties:

>              maximum: 900000000

>  

>            nvidia,emem-configuration:

> -            $ref: /schemas/types.yaml#/definitions/uint32-array

> +            allOf:

> +              - $ref: /schemas/types.yaml#/definitions/uint32-array

>              description: |

>                Values to be written to the EMEM register block. See section

>                "18.13.1 MC Registers" in the TRM.

> 


But the "nvidia,emem-configuration" doesn't have any extra constraints.
Or you just added the "allOf" for consistency to avoid possible future
copy-paste bugs?

Otherwise LGTM, thanks!

Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Rob Herring Dec. 12, 2019, 2:05 p.m. UTC | #2
On Thu, Dec 12, 2019 at 7:36 AM Dmitry Osipenko <digetx@gmail.com> wrote:
>

> 11.12.2019 19:32, Rob Herring пишет:

> > Json-schema requires a $ref to be under an 'allOf' if there are

> > additional constraints otherwise the additional constraints are

> > ignored. (Note that this behavior will be changed in draft8.)

> >

> > Fixes: 641262f5e1ed ("dt-bindings: memory: Add binding for NVIDIA Tegra30 External Memory Controller")

> > Fixes: 785685b7a106 ("dt-bindings: memory: Add binding for NVIDIA Tegra30 Memory Controller")

> > Fixes: 8da65c377b21 ("dt-bindings: memory: tegra30: Convert to Tegra124 YAML")

> > Cc: Dmitry Osipenko <digetx@gmail.com>

> > Cc: Thierry Reding <treding@nvidia.com>

> > Cc: Jonathan Hunter <jonathanh@nvidia.com>

> > Cc: linux-tegra@vger.kernel.org

> > Signed-off-by: Rob Herring <robh@kernel.org>

> > ---

> > I'll take this via the DT tree for rc2.

> >

> >  .../bindings/memory-controllers/nvidia,tegra124-mc.yaml  | 3 ++-

> >  .../bindings/memory-controllers/nvidia,tegra30-emc.yaml  | 9 ++++++---

> >  .../bindings/memory-controllers/nvidia,tegra30-mc.yaml   | 3 ++-

> >  3 files changed, 10 insertions(+), 5 deletions(-)

> >

> > diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

> > index 30d9fb193d7f..22a94b6fdbde 100644

> > --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

> > +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

> > @@ -60,7 +60,8 @@ patternProperties:

> >              maximum: 1066000000

> >

> >            nvidia,emem-configuration:

> > -            $ref: /schemas/types.yaml#/definitions/uint32-array

> > +            allOf:

> > +              - $ref: /schemas/types.yaml#/definitions/uint32-array

> >              description: |

> >                Values to be written to the EMEM register block. See section

> >                "15.6.1 MC Registers" in the TRM.

> > diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

> > index 7fe0ca14e324..e4135bac6957 100644

> > --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

> > +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

> > @@ -56,7 +56,8 @@ patternProperties:

> >              maximum: 900000000

> >

> >            nvidia,emc-auto-cal-interval:

> > -            $ref: /schemas/types.yaml#/definitions/uint32

> > +            allOf:

> > +              - $ref: /schemas/types.yaml#/definitions/uint32

> >              description:

> >                Pad calibration interval in microseconds.

> >              minimum: 0

> > @@ -78,7 +79,8 @@ patternProperties:

> >                Mode Register 0.

> >

> >            nvidia,emc-zcal-cnt-long:

> > -            $ref: /schemas/types.yaml#/definitions/uint32

> > +            allOf:

> > +              - $ref: /schemas/types.yaml#/definitions/uint32

> >              description:

> >                Number of EMC clocks to wait before issuing any commands after

> >                sending ZCAL_MRW_CMD.

> > @@ -96,7 +98,8 @@ patternProperties:

> >                FBIO "read" FIFO periodic resetting enabled.

> >

> >            nvidia,emc-configuration:

> > -            $ref: /schemas/types.yaml#/definitions/uint32-array

> > +            allOf:

> > +              - $ref: /schemas/types.yaml#/definitions/uint32-array

> >              description:

> >                EMC timing characterization data. These are the registers

> >                (see section "18.13.2 EMC Registers" in the TRM) whose values

> > diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

> > index 84fd57bcf0dc..4b9196c83291 100644

> > --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

> > +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

> > @@ -77,7 +77,8 @@ patternProperties:

> >              maximum: 900000000

> >

> >            nvidia,emem-configuration:

> > -            $ref: /schemas/types.yaml#/definitions/uint32-array

> > +            allOf:

> > +              - $ref: /schemas/types.yaml#/definitions/uint32-array

> >              description: |

> >                Values to be written to the EMEM register block. See section

> >                "18.13.1 MC Registers" in the TRM.

> >

>

> But the "nvidia,emem-configuration" doesn't have any extra constraints.

> Or you just added the "allOf" for consistency to avoid possible future

> copy-paste bugs?


It does have constraints. It has the 'items' list.

Note that fixing it introduces an error which I'm in the process of
fixing in the schema tool.

> Otherwise LGTM, thanks!

>

> Reviewed-by: Dmitry Osipenko <digetx@gmail.com>


Thanks.

Rob
Dmitry Osipenko Dec. 12, 2019, 2:21 p.m. UTC | #3
12.12.2019 17:05, Rob Herring пишет:
> On Thu, Dec 12, 2019 at 7:36 AM Dmitry Osipenko <digetx@gmail.com> wrote:

>>

>> 11.12.2019 19:32, Rob Herring пишет:

>>> Json-schema requires a $ref to be under an 'allOf' if there are

>>> additional constraints otherwise the additional constraints are

>>> ignored. (Note that this behavior will be changed in draft8.)

>>>

>>> Fixes: 641262f5e1ed ("dt-bindings: memory: Add binding for NVIDIA Tegra30 External Memory Controller")

>>> Fixes: 785685b7a106 ("dt-bindings: memory: Add binding for NVIDIA Tegra30 Memory Controller")

>>> Fixes: 8da65c377b21 ("dt-bindings: memory: tegra30: Convert to Tegra124 YAML")

>>> Cc: Dmitry Osipenko <digetx@gmail.com>

>>> Cc: Thierry Reding <treding@nvidia.com>

>>> Cc: Jonathan Hunter <jonathanh@nvidia.com>

>>> Cc: linux-tegra@vger.kernel.org

>>> Signed-off-by: Rob Herring <robh@kernel.org>

>>> ---

>>> I'll take this via the DT tree for rc2.

>>>

>>>  .../bindings/memory-controllers/nvidia,tegra124-mc.yaml  | 3 ++-

>>>  .../bindings/memory-controllers/nvidia,tegra30-emc.yaml  | 9 ++++++---

>>>  .../bindings/memory-controllers/nvidia,tegra30-mc.yaml   | 3 ++-

>>>  3 files changed, 10 insertions(+), 5 deletions(-)

>>>

>>> diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

>>> index 30d9fb193d7f..22a94b6fdbde 100644

>>> --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

>>> +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml

>>> @@ -60,7 +60,8 @@ patternProperties:

>>>              maximum: 1066000000

>>>

>>>            nvidia,emem-configuration:

>>> -            $ref: /schemas/types.yaml#/definitions/uint32-array

>>> +            allOf:

>>> +              - $ref: /schemas/types.yaml#/definitions/uint32-array

>>>              description: |

>>>                Values to be written to the EMEM register block. See section

>>>                "15.6.1 MC Registers" in the TRM.

>>> diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

>>> index 7fe0ca14e324..e4135bac6957 100644

>>> --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

>>> +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml

>>> @@ -56,7 +56,8 @@ patternProperties:

>>>              maximum: 900000000

>>>

>>>            nvidia,emc-auto-cal-interval:

>>> -            $ref: /schemas/types.yaml#/definitions/uint32

>>> +            allOf:

>>> +              - $ref: /schemas/types.yaml#/definitions/uint32

>>>              description:

>>>                Pad calibration interval in microseconds.

>>>              minimum: 0

>>> @@ -78,7 +79,8 @@ patternProperties:

>>>                Mode Register 0.

>>>

>>>            nvidia,emc-zcal-cnt-long:

>>> -            $ref: /schemas/types.yaml#/definitions/uint32

>>> +            allOf:

>>> +              - $ref: /schemas/types.yaml#/definitions/uint32

>>>              description:

>>>                Number of EMC clocks to wait before issuing any commands after

>>>                sending ZCAL_MRW_CMD.

>>> @@ -96,7 +98,8 @@ patternProperties:

>>>                FBIO "read" FIFO periodic resetting enabled.

>>>

>>>            nvidia,emc-configuration:

>>> -            $ref: /schemas/types.yaml#/definitions/uint32-array

>>> +            allOf:

>>> +              - $ref: /schemas/types.yaml#/definitions/uint32-array

>>>              description:

>>>                EMC timing characterization data. These are the registers

>>>                (see section "18.13.2 EMC Registers" in the TRM) whose values

>>> diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

>>> index 84fd57bcf0dc..4b9196c83291 100644

>>> --- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

>>> +++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml

>>> @@ -77,7 +77,8 @@ patternProperties:

>>>              maximum: 900000000

>>>

>>>            nvidia,emem-configuration:

>>> -            $ref: /schemas/types.yaml#/definitions/uint32-array

>>> +            allOf:

>>> +              - $ref: /schemas/types.yaml#/definitions/uint32-array

>>>              description: |

>>>                Values to be written to the EMEM register block. See section

>>>                "18.13.1 MC Registers" in the TRM.

>>>

>>

>> But the "nvidia,emem-configuration" doesn't have any extra constraints.

>> Or you just added the "allOf" for consistency to avoid possible future

>> copy-paste bugs?

> 

> It does have constraints. It has the 'items' list.


Right, I missed that array-size is also a constraint.

> Note that fixing it introduces an error which I'm in the process of

> fixing in the schema tool.


Okay!

>> Otherwise LGTM, thanks!

>>

>> Reviewed-by: Dmitry Osipenko <digetx@gmail.com>

> 

> Thanks.

> 

> Rob

>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml
index 30d9fb193d7f..22a94b6fdbde 100644
--- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml
+++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra124-mc.yaml
@@ -60,7 +60,8 @@  patternProperties:
             maximum: 1066000000
 
           nvidia,emem-configuration:
-            $ref: /schemas/types.yaml#/definitions/uint32-array
+            allOf:
+              - $ref: /schemas/types.yaml#/definitions/uint32-array
             description: |
               Values to be written to the EMEM register block. See section
               "15.6.1 MC Registers" in the TRM.
diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml
index 7fe0ca14e324..e4135bac6957 100644
--- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml
+++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-emc.yaml
@@ -56,7 +56,8 @@  patternProperties:
             maximum: 900000000
 
           nvidia,emc-auto-cal-interval:
-            $ref: /schemas/types.yaml#/definitions/uint32
+            allOf:
+              - $ref: /schemas/types.yaml#/definitions/uint32
             description:
               Pad calibration interval in microseconds.
             minimum: 0
@@ -78,7 +79,8 @@  patternProperties:
               Mode Register 0.
 
           nvidia,emc-zcal-cnt-long:
-            $ref: /schemas/types.yaml#/definitions/uint32
+            allOf:
+              - $ref: /schemas/types.yaml#/definitions/uint32
             description:
               Number of EMC clocks to wait before issuing any commands after
               sending ZCAL_MRW_CMD.
@@ -96,7 +98,8 @@  patternProperties:
               FBIO "read" FIFO periodic resetting enabled.
 
           nvidia,emc-configuration:
-            $ref: /schemas/types.yaml#/definitions/uint32-array
+            allOf:
+              - $ref: /schemas/types.yaml#/definitions/uint32-array
             description:
               EMC timing characterization data. These are the registers
               (see section "18.13.2 EMC Registers" in the TRM) whose values
diff --git a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml
index 84fd57bcf0dc..4b9196c83291 100644
--- a/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml
+++ b/Documentation/devicetree/bindings/memory-controllers/nvidia,tegra30-mc.yaml
@@ -77,7 +77,8 @@  patternProperties:
             maximum: 900000000
 
           nvidia,emem-configuration:
-            $ref: /schemas/types.yaml#/definitions/uint32-array
+            allOf:
+              - $ref: /schemas/types.yaml#/definitions/uint32-array
             description: |
               Values to be written to the EMEM register block. See section
               "18.13.1 MC Registers" in the TRM.