The standard clock frequency for the i2c-3 device is 100 kHz (confirmed with an oscilloscope). I tried to set it up with 400 kHz using the additional boot argument i2c_bus=3,400, but then the BB would not boot up again.
For the i2c-1-bus it works. What seems odd to me, even if I manually set the i2c-3 to its default 100 kHz clock with i2c_bus=3,100, the reboot fails. I use the latest image ubuntu 12.10 image from RoberCNelson.
If have pasted a kernel log here: http://pastebin.com/PavyY03c
There it complains several times that the i2c-3 device already exists and prints out some backtraces, finally it is unable to mount the filesystem (how is that related?) and stops:
[ 1.643585] omap_i2c.3: alias fck already exists
[ 1.648559] ------------[ cut here ]------------
[ 1.653472] WARNING: at fs/sysfs/dir.c:481 sysfs_add_one+0x80/0xa0()
[ 1.660156] sysfs: cannot create duplicate filename ‘/devices/platform/omap/omap_i2c.3’
[ 1.668548] Modules linked in:
[ 1.671783] Backtrace:
[ 2.081909] kobject_add_internal failed for omap_i2c.3 with -EEXIST, don’t try to register things with the same name in the same directory.
[ 2.095062] Backtrace:
[ 2.432159] WARNING: at arch/arm/plat-omap/i2c.c:188 omap_i2c_add_bus+0xfc/0x130()
[ 2.440124] Could not build omap_device for omap_i2c
[ 2.445343] Modules linked in:
[ 2.448547] Backtrace:
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/mmcblk0p2 does not exist. Dropping to a shell!
I came to that problem after reading this thread (https://groups.google.com/forum/#!msg/beagleboard/Q1pDr1lT7Gk/KBCp9IFE9F4J) where people were arguing about wrong i2c-clock frequencies, which I wanted to check, but there no one complained about boot problems after setting the i2c_bus argument.
Thank you for any suggestions