Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!
Did you like my answer?
To disable the I2C interface on your Toradex Colibri iMX8DX platform using a Device Tree Source (DTS) overlay without creating a new image or recipe, you can follow these steps:
-
Create a Device Tree Overlay (DTBO): You need to create a DTS file that modifies the I2C node properties by setting the
status
property todisabled
. Here is an example of what your overlay file might look like:/dts-v1/; /plugin/; / { fragment@0 { target-path = "/i2c@xxxx"; __overlay__ { status = "disabled"; }; }; };
Replace
xxxx
with the appropriate address of the I2C controller for your specific hardware setup. -
Compile the Overlay: Use the device tree compiler (DTC) to compile your DTS file into a DTBO file. You can do this with a command like:
dtc -I dts -O dtb -o my_overlay.dtbo my_overlay.dts
-
Load the Overlay at Boot: Ensure that your compiled DTBO file is placed in a location where U-Boot can access it. You will need to modify the U-Boot environment variables to load this overlay during the boot process. This typically involves adding a line to your U-Boot configuration that points to your DTBO file.
-
Verify the Changes: After rebooting, verify that the I2C interface is disabled by checking the system logs or using tools like
i2cdetect
to ensure that no I2C devices are detected.
This approach allows you to disable the I2C interface dynamically at runtime without recompiling the entire kernel or creating a new image, which should meet your requirements. Make sure your kernel version supports device tree overlays, and refer to Toradex documentation for any specific configurations related to the I2C interface on your platform.
Please, also check if these links can help you solve your problem: