Re: [PATCH v2] dt-bindings: clock: ti,clockdomain: Convert to DT schema
From: Bhargav Joshi
Date: Tue Jun 30 2026 - 15:08:34 EST
On Tue, Jun 30, 2026 at 9:17 PM Rob Herring <robh@xxxxxxxxxx> wrote:
>
> On Mon, Jun 22, 2026 at 11:21:33PM +0530, Bhargav Joshi wrote:
> > Convert TI clockdomain to yaml DT schema. Drop '#clock-cells' from the
> > required list as this binding doesn't define a new clock binding type,
> > it is used to group existing clock nodes under hardware hierarchy. Most
> > existing dts omit '#clock-cells'.
> >
> > Update the reference to the old legacy text binding in the description
> > of bindings/clock/ti/ti,gate-clock.yaml to point to the new YAML file.
> >
> > Signed-off-by: Bhargav Joshi <j.bhargav.u@xxxxxxxxx>
> > ---
> > Changes in v2:
> > - updating the stale reference to the legacy .txt file inside
> > bindings/clock/ti/ti,gate-clock.yaml to fix make refcheckdocs error
> > - Link to v1: https://lore.kernel.org/r/20260621-ti-clockdomain-v1-1-e99a56af98ea@xxxxxxxxx
> > ---
> > .../devicetree/bindings/clock/ti/clockdomain.txt | 25 -------------
> > .../bindings/clock/ti/ti,clockdomain.yaml | 41 ++++++++++++++++++++++
> > .../bindings/clock/ti/ti,gate-clock.yaml | 2 +-
> > 3 files changed, 42 insertions(+), 26 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/clock/ti/clockdomain.txt b/Documentation/devicetree/bindings/clock/ti/clockdomain.txt
> > deleted file mode 100644
> > index edf0b5d42768..000000000000
> > --- a/Documentation/devicetree/bindings/clock/ti/clockdomain.txt
> > +++ /dev/null
> > @@ -1,25 +0,0 @@
> > -Binding for Texas Instruments clockdomain.
> > -
> > -This binding uses the common clock binding[1] in consumer role.
> > -Every clock on TI SoC belongs to one clockdomain, but software
> > -only needs this information for specific clocks which require
> > -their parent clockdomain to be controlled when the clock is
> > -enabled/disabled. This binding doesn't define a new clock
> > -binding type, it is used to group existing clock nodes under
> > -hardware hierarchy.
> > -
> > -[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
> > -
> > -Required properties:
> > -- compatible : shall be "ti,clockdomain"
> > -- #clock-cells : from common clock binding; shall be set to 0.
> > -- clocks : link phandles of clocks within this domain
> > -
> > -Optional properties:
> > -- clock-output-names : from common clock binding.
> > -
> > -Examples:
> > - dss_clkdm: dss_clkdm {
> > - compatible = "ti,clockdomain";
> > - clocks = <&dss1_alwon_fck_3430es2>, <&dss_ick_3430es2>;
> > - };
> > diff --git a/Documentation/devicetree/bindings/clock/ti/ti,clockdomain.yaml b/Documentation/devicetree/bindings/clock/ti/ti,clockdomain.yaml
> > new file mode 100644
> > index 000000000000..9494cbb1a942
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/clock/ti/ti,clockdomain.yaml
> > @@ -0,0 +1,41 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/clock/ti/ti,clockdomain.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Texas Instruments clockdomain
> > +
> > +maintainers:
> > + - Tero Kristo <kristo@xxxxxxxxxx>
> > +
> > +description:
> > + This binding uses the common clock binding in consumer role. Every clock on TI
> > + SoC belongs to one clockdomain, but software only needs this information for
> > + specific clocks which require their parent clockdomain to be controlled when
> > + the clock is enabled/disabled. This binding doesn't define a new clock binding
> > + type, it is used to group existing clock nodes under hardware hierarchy.
> > +
> > +properties:
> > + compatible:
> > + const: ti,clockdomain
> > +
> > + "#clock-cells":
> > + const: 0
> > +
> > + clocks: true
>
> At least put some range of number of clocks.
There is no specific bound for the number of clocks per domain nor does
the driver enforce it so I left it as 'true'. In existing DTS files, the
largest is am35xx's core_l3_clkdm with 39 clocks. No fixed bound
otherwise. So should I keep it as 'true' or you'd prefer a specific cap?
>
> > +
> > + clock-output-names: true
>
> If #clock-cells is 0, then this can only have 1 entry (maxItems: 1).
sure I will fix this.
>
> > +
> > +required:
> > + - compatible
> > + - clocks
> > +
> > +additionalProperties: false
> > +
> > +examples:
> > + - |
> > + dss_clkdm {
> > + compatible = "ti,clockdomain";
> > + clocks = <&dss1_alwon_fck_3430es2>, <&dss_ick_3430es2>;
> > + };
> > diff --git a/Documentation/devicetree/bindings/clock/ti/ti,gate-clock.yaml b/Documentation/devicetree/bindings/clock/ti/ti,gate-clock.yaml
> > index eaa727ab0d7f..438e190d1067 100644
> > --- a/Documentation/devicetree/bindings/clock/ti/ti,gate-clock.yaml
> > +++ b/Documentation/devicetree/bindings/clock/ti/ti,gate-clock.yaml
> > @@ -19,7 +19,7 @@ description: |
> > that is used.
> >
> > [1] Documentation/devicetree/bindings/clock/gpio-gate-clock.yaml
> > - [2] Documentation/devicetree/bindings/clock/ti/clockdomain.txt
> > + [2] Documentation/devicetree/bindings/clock/ti/ti,clockdomain.yaml
> >
> > properties:
> > compatible:
> >
> > ---
> > base-commit: acb7500801e98639f6d8c2d796ed9f64cba83d3a
> > change-id: 20260610-ti-clockdomain-a27dd0fa1ad5
> >
> > Best regards,
> > --
> > Bhargav
> >
> >
Best regards,
Bhargav