diff mbox series

[v3,01/15] dt-bindings: clock: split qcom,gcc.yaml to common and specific schema

Message ID 20220121210340.32362-2-ansuelsmth@gmail.com
State Changes Requested, archived
Headers show
Series Multiple addition and improvement to ipq8064 gcc | expand

Checks

Context Check Description
robh/checkpatch success
robh/dtbs-check warning build log
robh/dt-meta-schema success
robh/checkpatch success
robh/dtbs-check warning build log
robh/dt-meta-schema success

Commit Message

Christian Marangi Jan. 21, 2022, 9:03 p.m. UTC
Split qcom,gcc.yaml to common and specific schema to use it as a
template for schema that needs to use the gcc bindings and require
to add additional bindings.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
 .../bindings/clock/qcom,gcc-common.yaml       | 42 +++++++++++++++++++
 .../devicetree/bindings/clock/qcom,gcc.yaml   | 25 ++---------
 2 files changed, 46 insertions(+), 21 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml

Comments

Bjorn Andersson Jan. 31, 2022, 11:11 p.m. UTC | #1
On Fri 21 Jan 15:03 CST 2022, Ansuel Smith wrote:

> Split qcom,gcc.yaml to common and specific schema to use it as a
> template for schema that needs to use the gcc bindings and require
> to add additional bindings.
> 

Nice!

> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
> ---
>  .../bindings/clock/qcom,gcc-common.yaml       | 42 +++++++++++++++++++
>  .../devicetree/bindings/clock/qcom,gcc.yaml   | 25 ++---------
>  2 files changed, 46 insertions(+), 21 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml
> 
> diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml
> new file mode 100644
> index 000000000000..ea1dd94d8bf1
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml

It seems reasonable to expect that qcom,gcc.yaml should be split out in
a number of trivial qcom,gcc-platform.yaml files to define input clock
etc. So how about using qcom,gcc.yaml for the common properties and for
now rename the existing file to something like qcom,gcc-others.yaml
?

> @@ -0,0 +1,42 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/clock/qcom,gcc-common.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm Global Clock & Reset Controller Binding Common Bindings
> +
> +maintainers:
> +  - Stephen Boyd <sboyd@kernel.org>
> +  - Taniya Das <tdas@codeaurora.org>
> +
> +description: |

No need to preserve the formatting here, so the pipe can go.

Regards,
Bjorn

> +  Common bindings for Qualcomm global clock control module which supports
> +  the clocks, resets and power domains.
> +
> +properties:
> +  '#clock-cells':
> +    const: 1
> +
> +  '#reset-cells':
> +    const: 1
> +
> +  '#power-domain-cells':
> +    const: 1
> +
> +  reg:
> +    maxItems: 1
> +
> +  protected-clocks:
> +    description:
> +      Protected clock specifier list as per common clock binding.
> +
> +required:
> +  - reg
> +  - '#clock-cells'
> +  - '#reset-cells'
> +  - '#power-domain-cells'
> +
> +additionalProperties: true
> +
> +...
> diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
> index f66d703bd913..73e3ff4979c6 100644
> --- a/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
> +++ b/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
> @@ -34,6 +34,9 @@ description: |
>    - dt-bindings/reset/qcom,gcc-mdm9615.h
>    - dt-bindings/clock/qcom,gcc-sdm660.h  (qcom,gcc-sdm630 and qcom,gcc-sdm660)
>  
> +allOf:
> +  - $ref: "qcom,gcc-common.yaml#"
> +
>  properties:
>    compatible:
>      enum:
> @@ -55,30 +58,10 @@ properties:
>        - qcom,gcc-sdm630
>        - qcom,gcc-sdm660
>  
> -  '#clock-cells':
> -    const: 1
> -
> -  '#reset-cells':
> -    const: 1
> -
> -  '#power-domain-cells':
> -    const: 1
> -
> -  reg:
> -    maxItems: 1
> -
> -  protected-clocks:
> -    description:
> -      Protected clock specifier list as per common clock binding.
> -
>  required:
>    - compatible
> -  - reg
> -  - '#clock-cells'
> -  - '#reset-cells'
> -  - '#power-domain-cells'
>  
> -additionalProperties: false
> +unevaluatedProperties: false
>  
>  examples:
>    # Example for GCC for MSM8960:
> -- 
> 2.33.1
>
Christian Marangi Feb. 1, 2022, 9:53 p.m. UTC | #2
On Mon, Jan 31, 2022 at 05:11:44PM -0600, Bjorn Andersson wrote:
> On Fri 21 Jan 15:03 CST 2022, Ansuel Smith wrote:
> 
> > Split qcom,gcc.yaml to common and specific schema to use it as a
> > template for schema that needs to use the gcc bindings and require
> > to add additional bindings.
> > 
> 
> Nice!
> 
> > Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
> > ---
> >  .../bindings/clock/qcom,gcc-common.yaml       | 42 +++++++++++++++++++
> >  .../devicetree/bindings/clock/qcom,gcc.yaml   | 25 ++---------
> >  2 files changed, 46 insertions(+), 21 deletions(-)
> >  create mode 100644 Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml
> > 
> > diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml
> > new file mode 100644
> > index 000000000000..ea1dd94d8bf1
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml
> 
> It seems reasonable to expect that qcom,gcc.yaml should be split out in
> a number of trivial qcom,gcc-platform.yaml files to define input clock
> etc. So how about using qcom,gcc.yaml for the common properties and for
> now rename the existing file to something like qcom,gcc-others.yaml
> ?
>

Ok, just to make sure.
gcc-common.yaml -> gcc.yaml (the template)
gcc.yaml -> gcc-others.yaml (the generic gcc schema)

Correct?

> > @@ -0,0 +1,42 @@
> > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/clock/qcom,gcc-common.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Qualcomm Global Clock & Reset Controller Binding Common Bindings
> > +
> > +maintainers:
> > +  - Stephen Boyd <sboyd@kernel.org>
> > +  - Taniya Das <tdas@codeaurora.org>
> > +
> > +description: |
> 
> No need to preserve the formatting here, so the pipe can go.
> 
> Regards,
> Bjorn
> 
> > +  Common bindings for Qualcomm global clock control module which supports
> > +  the clocks, resets and power domains.
> > +
> > +properties:
> > +  '#clock-cells':
> > +    const: 1
> > +
> > +  '#reset-cells':
> > +    const: 1
> > +
> > +  '#power-domain-cells':
> > +    const: 1
> > +
> > +  reg:
> > +    maxItems: 1
> > +
> > +  protected-clocks:
> > +    description:
> > +      Protected clock specifier list as per common clock binding.
> > +
> > +required:
> > +  - reg
> > +  - '#clock-cells'
> > +  - '#reset-cells'
> > +  - '#power-domain-cells'
> > +
> > +additionalProperties: true
> > +
> > +...
> > diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
> > index f66d703bd913..73e3ff4979c6 100644
> > --- a/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
> > +++ b/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
> > @@ -34,6 +34,9 @@ description: |
> >    - dt-bindings/reset/qcom,gcc-mdm9615.h
> >    - dt-bindings/clock/qcom,gcc-sdm660.h  (qcom,gcc-sdm630 and qcom,gcc-sdm660)
> >  
> > +allOf:
> > +  - $ref: "qcom,gcc-common.yaml#"
> > +
> >  properties:
> >    compatible:
> >      enum:
> > @@ -55,30 +58,10 @@ properties:
> >        - qcom,gcc-sdm630
> >        - qcom,gcc-sdm660
> >  
> > -  '#clock-cells':
> > -    const: 1
> > -
> > -  '#reset-cells':
> > -    const: 1
> > -
> > -  '#power-domain-cells':
> > -    const: 1
> > -
> > -  reg:
> > -    maxItems: 1
> > -
> > -  protected-clocks:
> > -    description:
> > -      Protected clock specifier list as per common clock binding.
> > -
> >  required:
> >    - compatible
> > -  - reg
> > -  - '#clock-cells'
> > -  - '#reset-cells'
> > -  - '#power-domain-cells'
> >  
> > -additionalProperties: false
> > +unevaluatedProperties: false
> >  
> >  examples:
> >    # Example for GCC for MSM8960:
> > -- 
> > 2.33.1
> >
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml
new file mode 100644
index 000000000000..ea1dd94d8bf1
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/qcom,gcc-common.yaml
@@ -0,0 +1,42 @@ 
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/clock/qcom,gcc-common.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Global Clock & Reset Controller Binding Common Bindings
+
+maintainers:
+  - Stephen Boyd <sboyd@kernel.org>
+  - Taniya Das <tdas@codeaurora.org>
+
+description: |
+  Common bindings for Qualcomm global clock control module which supports
+  the clocks, resets and power domains.
+
+properties:
+  '#clock-cells':
+    const: 1
+
+  '#reset-cells':
+    const: 1
+
+  '#power-domain-cells':
+    const: 1
+
+  reg:
+    maxItems: 1
+
+  protected-clocks:
+    description:
+      Protected clock specifier list as per common clock binding.
+
+required:
+  - reg
+  - '#clock-cells'
+  - '#reset-cells'
+  - '#power-domain-cells'
+
+additionalProperties: true
+
+...
diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
index f66d703bd913..73e3ff4979c6 100644
--- a/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
+++ b/Documentation/devicetree/bindings/clock/qcom,gcc.yaml
@@ -34,6 +34,9 @@  description: |
   - dt-bindings/reset/qcom,gcc-mdm9615.h
   - dt-bindings/clock/qcom,gcc-sdm660.h  (qcom,gcc-sdm630 and qcom,gcc-sdm660)
 
+allOf:
+  - $ref: "qcom,gcc-common.yaml#"
+
 properties:
   compatible:
     enum:
@@ -55,30 +58,10 @@  properties:
       - qcom,gcc-sdm630
       - qcom,gcc-sdm660
 
-  '#clock-cells':
-    const: 1
-
-  '#reset-cells':
-    const: 1
-
-  '#power-domain-cells':
-    const: 1
-
-  reg:
-    maxItems: 1
-
-  protected-clocks:
-    description:
-      Protected clock specifier list as per common clock binding.
-
 required:
   - compatible
-  - reg
-  - '#clock-cells'
-  - '#reset-cells'
-  - '#power-domain-cells'
 
-additionalProperties: false
+unevaluatedProperties: false
 
 examples:
   # Example for GCC for MSM8960: