Quoting Anson Huang (2019-12-26 18:12:26) > diff --git a/Documentation/devicetree/bindings/clock/imx8mp-clock.yaml b/Documentation/devicetree/bindings/clock/imx8mp-clock.yaml > new file mode 100644 > index 0000000..5e01995 > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/imx8mp-clock.yaml > @@ -0,0 +1,112 @@ > +# SPDX-License-Identifier: GPL-2.0 > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/bindings/clock/imx8mp-clock.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: NXP i.MX8M Plus Clock Control Module Binding > + > +maintainers: > + - Anson Huang <Anson.Huang@xxxxxxx> > + > +description: | > + NXP i.MX8M Plus clock control module is an integrated clock controller, which > + generates and supplies to all modules. > + > +properties: > + compatible: > + const: fsl,imx8mp-ccm > + > + reg: > + maxItems: 1 > + > + clocks: > + items: > + - description: 32k osc > + - description: 24m osc > + - description: ext1 clock input > + - description: ext2 clock input > + - description: ext3 clock input > + - description: ext4 clock input > + > + clock-names: > + items: > + - const: osc_32k > + - const: osc_24m > + - const: clk_ext1 > + - const: clk_ext2 > + - const: clk_ext3 > + - const: clk_ext4 > + > + '#clock-cells': > + const: 1 > + description: | I think we can drop the bar here. Newlines shouldn't matter. > + The clock consumer should specify the desired clock by having the clock > + ID in its "clocks" phandle cell. See include/dt-bindings/clock/imx8mp-clock.h > + for the full list of i.MX8M Plus clock IDs. > + > +required: > + - compatible > + - reg > + - clocks > + - clock-names > + - '#clock-cells' > + > +examples: > + # Clock Control Module node: > + - | > + clk: clock-controller@30380000 { > + compatible = "fsl,imx8mp-ccm"; > + reg = <0x30380000 0x10000>; > + #clock-cells = <1>; > + clocks = <&osc_32k>, <&osc_24m>, <&clk_ext1>, > + <&clk_ext2>, <&clk_ext3>, <&clk_ext4>; > + clock-names = "osc_32k", "osc_24m", "clk_ext1", > + "clk_ext2", "clk_ext3", "clk_ext4"; > + }; > + > + # Required external clocks for Clock Control Module node: > + - | > + osc_32k: clock-osc-32k { > + compatible = "fixed-clock"; > + #clock-cells = <0>; > + clock-frequency = <32768>; > + clock-output-names = "osc_32k"; > + }; Do we need these in the example? They don't seem too useful. > + > + osc_24m: clock-osc-24m { > + compatible = "fixed-clock"; > + #clock-cells = <0>; > + clock-frequency = <24000000>; > + clock-output-names = "osc_24m"; > + }; > + > + clk_ext1: clock-ext1 { > + compatible = "fixed-clock"; > + #clock-cells = <0>; > + clock-frequency = <133000000>;