Removing I2C2 from kernel

Hi there.
I would like to use both CAN0 and CAN1 on my beaglebone black.
I followed tutorial on this page;

CAN0 works for a start but the board restarts after a while.
Works properly when CAN0 is not used, so I am guessing I2C2 is the problem.

I think that board-omap3beagle.c kernel file needs to modified.
But I am not skilled enough to do edit it.

Can anyone help me to diable I2C2 entirely?

Kind Regards

You are using devicetree not old Linux kernel, so you need to change the dts file for disabling the I2C2.
The tutorial link you mentioned is a good one, read the tutorial properly there it is mentioned that you have
to comment out

pinctrl-0 = <&i2c2_pins>;

the above line in am335x-bone-common.dtsi file. For completely disable the i2c2 you can change the below line
&i2c2 {
status = “okay”;


&i2c2 {
status = “disabled”;

along with completely deleting the pinmux for i2c2 pin


omap3beagle is for BeagleBoard and BeagleBoard-XM, don’t touch this file

as for I2C you need to change pin mux settings for particular pins. I think it’s even possible to change the pin mux settings right in the working OS, using the /sys directory. Unfortunately I don’t know how

yes it is possible to change pin mux setting, in the running OS. It can be done using “debugfs”.

Follow the below link for user guide -