external i2c in ubuntu

Please pardon the newbie question, but I'm experiencing some confusion
about the external i2c bus interface when running ubuntu on the Beagle

I can only see one bus, which is /dev/i2c-1. I have determined that
this is not an external bus. However, according to /sys/kernel/debug/
omap_mux files, there are two sets of pins configured for i2c. One
set is the signals i2c0_scl and i2c0_sda, which I presume are an
internal bus (/dev/i2c-1, apparently). The other are the signals
spi0_cs0 and spi0_d1, which are configured in mode 2 and should be
providing an i2c bus on header pins 17 and 18. I also checked signals
uart1_rtsn and uart1_ctsn, which should have had i2c signals as
options, but those mux options were missing.

So now I have two questions:

1. How do I get the i2c bus on pins 17 and 18 recognized, given that
the default configuration for those pins already appears to be i2c?

2. Why do some of the mux options not show up?

Thanks for any help. If anybody has successfully used external i2c
devices with ubuntu on the bone, please let me know how you did it!


I'm also at the same point.
I have checked the pin-mux settings on my running kernel 3.1.0-psp3
from Ubuntu and it seems that the pins for the I2C-2 and I2C-3
interfaces are configured properly. I mean mode 2 and mode 3 are
selected, input enabled. What is strange that week pull-down is also

How can I make the kernel to activate these additional I2C interfaces.
i2cdetect -l reports only I2C-1 is active, which is the internal

I was able to make three I2C ports available on my BeagleBoard C2 by
recompiling the kernel. There I was able to find the relevant files to
modify in order to set the correct pin-mux values and make the second
I2C interface available on the expansion port to be initialized by the
kernel at boot.

Unfortunately I can not find any relevant file for the AM33xx
processor or BeagleBone, neither in the kernel source nor in u-boot

Could someone give me a hint what to look at? If there is a solution
the bring up these interfaces from user space after boot up also can
be a good solution for me.

Thanks in advance.
Best regards,