I2C addresses changed in new kernel

Hi All,

Hi, I use beaglebone black with kernel 3.8.13-bone68 before and there the i2c address binding was as follow:

lrwxrwxrwx 1 root root 0 Oct 13 17:09 i2c-0 → …/…/devices/ocp.3/44e0b000.i2c/i2c-0/i2c-dev/i2c-0
lrwxrwxrwx 1 root root 0 Oct 13 17:09 i2c-1 → …/…/devices/ocp.3/4819c000.i2c/i2c-1/i2c-dev/i2c-1
lrwxrwxrwx 1 root root 0 Oct 13 17:09 i2c-2 → …/…/devices/ocp.3/4802a000.i2c/i2c-2/i2c-dev/i2c-2

When I now test the new kernel beaglebone 4.4.9-ti-r25 the address binding is :

lrwxrwxrwx 1 root root 0 Jan 1 2000 i2c-0 → …/…/devices/platform/ocp/44e0b000.i2c/i2c-0/i2c-dev/i2c-0
lrwxrwxrwx 1 root root 0 Oct 18 12:21 i2c-1 → …/…/devices/platform/ocp/4802a000.i2c/i2c-1/i2c-dev/i2c-1
lrwxrwxrwx 1 root root 0 Jan 1 2000 i2c-2 → …/…/devices/platform/ocp/4819c000.i2c/i2c-2/i2c-dev/i2c-2

It seems that i2c-1 and i2c-2 are inversed. Is this normal?

Can I change this binding or do I need to rewrite my software?

Kind regards,
DriesS

Hi All,

Hi, I use beaglebone black with kernel 3.8.13-bone68 before and there the
i2c address binding was as follow:

lrwxrwxrwx 1 root root 0 Oct 13 17:09 i2c-0 ->
../../devices/ocp.3/44e0b000.i2c/i2c-0/i2c-dev/i2c-0
lrwxrwxrwx 1 root root 0 Oct 13 17:09 i2c-1 ->
../../devices/ocp.3/4819c000.i2c/i2c-1/i2c-dev/i2c-1
lrwxrwxrwx 1 root root 0 Oct 13 17:09 i2c-2 ->
../../devices/ocp.3/4802a000.i2c/i2c-2/i2c-dev/i2c-2

When I now test the new kernel beaglebone 4.4.9-ti-r25 the address binding
is :

lrwxrwxrwx 1 root root 0 Jan 1 2000 i2c-0 ->
../../devices/platform/ocp/44e0b000.i2c/i2c-0/i2c-dev/i2c-0
lrwxrwxrwx 1 root root 0 Oct 18 12:21 i2c-1 ->
../../devices/platform/ocp/4802a000.i2c/i2c-1/i2c-dev/i2c-1
lrwxrwxrwx 1 root root 0 Jan 1 2000 i2c-2 ->
../../devices/platform/ocp/4819c000.i2c/i2c-2/i2c-dev/i2c-2

It seems that i2c-1 and i2c-2 are inversed. Is this normal?

Correct, they were reversed in 3.8.13..

Can I change this binding or do I need to rewrite my software?

it shouldn't take you that long to change a 1 -> 2...

Regards,