Message ID | 1588207921-20604-2-git-send-email-Anson.Huang@nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [V4,1/5] dt-bindings: clock: Convert i.MX6Q clock to json-schema | expand |
On Thu, Apr 30, 2020 at 08:51:58AM +0800, Anson Huang wrote: > Convert the i.MX6SX clock binding to DT schema format using json-schema. > > Signed-off-by: Anson Huang <Anson.Huang@nxp.com> > --- > Changes since V3: > - update license to be with (GPL-2.0-only OR BSD-2-Clause); > - remove unnecessary minItem for interrupts; > - remove label in example. > --- > .../devicetree/bindings/clock/imx6sx-clock.txt | 13 ----- > .../devicetree/bindings/clock/imx6sx-clock.yaml | 64 ++++++++++++++++++++++ > 2 files changed, 64 insertions(+), 13 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/clock/imx6sx-clock.txt > create mode 100644 Documentation/devicetree/bindings/clock/imx6sx-clock.yaml > > diff --git a/Documentation/devicetree/bindings/clock/imx6sx-clock.txt b/Documentation/devicetree/bindings/clock/imx6sx-clock.txt > deleted file mode 100644 > index 22362b9..0000000 > --- a/Documentation/devicetree/bindings/clock/imx6sx-clock.txt > +++ /dev/null > @@ -1,13 +0,0 @@ > -* Clock bindings for Freescale i.MX6 SoloX > - > -Required properties: > -- compatible: Should be "fsl,imx6sx-ccm" > -- reg: Address and length of the register set > -- #clock-cells: Should be <1> > -- clocks: list of clock specifiers, must contain an entry for each required > - entry in clock-names > -- clock-names: should include entries "ckil", "osc", "ipp_di0" and "ipp_di1" > - > -The clock consumer should specify the desired clock by having the clock > -ID in its "clocks" phandle cell. See include/dt-bindings/clock/imx6sx-clock.h > -for the full list of i.MX6 SoloX clock IDs. > diff --git a/Documentation/devicetree/bindings/clock/imx6sx-clock.yaml b/Documentation/devicetree/bindings/clock/imx6sx-clock.yaml > new file mode 100644 > index 0000000..2c7f625 > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/imx6sx-clock.yaml > @@ -0,0 +1,64 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/clock/imx6sx-clock.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Clock bindings for Freescale i.MX6 SoloX > + > +maintainers: > + - Anson Huang <Anson.Huang@nxp.com> > + > +properties: > + compatible: > + const: fsl,imx6sx-ccm > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 2 Need to define what each one is: interrupts: items: - description: ... - description: ... And you should explain why this was added. > + > + '#clock-cells': > + const: 1 > + > + clocks: > + items: > + - description: 32k osc > + - description: 24m osc > + - description: ipp_di0 clock input > + - description: ipp_di1 clock input > + - description: anaclk1 clock input > + - description: anaclk2 clock input > + > + clock-names: > + items: > + - const: ckil > + - const: osc > + - const: ipp_di0 > + - const: ipp_di1 > + - const: anaclk1 > + - const: anaclk2 > + > +required: > + - compatible > + - reg > + - interrupts > + - '#clock-cells' > + - clocks > + - clock-names > + > +examples: > + # Clock Control Module node: > + - | > + #include <dt-bindings/interrupt-controller/arm-gic.h> > + > + clock-controller@20c4000 { > + compatible = "fsl,imx6sx-ccm"; > + reg = <0x020c4000 0x4000>; > + interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>, > + <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; > + #clock-cells = <1>; > + clocks = <&ckil>, <&osc>, <&ipp_di0>, <&ipp_di1>, <&anaclk1>, <&anaclk2>; > + clock-names = "ckil", "osc", "ipp_di0", "ipp_di1", "anaclk1", "anaclk2"; > + }; > -- > 2.7.4 >
diff --git a/Documentation/devicetree/bindings/clock/imx6sx-clock.txt b/Documentation/devicetree/bindings/clock/imx6sx-clock.txt deleted file mode 100644 index 22362b9..0000000 --- a/Documentation/devicetree/bindings/clock/imx6sx-clock.txt +++ /dev/null @@ -1,13 +0,0 @@ -* Clock bindings for Freescale i.MX6 SoloX - -Required properties: -- compatible: Should be "fsl,imx6sx-ccm" -- reg: Address and length of the register set -- #clock-cells: Should be <1> -- clocks: list of clock specifiers, must contain an entry for each required - entry in clock-names -- clock-names: should include entries "ckil", "osc", "ipp_di0" and "ipp_di1" - -The clock consumer should specify the desired clock by having the clock -ID in its "clocks" phandle cell. See include/dt-bindings/clock/imx6sx-clock.h -for the full list of i.MX6 SoloX clock IDs. diff --git a/Documentation/devicetree/bindings/clock/imx6sx-clock.yaml b/Documentation/devicetree/bindings/clock/imx6sx-clock.yaml new file mode 100644 index 0000000..2c7f625 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/imx6sx-clock.yaml @@ -0,0 +1,64 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/clock/imx6sx-clock.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Clock bindings for Freescale i.MX6 SoloX + +maintainers: + - Anson Huang <Anson.Huang@nxp.com> + +properties: + compatible: + const: fsl,imx6sx-ccm + + reg: + maxItems: 1 + + interrupts: + maxItems: 2 + + '#clock-cells': + const: 1 + + clocks: + items: + - description: 32k osc + - description: 24m osc + - description: ipp_di0 clock input + - description: ipp_di1 clock input + - description: anaclk1 clock input + - description: anaclk2 clock input + + clock-names: + items: + - const: ckil + - const: osc + - const: ipp_di0 + - const: ipp_di1 + - const: anaclk1 + - const: anaclk2 + +required: + - compatible + - reg + - interrupts + - '#clock-cells' + - clocks + - clock-names + +examples: + # Clock Control Module node: + - | + #include <dt-bindings/interrupt-controller/arm-gic.h> + + clock-controller@20c4000 { + compatible = "fsl,imx6sx-ccm"; + reg = <0x020c4000 0x4000>; + interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; + #clock-cells = <1>; + clocks = <&ckil>, <&osc>, <&ipp_di0>, <&ipp_di1>, <&anaclk1>, <&anaclk2>; + clock-names = "ckil", "osc", "ipp_di0", "ipp_di1", "anaclk1", "anaclk2"; + };
Convert the i.MX6SX clock binding to DT schema format using json-schema. Signed-off-by: Anson Huang <Anson.Huang@nxp.com> --- Changes since V3: - update license to be with (GPL-2.0-only OR BSD-2-Clause); - remove unnecessary minItem for interrupts; - remove label in example. --- .../devicetree/bindings/clock/imx6sx-clock.txt | 13 ----- .../devicetree/bindings/clock/imx6sx-clock.yaml | 64 ++++++++++++++++++++++ 2 files changed, 64 insertions(+), 13 deletions(-) delete mode 100644 Documentation/devicetree/bindings/clock/imx6sx-clock.txt create mode 100644 Documentation/devicetree/bindings/clock/imx6sx-clock.yaml