# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/i2c/i2c-imx.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale Inter IC (I2C) and High Speed Inter IC (HS-I2C) for i.MX

maintainers:
  - Wolfram Sang <wolfram@the-dreams.de>

allOf:
  - $ref: /schemas/i2c/i2c-controller.yaml#

properties:
  compatible:
    oneOf:
      - const: fsl,imx1-i2c
      - const: fsl,imx21-i2c
      - const: fsl,vf610-i2c
      - items:
          - const: fsl,imx35-i2c
          - const: fsl,imx1-i2c
      - items:
          - const: fsl,imx7d-i2c
          - const: fsl,imx21-i2c
      - items:
          - enum:
              - fsl,imx25-i2c
              - fsl,imx27-i2c
              - fsl,imx31-i2c
              - fsl,imx50-i2c
              - fsl,imx51-i2c
              - fsl,imx53-i2c
              - fsl,imx6q-i2c
              - fsl,imx6sl-i2c
              - fsl,imx6sx-i2c
              - fsl,imx6sll-i2c
              - fsl,imx6ul-i2c
              - fsl,imx7s-i2c
              - fsl,imx8mq-i2c
              - fsl,imx8mm-i2c
              - fsl,imx8mn-i2c
              - fsl,imx8mp-i2c
          - const: fsl,imx21-i2c

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    const: ipg

  clock-frequency:
    enum: [ 100000, 400000 ]

  dmas:
    items:
      - description: DMA controller phandle and request line for RX
      - description: DMA controller phandle and request line for TX

  dma-names:
    items:
      - const: rx
      - const: tx

  sda-gpios:
    maxItems: 1

  scl-gpios:
    maxItems: 1

required:
  - compatible
  - reg
  - interrupts
  - clocks

unevaluatedProperties: false

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

    i2c@83fc4000 {
        compatible = "fsl,imx51-i2c", "fsl,imx21-i2c";
        reg = <0x83fc4000 0x4000>;
        interrupts = <63>;
        clocks = <&clks IMX5_CLK_I2C2_GATE>;
    };

    i2c@40066000 {
        compatible = "fsl,vf610-i2c";
        reg = <0x40066000 0x1000>;
        interrupts = <71 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&clks VF610_CLK_I2C0>;
        clock-names = "ipg";
        dmas = <&edma0 0 50>,
               <&edma0 0 51>;
        dma-names = "rx", "tx";
    };
