On 22/01/2023 20:29, Danila Tikhonov wrote: > Add device tree bindings for global clock subsystem clock > controller for Qualcomm Technology Inc's SM7150 SoCs. > > Co-developed-by: David Wronek <davidwronek@xxxxxxxxx> > Signed-off-by: David Wronek <davidwronek@xxxxxxxxx> > Signed-off-by: Danila Tikhonov <danila@xxxxxxxxxxx> > --- > .../bindings/clock/qcom,sm7150-gcc.yaml | 69 +++++++ > include/dt-bindings/clock/qcom,sm7150-gcc.h | 193 ++++++++++++++++++ > 2 files changed, 262 insertions(+) > create mode 100644 Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml > create mode 100644 include/dt-bindings/clock/qcom,sm7150-gcc.h > > diff --git a/Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml b/Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml > new file mode 100644 > index 000000000000..a0105e11fdb8 > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/qcom,sm7150-gcc.yaml > @@ -0,0 +1,69 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/clock/qcom,sm7150-gcc.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Qualcomm Global Clock & Reset Controller on SM7150 > + > +maintainers: > + - Bjorn Andersson <andersson@xxxxxxxxxx> > + - Danila Tikhonov <danila@xxxxxxxxxxx> > + - David Wronek <davidwronek@xxxxxxxxx> > + > +description: | > + Qualcomm global clock control module provides the clocks, resets and power > + domains on SM7150 > + > + See also:: include/dt-bindings/clock/qcom,sm7150-gcc.h > + > +properties: > + compatible: > + const: qcom,sm7150-gcc > + > + clocks: > + items: > + - description: Board XO source > + - description: Board XO Active-Only source > + - description: Sleep clock source > + If you started your work from the most recent bindings (e.g. sm8550) you would have saved one iteration and one set of review... > + '#clock-cells': > + const: 1 Drop entire property, it's coming from gcc.yaml. > + '#reset-cells': > + const: 1 Ditto > + > + '#power-domain-cells': > + const: 1 Ditto > + > + reg: > + maxItems: 1 Ditto > + > +required: > + - compatible > + - reg Drop reg > + - clocks > + - '#clock-cells' > + - '#reset-cells' > + - '#power-domain-cells' Drop these three. > + > +allOf: > + - $ref: qcom,gcc.yaml# > + > +unevaluatedProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/qcom,rpmh.h> > + clock-controller@100000 { > + compatible = "qcom,sm7150-gcc"; > + reg = <0x00100000 0x001f0000>; > + clocks = <&rpmhcc RPMH_CXO_CLK>, > + <&rpmhcc RPMH_CXO_CLK_A>, > + <&sleep_clk>; > + #clock-cells = <1>; > + #reset-cells = <1>; > + #power-domain-cells = <1>; > + }; > +... > + > diff --git a/include/dt-bindings/clock/qcom,sm7150-gcc.h b/include/dt-bindings/clock/qcom,sm7150-gcc.h > new file mode 100644 > index 000000000000..3e5f8d32796d > --- /dev/null > +++ b/include/dt-bindings/clock/qcom,sm7150-gcc.h > @@ -0,0 +1,193 @@ > +/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) */ > +/* > + * Copyright (c) 2023, Danila Tikhonov <danila@xxxxxxxxxxx> > + * Copyright (c) 2023, David Wronek <davidwronek@xxxxxxxxx> You did not base your work on any existing bindings upstream or downstream? This should include original work copyrights... Best regards, Krzysztof