Trying to read a second I2C bus gives "controller timed out"

311 views
Skip to first unread message

Madhu K

unread,
Mar 5, 2017, 12:42:44 AM3/5/17
to BeagleBoard
Hi All,

I am trying to read a second I2C bus but it gives "controller timed out" message.

below is the log for same.

[root /]# i2cdetect -y -r 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          [ 1188.831062] omap_i2c 4802a000.i2c: controller timed out
-- [ 1189.831029] omap_i2c 4802a000.i2c: controller timed out
-- [ 1190.851032] omap_i2c 4802a000.i2c: controller timed out
...
...
70: [ 1299.991028] omap_i2c 4802a000.i2c: controller timed out
-- [ 1301.011026] omap_i2c 4802a000.i2c: controller timed out
-- [ 1302.031024] omap_i2c 4802a000.i2c: controller timed out
-- [ 1303.051030] omap_i2c 4802a000.i2c: controller timed out
-- [ 1304.071025] omap_i2c 4802a000.i2c: controller timed out
-- [ 1305.091028] omap_i2c 4802a000.i2c: controller timed out
-- [ 1306.111024] omap_i2c 4802a000.i2c: controller timed out
-- [ 1307.131027] omap_i2c 4802a000.i2c: controller timed out



Below are the changes I have done in .dts an .dtsi files.


changes made in am335x-bone-common.dtsi:
        i2c1_pins: pinmux_i2c1_pins {
                pinctrl-single,pins = <
                        AM33XX_IOPAD(0x958, PIN_INPUT_PULLUP | MUX_MODE2)       /* spi0_d1.i2c1_sda */
                        AM33XX_IOPAD(0x95c, PIN_INPUT_PULLUP | MUX_MODE2)       /* spi0_cs0.i2c1_scl */
                >;
        };

&i2c1 {
        pinctrl-names = "default";
        pinctrl-0 = <&i2c1_pins>;

        status = "okay";
        clock-frequency = <100000>;
};



changes made in am335x-boneblack.dts:

&i2c1 {
        nunchuk: nunchuck@52 {

                compatible = "nunchuk";
                reg = <0x52>;
        };
};

apart from these changes, should I change anything else in bootloader files? or anything else to be added to the device tree files?

please help me out to solve this issue.

Regards,
Madhu
Reply all
Reply to author
Forward
0 new messages