14bdc4434SAnson Huang# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
24bdc4434SAnson Huang%YAML 1.2
34bdc4434SAnson Huang---
44bdc4434SAnson Huang$id: http://devicetree.org/schemas/i2c/i2c-imx.yaml#
54bdc4434SAnson Huang$schema: http://devicetree.org/meta-schemas/core.yaml#
64bdc4434SAnson Huang
74bdc4434SAnson Huangtitle: Freescale Inter IC (I2C) and High Speed Inter IC (HS-I2C) for i.MX
84bdc4434SAnson Huang
9df8a39f2SWolfram Sangmaintainers:
10df8a39f2SWolfram Sang  - Oleksij Rempel <o.rempel@pengutronix.de>
11df8a39f2SWolfram Sang
1237859693SKrzysztof KozlowskiallOf:
1337859693SKrzysztof Kozlowski  - $ref: /schemas/i2c/i2c-controller.yaml#
1437859693SKrzysztof Kozlowski
154bdc4434SAnson Huangproperties:
164bdc4434SAnson Huang  compatible:
174bdc4434SAnson Huang    oneOf:
184bdc4434SAnson Huang      - const: fsl,imx1-i2c
194bdc4434SAnson Huang      - const: fsl,imx21-i2c
204bdc4434SAnson Huang      - const: fsl,vf610-i2c
214bdc4434SAnson Huang      - items:
22*a060848bSLi Yang          - enum:
23*a060848bSLi Yang              - fsl,ls1012a-i2c
24*a060848bSLi Yang              - fsl,ls1021a-i2c
25*a060848bSLi Yang              - fsl,ls1028a-i2c
26*a060848bSLi Yang              - fsl,ls1043a-i2c
27*a060848bSLi Yang              - fsl,ls1046a-i2c
28*a060848bSLi Yang              - fsl,ls1088a-i2c
29*a060848bSLi Yang              - fsl,ls208xa-i2c
30*a060848bSLi Yang              - fsl,lx2160a-i2c
31*a060848bSLi Yang          - const: fsl,vf610-i2c
32*a060848bSLi Yang      - items:
334bdc4434SAnson Huang          - const: fsl,imx35-i2c
344bdc4434SAnson Huang          - const: fsl,imx1-i2c
354bdc4434SAnson Huang      - items:
36d0fa235cSKrzysztof Kozlowski          - const: fsl,imx7d-i2c
37d0fa235cSKrzysztof Kozlowski          - const: fsl,imx21-i2c
38d0fa235cSKrzysztof Kozlowski      - items:
394bdc4434SAnson Huang          - enum:
404bdc4434SAnson Huang              - fsl,imx25-i2c
414bdc4434SAnson Huang              - fsl,imx27-i2c
424bdc4434SAnson Huang              - fsl,imx31-i2c
434bdc4434SAnson Huang              - fsl,imx50-i2c
444bdc4434SAnson Huang              - fsl,imx51-i2c
454bdc4434SAnson Huang              - fsl,imx53-i2c
464bdc4434SAnson Huang              - fsl,imx6q-i2c
474bdc4434SAnson Huang              - fsl,imx6sl-i2c
484bdc4434SAnson Huang              - fsl,imx6sx-i2c
494bdc4434SAnson Huang              - fsl,imx6sll-i2c
504bdc4434SAnson Huang              - fsl,imx6ul-i2c
514bdc4434SAnson Huang              - fsl,imx7s-i2c
524bdc4434SAnson Huang              - fsl,imx8mq-i2c
534bdc4434SAnson Huang              - fsl,imx8mm-i2c
544bdc4434SAnson Huang              - fsl,imx8mn-i2c
554bdc4434SAnson Huang              - fsl,imx8mp-i2c
564bdc4434SAnson Huang          - const: fsl,imx21-i2c
574bdc4434SAnson Huang
584bdc4434SAnson Huang  reg:
594bdc4434SAnson Huang    maxItems: 1
604bdc4434SAnson Huang
614bdc4434SAnson Huang  interrupts:
624bdc4434SAnson Huang    maxItems: 1
634bdc4434SAnson Huang
644bdc4434SAnson Huang  clocks:
654bdc4434SAnson Huang    maxItems: 1
664bdc4434SAnson Huang
674bdc4434SAnson Huang  clock-names:
684bdc4434SAnson Huang    const: ipg
694bdc4434SAnson Huang
704bdc4434SAnson Huang  clock-frequency:
7151906dd1SDavid Heidelberg    minimum: 1
7251906dd1SDavid Heidelberg    default: 100000
7351906dd1SDavid Heidelberg    maximum: 400000
744bdc4434SAnson Huang
754bdc4434SAnson Huang  dmas:
764bdc4434SAnson Huang    items:
774bdc4434SAnson Huang      - description: DMA controller phandle and request line for RX
784bdc4434SAnson Huang      - description: DMA controller phandle and request line for TX
794bdc4434SAnson Huang
804bdc4434SAnson Huang  dma-names:
814bdc4434SAnson Huang    items:
824bdc4434SAnson Huang      - const: rx
834bdc4434SAnson Huang      - const: tx
844bdc4434SAnson Huang
854bdc4434SAnson Huang  sda-gpios:
864bdc4434SAnson Huang    maxItems: 1
874bdc4434SAnson Huang
884bdc4434SAnson Huang  scl-gpios:
894bdc4434SAnson Huang    maxItems: 1
904bdc4434SAnson Huang
914bdc4434SAnson Huangrequired:
924bdc4434SAnson Huang  - compatible
934bdc4434SAnson Huang  - reg
944bdc4434SAnson Huang  - interrupts
954bdc4434SAnson Huang  - clocks
964bdc4434SAnson Huang
9737859693SKrzysztof KozlowskiunevaluatedProperties: false
984bdc4434SAnson Huang
994bdc4434SAnson Huangexamples:
1004bdc4434SAnson Huang  - |
1014bdc4434SAnson Huang    #include <dt-bindings/clock/imx5-clock.h>
1028682016cSRob Herring    #include <dt-bindings/interrupt-controller/irq.h>
1034bdc4434SAnson Huang
1044bdc4434SAnson Huang    i2c@83fc4000 {
1054bdc4434SAnson Huang        compatible = "fsl,imx51-i2c", "fsl,imx21-i2c";
1064bdc4434SAnson Huang        reg = <0x83fc4000 0x4000>;
1074bdc4434SAnson Huang        interrupts = <63>;
1084bdc4434SAnson Huang        clocks = <&clks IMX5_CLK_I2C2_GATE>;
1094bdc4434SAnson Huang    };
1104bdc4434SAnson Huang
1118682016cSRob Herring  - |
1128682016cSRob Herring    #include <dt-bindings/clock/vf610-clock.h>
1138682016cSRob Herring
1144bdc4434SAnson Huang    i2c@40066000 {
1154bdc4434SAnson Huang        compatible = "fsl,vf610-i2c";
1164bdc4434SAnson Huang        reg = <0x40066000 0x1000>;
1174bdc4434SAnson Huang        interrupts = <71 IRQ_TYPE_LEVEL_HIGH>;
1184bdc4434SAnson Huang        clocks = <&clks VF610_CLK_I2C0>;
1194bdc4434SAnson Huang        clock-names = "ipg";
1204bdc4434SAnson Huang        dmas = <&edma0 0 50>,
1214bdc4434SAnson Huang               <&edma0 0 51>;
1224bdc4434SAnson Huang        dma-names = "rx", "tx";
1234bdc4434SAnson Huang    };
124