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@xxxxxxxxx> > --- > .../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@xxxxxxxxxx> > + - Taniya Das <tdas@xxxxxxxxxxxxxx> > + > +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 >