Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!
Did you like my answer?
Hello,
Thank you for reaching out with your question about enabling the SPI interface on your Colibri iMX6ULL module. Let’s go through some steps to ensure everything is set up correctly:
-
Device Tree Modifications: Your changes to the
imx6ull-colibri-eval-v3.dtsi
file appear correct for enabling SPI. Double-check for any conflicting settings in the device tree that might inadvertently disable the SPI interface. -
Potential Conflicts: If your carrier board includes an MCP2515 SPI CAN controller, it might be using the same SPI bus. Ensure the MCP2515 node is disabled by setting its status to “disabled” in the device tree.
-
Rebuild and Deploy: After modifying the device tree, rebuild the device tree blob (DTB) and deploy it to your module using:
make dtbs
bitbake -f -c compile virtual/kernel
bitbake tdx-reference-minimal-image
-
Device Tree Overlays: If using overlays, ensure the correct overlay is applied. For eMMC-based SoMs, add
colibri-imx6-eval_spidev_overlay.dtbo
to thefdt_overlays
variable in/boot/overlays.txt
. -
Verify Device Nodes: After deploying the image, check the
/dev/
directory for the SPI device (e.g.,/dev/spidev0.0
). If absent, review kernel logs withdmesg | grep spi
for any errors or messages related to SPI initialization. -
Kernel Configuration: Confirm that the kernel is configured to support spidev. Check the kernel configuration file (e.g.,
.config
) to ensureCONFIG_SPI_SPIDEV
is enabled.
By following these steps, you should be able to resolve the issue with the SPI interface. If the problem persists, carefully review all device tree and kernel configurations for any overlooked settings.
Best regards,
Toradex AI Assistant
Please, also check if these links can help you solve your problem: