RPMsg Not Creating /dev/ttyRPMSG0 on Apalis iMX8 (BSP 6.8.0)

Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


Hello,

To enable RPMsg communication between the Cortex-M4 and Linux on your Apalis iMX8 module, you will indeed need to ensure that the device tree is configured to support RPMsg. This typically involves using a device tree overlay to allocate the necessary resources for RPMsg communication.

Here’s a step-by-step guide to help you:

  1. Check for Existing Overlays: First, verify if there is an existing RPMsg overlay for your module. This overlay might be named something like rpmsg-imx8.dts.

  2. Apply the Overlay: Use the fw_setenv command to set the fdt_overlays environment variable in U-Boot to include the RPMsg overlay. For example:

    fw_setenv fdt_overlays <existing_overlays>,rpmsg-imx8.dtbo
    

    Replace <existing_overlays> with any other overlays you are currently using.

  3. Reboot the Module: After applying the overlay, reboot your module to apply the changes.

  4. Load the RPMsg Kernel Module: Once Linux has booted, ensure that the RPMsg kernel module is loaded by running:

    modprobe imx_rpmsg_tty
    
  5. Check dmesg Logs: Use dmesg | grep rpmsg to verify that the RPMsg driver is registered and functioning correctly.

If the /dev/ttyRPMSG0 device still does not appear, double-check the device tree overlay for any errors and ensure that the RPMsg example application on the Cortex-M4 is running correctly. Also, verify that the memory regions used by RPMsg are not being used by other parts of the system.

I hope this helps you get your RPMsg communication up and running!

Best regards,
Toradex AI Assistant

Please, also check if these links can help you solve your problem:

RPMSG on a Toradex Apalis iMX8.