]>
Commit | Line | Data |
---|---|---|
53633a89 TR |
1 | # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
2 | %YAML 1.2 | |
3 | --- | |
4 | $id: http://devicetree.org/schemas/i2c/i2c-imx.yaml# | |
5 | $schema: http://devicetree.org/meta-schemas/core.yaml# | |
6 | ||
7 | title: Freescale Inter IC (I2C) and High Speed Inter IC (HS-I2C) for i.MX | |
8 | ||
9 | maintainers: | |
10 | - Oleksij Rempel <o.rempel@pengutronix.de> | |
11 | ||
12 | allOf: | |
13 | - $ref: /schemas/i2c/i2c-controller.yaml# | |
14 | ||
15 | properties: | |
16 | compatible: | |
17 | oneOf: | |
18 | - const: fsl,imx1-i2c | |
19 | - const: fsl,imx21-i2c | |
20 | - const: fsl,vf610-i2c | |
21 | - items: | |
22 | - enum: | |
23 | - fsl,ls1012a-i2c | |
24 | - fsl,ls1021a-i2c | |
25 | - fsl,ls1028a-i2c | |
26 | - fsl,ls1043a-i2c | |
27 | - fsl,ls1046a-i2c | |
28 | - fsl,ls1088a-i2c | |
29 | - fsl,ls208xa-i2c | |
30 | - fsl,lx2160a-i2c | |
31 | - const: fsl,vf610-i2c | |
32 | - items: | |
33 | - const: fsl,imx35-i2c | |
34 | - const: fsl,imx1-i2c | |
35 | - items: | |
36 | - const: fsl,imx7d-i2c | |
37 | - const: fsl,imx21-i2c | |
38 | - items: | |
39 | - enum: | |
40 | - fsl,imx25-i2c | |
41 | - fsl,imx27-i2c | |
42 | - fsl,imx31-i2c | |
43 | - fsl,imx50-i2c | |
44 | - fsl,imx51-i2c | |
45 | - fsl,imx53-i2c | |
46 | - fsl,imx6q-i2c | |
47 | - fsl,imx6sl-i2c | |
48 | - fsl,imx6sx-i2c | |
49 | - fsl,imx6sll-i2c | |
50 | - fsl,imx6ul-i2c | |
51 | - fsl,imx7s-i2c | |
52 | - fsl,imx8mq-i2c | |
53 | - fsl,imx8mm-i2c | |
54 | - fsl,imx8mn-i2c | |
55 | - fsl,imx8mp-i2c | |
56 | - const: fsl,imx21-i2c | |
57 | ||
58 | reg: | |
59 | maxItems: 1 | |
60 | ||
61 | interrupts: | |
62 | maxItems: 1 | |
63 | ||
64 | clocks: | |
65 | maxItems: 1 | |
66 | ||
67 | clock-names: | |
68 | const: ipg | |
69 | ||
70 | clock-frequency: | |
71 | minimum: 1 | |
72 | default: 100000 | |
73 | maximum: 400000 | |
74 | ||
75 | dmas: | |
76 | items: | |
77 | - description: DMA controller phandle and request line for RX | |
78 | - description: DMA controller phandle and request line for TX | |
79 | ||
80 | dma-names: | |
81 | items: | |
82 | - const: rx | |
83 | - const: tx | |
84 | ||
85 | sda-gpios: | |
86 | maxItems: 1 | |
87 | ||
88 | scl-gpios: | |
89 | maxItems: 1 | |
90 | ||
91 | required: | |
92 | - compatible | |
93 | - reg | |
94 | - interrupts | |
95 | - clocks | |
96 | ||
97 | unevaluatedProperties: false | |
98 | ||
99 | examples: | |
100 | - | | |
101 | #include <dt-bindings/clock/imx5-clock.h> | |
102 | #include <dt-bindings/interrupt-controller/irq.h> | |
103 | ||
104 | i2c@83fc4000 { | |
105 | compatible = "fsl,imx51-i2c", "fsl,imx21-i2c"; | |
106 | reg = <0x83fc4000 0x4000>; | |
107 | interrupts = <63>; | |
108 | clocks = <&clks IMX5_CLK_I2C2_GATE>; | |
109 | }; | |
110 | ||
111 | - | | |
112 | #include <dt-bindings/clock/vf610-clock.h> | |
113 | ||
114 | i2c@40066000 { | |
115 | compatible = "fsl,vf610-i2c"; | |
116 | reg = <0x40066000 0x1000>; | |
117 | interrupts = <71 IRQ_TYPE_LEVEL_HIGH>; | |
118 | clocks = <&clks VF610_CLK_I2C0>; | |
119 | clock-names = "ipg"; | |
120 | dmas = <&edma0 0 50>, | |
121 | <&edma0 0 51>; | |
122 | dma-names = "rx", "tx"; | |
123 | }; |