blob: 1eacd6b20ed5eb8434d38f52c356834149bc3344 [file] [log] [blame]
Kumar Galad0fc2ea2008-07-07 11:28:33 -05001* I2C
2
3Required properties :
4
Kumar Galad0fc2ea2008-07-07 11:28:33 -05005 - reg : Offset and length of the register set for the device
Wolfgang Grandegger192505b2010-02-17 11:19:20 +01006 - compatible : should be "fsl,CHIP-i2c" where CHIP is the name of a
7 compatible processor, e.g. mpc8313, mpc8543, mpc8544, mpc5121,
8 mpc5200 or mpc5200b. For the mpc5121, an additional node
9 "fsl,mpc5121-i2c-ctrl" is required as shown in the example below.
Kumar Galad0fc2ea2008-07-07 11:28:33 -050010
11Recommended properties :
12
Kumar Galad0fc2ea2008-07-07 11:28:33 -050013 - interrupts : <a b> where a is the interrupt number and b is a
14 field that represents an encoding of the sense and level
15 information for the interrupt. This should be encoded based on
16 the information in section 2) depending on the type of interrupt
17 controller you have.
18 - interrupt-parent : the phandle for the interrupt controller that
19 services interrupts for this device.
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020020 - fsl,preserve-clocking : boolean; if defined, the clock settings
21 from the bootloader are preserved (not touched).
22 - clock-frequency : desired I2C bus clock frequency in Hz.
Albrecht Dreß0c2daaaf2010-02-17 08:59:14 +000023 - fsl,timeout : I2C bus timeout in microseconds.
Kumar Galad0fc2ea2008-07-07 11:28:33 -050024
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020025Examples :
26
Wolfgang Grandegger192505b2010-02-17 11:19:20 +010027 /* MPC5121 based board */
28 i2c@1740 {
29 #address-cells = <1>;
30 #size-cells = <0>;
31 compatible = "fsl,mpc5121-i2c", "fsl-i2c";
32 reg = <0x1740 0x20>;
33 interrupts = <11 0x8>;
34 interrupt-parent = <&ipic>;
35 clock-frequency = <100000>;
36 };
37
38 i2ccontrol@1760 {
39 compatible = "fsl,mpc5121-i2c-ctrl";
40 reg = <0x1760 0x8>;
41 };
42
43 /* MPC5200B based board */
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020044 i2c@3d00 {
45 #address-cells = <1>;
46 #size-cells = <0>;
47 compatible = "fsl,mpc5200b-i2c","fsl,mpc5200-i2c","fsl-i2c";
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020048 reg = <0x3d00 0x40>;
49 interrupts = <2 15 0>;
50 interrupt-parent = <&mpc5200_pic>;
51 fsl,preserve-clocking;
Kumar Galad0fc2ea2008-07-07 11:28:33 -050052 };
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020053
Wolfgang Grandegger192505b2010-02-17 11:19:20 +010054 /* MPC8544 base board */
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020055 i2c@3100 {
56 #address-cells = <1>;
57 #size-cells = <0>;
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020058 compatible = "fsl,mpc8544-i2c", "fsl-i2c";
59 reg = <0x3100 0x100>;
60 interrupts = <43 2>;
61 interrupt-parent = <&mpic>;
62 clock-frequency = <400000>;
Albrecht Dreß0c2daaaf2010-02-17 08:59:14 +000063 fsl,timeout = <10000>;
Wolfgang Grandegger8d82ffd2009-04-07 10:20:56 +020064 };