17132b9fdSSimon GlassU-Boot I2C
27132b9fdSSimon Glass----------
37132b9fdSSimon Glass
47132b9fdSSimon GlassU-Boot's I2C model has the concept of an offset within a chip (I2C target
57132b9fdSSimon Glassdevice). The offset can be up to 4 bytes long, but is normally 1 byte,
67132b9fdSSimon Glassmeaning that offsets from 0 to 255 are supported by the chip. This often
77132b9fdSSimon Glasscorresponds to register numbers.
87132b9fdSSimon Glass
97132b9fdSSimon GlassApart from the controller-specific I2C bindings, U-Boot supports a special
107132b9fdSSimon Glassproperty which allows the chip offset length to be selected.
117132b9fdSSimon Glass
127132b9fdSSimon GlassOptional properties:
137132b9fdSSimon Glass- u-boot,i2c-offset-len - length of chip offset in bytes. If omitted the
147132b9fdSSimon Glass    default value of 1 is used.
15*df8dcac8SAlexander Kochetkov- gpios = <sda ...>, <scl ...>;
16*df8dcac8SAlexander Kochetkov  pinctrl-names = "default", "gpio";
17*df8dcac8SAlexander Kochetkov  pinctrl-0 = <&i2c_xfer>;
18*df8dcac8SAlexander Kochetkov  pinctrl-1 = <&i2c_gpio>;
19*df8dcac8SAlexander Kochetkov    Pin description for I2C bus software deblocking.
207132b9fdSSimon Glass
217132b9fdSSimon Glass
227132b9fdSSimon GlassExample
237132b9fdSSimon Glass-------
247132b9fdSSimon Glass
257132b9fdSSimon Glassi2c4: i2c@12ca0000 {
267132b9fdSSimon Glass	cros-ec@1e {
277132b9fdSSimon Glass		reg = <0x1e>;
287132b9fdSSimon Glass		compatible = "google,cros-ec";
297132b9fdSSimon Glass		i2c-max-frequency = <100000>;
307132b9fdSSimon Glass		u-boot,i2c-offset-len = <0>;
317132b9fdSSimon Glass		ec-interrupt = <&gpx1 6 GPIO_ACTIVE_LOW>;
327132b9fdSSimon Glass	};
337132b9fdSSimon Glass};
34*df8dcac8SAlexander Kochetkov
35*df8dcac8SAlexander Kochetkov&i2c1 {
36*df8dcac8SAlexander Kochetkov	pinctrl-names = "default", "gpio";
37*df8dcac8SAlexander Kochetkov	pinctrl-0 = <&i2c1_xfer>;
38*df8dcac8SAlexander Kochetkov	pinctrl-1 = <&i2c1_gpio>;
39*df8dcac8SAlexander Kochetkov	gpios = <&gpio1 26 GPIO_ACTIVE_LOW>, /* SDA */
40*df8dcac8SAlexander Kochetkov		<&gpio1 27 GPIO_ACTIVE_LOW>; /* SCL */
41*df8dcac8SAlexander Kochetkov};
42