GNU Linux-libre 4.19.264-gnu1
[releases.git] / Documentation / devicetree / bindings / i2c / i2c-designware.txt
1 * Synopsys DesignWare I2C
2
3 Required properties :
4
5  - compatible : should be "snps,designware-i2c"
6  - reg : Offset and length of the register set for the device
7  - interrupts : <IRQ> where IRQ is the interrupt number.
8
9 Recommended properties :
10
11  - clock-frequency : desired I2C bus clock frequency in Hz.
12
13 Optional properties :
14  - i2c-sda-hold-time-ns : should contain the SDA hold time in nanoseconds.
15    This option is only supported in hardware blocks version 1.11a or newer.
16
17  - i2c-scl-falling-time-ns : should contain the SCL falling time in nanoseconds.
18    This value which is by default 300ns is used to compute the tLOW period.
19
20  - i2c-sda-falling-time-ns : should contain the SDA falling time in nanoseconds.
21    This value which is by default 300ns is used to compute the tHIGH period.
22
23 Examples :
24
25         i2c@f0000 {
26                 #address-cells = <1>;
27                 #size-cells = <0>;
28                 compatible = "snps,designware-i2c";
29                 reg = <0xf0000 0x1000>;
30                 interrupts = <11>;
31                 clock-frequency = <400000>;
32         };
33
34         i2c@1120000 {
35                 #address-cells = <1>;
36                 #size-cells = <0>;
37                 compatible = "snps,designware-i2c";
38                 reg = <0x1120000 0x1000>;
39                 interrupt-parent = <&ictl>;
40                 interrupts = <12 1>;
41                 clock-frequency = <400000>;
42                 i2c-sda-hold-time-ns = <300>;
43                 i2c-sda-falling-time-ns = <300>;
44                 i2c-scl-falling-time-ns = <300>;
45         };
46
47         i2c@1120000 {
48                 #address-cells = <1>;
49                 #size-cells = <0>;
50                 reg = <0x2000 0x100>;
51                 clock-frequency = <400000>;
52                 clocks = <&i2cclk>;
53                 interrupts = <0>;
54
55                 eeprom@64 {
56                         compatible = "linux,slave-24c02";
57                         reg = <0x40000064>;
58                 };
59         };