On 27/04/2022 01:24, Bjorn Andersson wrote: > Add binding for the Qualcomm SC8280XP Global Clock controller. > > Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > --- > > Changes since v2: > - Dropped clock-names, in favor of forcing implementation to rely on index > based clock matching. Implementation does not have to use clock-names, but it's useful for humans. You can drop it, but I think it makes life of reviewing DTS more difficult. > - Updated descriptions for a few clocks that only had their clock names. > > .../bindings/clock/qcom,gcc-sc8280xp.yaml | 129 +++++ > include/dt-bindings/clock/qcom,gcc-sc8280xp.h | 496 ++++++++++++++++++ > 2 files changed, 625 insertions(+) > create mode 100644 Documentation/devicetree/bindings/clock/qcom,gcc-sc8280xp.yaml > create mode 100644 include/dt-bindings/clock/qcom,gcc-sc8280xp.h > > diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc-sc8280xp.yaml b/Documentation/devicetree/bindings/clock/qcom,gcc-sc8280xp.yaml > new file mode 100644 > index 000000000000..bf4f9dd3ec85 > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/qcom,gcc-sc8280xp.yaml > @@ -0,0 +1,129 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/clock/qcom,gcc-sc8280xp.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Qualcomm Global Clock & Reset Controller Binding for SC8280xp > + > +maintainers: > + - Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> > + > +description: | > + Qualcomm global clock control module which supports the clocks, resets and > + power domains on SC8280xp. > + > + See also: > + - dt-bindings/clock/qcom,gcc-sc8280xp.h Still not a full path. It makes it more difficult to validate whether the path exists or not. You can put it in <> if you prefer to skip include. > + > +properties: > + compatible: > + const: qcom,gcc-sc8280xp > + > + clocks: > + items: > + - description: XO reference clock > + - description: Sleep clock > + - description: UFS memory first RX symbol clock > + - description: UFS memory second RX symbol clock > + - description: UFS memory first TX symbol clock > + - description: UFS card first RX symbol clock > + - description: UFS card second RX symbol clock > + - description: UFS card first TX symbol clock > + - description: Primary USB SuperSpeed pipe clock > + - description: USB4 PHY pipegmux clock source > + - description: USB4 PHY DP gmux clock source > + - description: USB4 PHY sys piegmux clock source > + - description: USB4 PHY PCIe pipe clock > + - description: USB4 PHY router max pipe clock > + - description: Primary USB4 RX0 clock > + - description: Primary USB4 RX1 clock > + - description: Secondary USB SuperSpeed pipe clock > + - description: Second USB4 PHY pipegmux clock source > + - description: Second USB4 PHY DP gmux clock source > + - description: Second USB4 PHY sys pipegmux clock source > + - description: Second USB4 PHY PCIe pipe clock > + - description: Second USB4 PHY router max pipe clock > + - description: Secondary USB4 RX0 clock > + - description: Secondary USB4 RX0 clock Duplicated name. RX1? > + - description: Multiport USB first SupserSpeed pipe clock > + - description: Multiport USB second SuperSpeed pipe clock > + - description: PCIe 2a pipe clock > + - description: PCIe 2b pipe clock > + - description: PCIe 3a pipe clock > + - description: PCIe 3b pipe clock > + - description: PCIe 4 pipe clock > + - description: First EMAC controller reference clock > + - description: Second EMAC controller reference clock > + > + '#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. No need for description. You need maxItems, though. Best regards, Krzysztof