Commit 8d71c8c0 authored by Anson Huang's avatar Anson Huang Committed by Rob Herring
Browse files

dt-bindings: clock: Convert i.MX5 clock to json-schema



Convert the i.MX5 clock binding to DT schema format using json-schema.

Signed-off-by: default avatarAnson Huang <Anson.Huang@nxp.com>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent 3910c580
Loading
Loading
Loading
Loading
+0 −28
Original line number Diff line number Diff line
* Clock bindings for Freescale i.MX5

Required properties:
- compatible: Should be "fsl,<soc>-ccm" , where <soc> can be imx51 or imx53
- reg: Address and length of the register set
- interrupts: Should contain CCM interrupt
- #clock-cells: Should be <1>

The clock consumer should specify the desired clock by having the clock
ID in its "clocks" phandle cell. See include/dt-bindings/clock/imx5-clock.h
for the full list of i.MX5 clock IDs.

Examples (for mx53):

clks: ccm@53fd4000{
	compatible = "fsl,imx53-ccm";
	reg = <0x53fd4000 0x4000>;
	interrupts = <0 71 0x04 0 72 0x04>;
	#clock-cells = <1>;
};

can1: can@53fc8000 {
	compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan";
	reg = <0x53fc8000 0x4000>;
	interrupts = <82>;
	clocks = <&clks IMX5_CLK_CAN1_IPG_GATE>, <&clks IMX5_CLK_CAN1_SERIAL_GATE>;
	clock-names = "ipg", "per";
};
+65 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/imx5-clock.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Clock bindings for Freescale i.MX5

maintainers:
  - Fabio Estevam <fabio.estevam@freescale.com>

description: |
  The clock consumer should specify the desired clock by having the clock
  ID in its "clocks" phandle cell. See include/dt-bindings/clock/imx5-clock.h
  for the full list of i.MX5 clock IDs.

properties:
  compatible:
    enum:
      - fsl,imx53-ccm
      - fsl,imx51-ccm
      - fsl,imx50-ccm

  reg:
    maxItems: 1

  interrupts:
    description: CCM provides 2 interrupt requests, request 1 is to generate
      interrupt for frequency or mux change, request 2 is to generate
      interrupt for oscillator read or PLL lock.
    items:
      - description: CCM interrupt request 1
      - description: CCM interrupt request 2

  '#clock-cells':
    const: 1

required:
  - compatible
  - reg
  - interrupts
  - '#clock-cells'

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/imx5-clock.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    clock-controller@53fd4000{
        compatible = "fsl,imx53-ccm";
        reg = <0x53fd4000 0x4000>;
        interrupts = <0 71 IRQ_TYPE_LEVEL_HIGH>,
                     <0 72 IRQ_TYPE_LEVEL_HIGH>;
        #clock-cells = <1>;
    };

    can@53fc8000 {
        compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan";
        reg = <0x53fc8000 0x4000>;
        interrupts = <82>;
        clocks = <&clks IMX5_CLK_CAN1_IPG_GATE>, <&clks IMX5_CLK_CAN1_SERIAL_GATE>;
        clock-names = "ipg", "per";
    };