i2c.txt (1429B)
1* I2C 2 3The I2C controller is expressed as a bus under the CPM node. 4 5Properties: 6- compatible : "fsl,cpm1-i2c", "fsl,cpm2-i2c" 7- reg : On CPM2 devices, the second resource doesn't specify the I2C 8 Parameter RAM itself, but the I2C_BASE field of the CPM2 Parameter RAM 9 (typically 0x8afc 0x2). 10- #address-cells : Should be one. The cell is the i2c device address with 11 the r/w bit set to zero. 12- #size-cells : Should be zero. 13- clock-frequency : Can be used to set the i2c clock frequency. If 14 unspecified, a default frequency of 60kHz is being used. 15The following two properties are deprecated. They are only used by legacy 16i2c drivers to find the bus to probe: 17- linux,i2c-index : Can be used to hard code an i2c bus number. By default, 18 the bus number is dynamically assigned by the i2c core. 19- linux,i2c-class : Can be used to override the i2c class. The class is used 20 by legacy i2c device drivers to find a bus in a specific context like 21 system management, video or sound. By default, I2C_CLASS_HWMON (1) is 22 being used. The definition of the classes can be found in 23 include/i2c/i2c.h 24 25Example, based on mpc823: 26 27 i2c@860 { 28 compatible = "fsl,mpc823-i2c", 29 "fsl,cpm1-i2c"; 30 reg = <0x860 0x20 0x3c80 0x30>; 31 interrupts = <16>; 32 interrupt-parent = <&CPM_PIC>; 33 fsl,cpm-command = <0x10>; 34 #address-cells = <1>; 35 #size-cells = <0>; 36 37 rtc@68 { 38 compatible = "dallas,ds1307"; 39 reg = <0x68>; 40 }; 41 };