- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi,
I came across a bug in I2C on Edison. I found this thread, which is similar, but it does not contain much information.
It perturbates my program, I get [Error: I2c write failed].
dmesg says:
[14198.319240] WARNING: at drivers/i2c/busses/i2c-designware-core.c:1236 i2c_dw_xfer+0x327/0x5c0()
[14198.319257] Device: i2c-designware-pci
controller timed out
[14198.319273] Modules linked in: can_j1939 can mcp251x can_dev usb_f_acm u_serial g_multi libcomposite bcm4334x(O) bcm_bt_lpm
[14198.319359] CPU: 1 PID: 9731 Comm: node Tainted: G O 3.10.17-poky-edison+ # 37
[14198.319374] Hardware name: Intel Corporation Merrifield/BODEGA BAY, BIOS 466 2014.06.23:19.20.05
[14198.319388] c1a6c194 f5507e3c f5507e04 c1853ade f5507e2c c124096e c1a6c170 f5507e58
[14198.319445] 000004d4 c1632db7 c1632db7 f677b800 f5d6d7e0 f677b824 f5507e44 c12409c3
[14198.319499] 00000009 f5507e3c c1a6c170 f5507e58 f5507e7c c1632db7 c1a6c194 000004d4
[14198.319554] Call Trace:
[14198.319587] [] dump_stack+0x16/0x18
[14198.319620] [] warn_slowpath_common+0x5e/0x80
[14198.319647] [] ? i2c_dw_xfer+0x327/0x5c0
[14198.319672] [] ? i2c_dw_xfer+0x327/0x5c0
[14198.319700] [] warn_slowpath_fmt+0x33/0x40
[14198.319727] [] i2c_dw_xfer+0x327/0x5c0
[14198.319754] [] ? sub_preempt_count+0x95/0xf0
[14198.319780] [] __i2c_transfer+0x55/0x70
[14198.319806] [] i2c_transfer+0x4d/0xb0
[14198.319834] [] ? memdup_user+0x2d/0x70
[14198.319860] [] i2cdev_ioctl_rdrw.isra.7+0x10f/0x200
[14198.319888] [] i2cdev_ioctl+0x112/0x200
[14198.319914] [] ? fget_light+0x97/0xd0
[14198.319940] [] ? i2cdev_ioctl_rdrw.isra.7+0x200/0x200
[14198.319966] [] do_vfs_ioctl+0x306/0x550
[14198.319995] [] ? __sys_recvmsg+0x57/0x70
[14198.320026] [] ? ktime_get_ts+0x40/0x140
[14198.320052] [] ? fget_light+0x97/0xd0
[14198.320077] [] SyS_ioctl+0x60/0x90
[14198.320106] [] syscall_call+0x7/0xb
[14198.320136] [] ? profile_cpu_callback+0x87/0x1b2
[14198.320154] ---[ end trace 99ad7bc014ee8320 ]---
[14198.320175] i2c-designware-pci 0000:00:08.0: ===== REGISTER DUMP (i2c) =====
[14198.320270] i2c-designware-pci 0000:00:08.0: DW_IC_CON: 0x65
[14198.320342] i2c-designware-pci 0000:00:08.0: DW_IC_TAR: 0x29
[14198.320411] i2c-designware-pci 0000:00:08.0: DW_IC_SS_SCL_HCNT: 0x2f8
[14198.320480] i2c-designware-pci 0000:00:08.0: DW_IC_SS_SCL_LCNT: 0x37b
[14198.320549] i2c-designware-pci 0000:00:08.0: DW_IC_FS_SCL_HCNT: 0x87
[14198.320617] i2c-designware-pci 0000:00:08.0: DW_IC_FS_SCL_LCNT: 0x10a
<span c...
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi JulienP,
Could you please tell us which image are you using? As stated in the other thread (/message/309867# 309867 i2c_dw_handle_tx_abort after update Edison Firmware), it might be an issue with the image.
Have you made changes or edits to the stock image?
Are you also using the DFRobot Romeo board?
Regards,
Pablo
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi Pablo,
I am using a custom board with a couple of chips on the i2c bus. I am using the following slightly modified kernel from the official release 2.1
https://github.com/jpilet/edison-linux/tree/edison-3.10.17-anemobox-mcp2515 https://github.com/jpilet/edison-linux/tree/edison-3.10.17-anemobox-mcp2515
The kernel is a slightly modified version of the one from edison-src-ww25.5-15.tgz downloaded there https://software.intel.com/en-us/iot/hardware/edison/downloads IoT - Intel® Edison Board Download | Intel® Developer Zone
Yes, I customized the image.
I am not using DFRobot Romeo board.
I use the javascript api of libmraa to access the i2c bus.
Julien
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi JulienP,
Could you please tell me what do you get after running configure_edison --version? I would like to know if you're using version 159 or 159-devkit. Have you tried accessing I2C without using javascript?
Regards,
Pablo
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi JulienP,
I would like to know the changes you have done on the image. Also, have you tried with the standard image?
Regards,
Charlie

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page