Hello All,
I am attempting to develop a RPMSG FreeRTOS application on your IMX8X SOM. During this process I have attempted to run NXP’s FreeRTOS demo applications on the board, specifically the “rpmsg_lite_str_echo_rtos” demo app.
I have made a modification to the demo application to use the SODIMM 144 and 146 pins on the Colibri as the M4 UART, git styel patch for that is below. This is the only modification done to the FreeRTOS demo.
rpmsg_lite_str_echo_rtos_colibri_m4_uart_pin_change.patch (2.4 KB)
Along with that modification to the M4 FreeRTOS, I have made a change to the Toradex Linux kernel (based on the HEAD of the branch “toradex_5.4-2.3.x-imx”). The change I made was to remove the pins that were mentioned in the FreeRTOS pinmux header file. Those changes are in the patchfile attached below.
kernel_disable_m4_related_pins.patch (2.1 KB)
For running the demo app I pull the m4 binary into Uboot via TFTP, loads fine. And I then see the following on the M4 UART.
RPMSG String Echo FreeRTOS RTOS API Demo...
NOTE: The command I run in Uboot is setenv serverip 172.16.3.165; dhcp; tftp ${loadaddr} rpmsg_lite_str_echo_rtos.bin; dcache flush;bootaux ${loadaddr}
Then I run boot
in Uboot and get up to Linux Userspace. In userspace I then modprobe the imx_rpmsg_tty module to test out the demo. This modprobe process hangs and never returns, it prints out the following during this “hang”.
root@localhost:~# modprobe imx_rpmsg_tty
[ 18.703453] imx_rpmsg_tty virtio1.rpmsg-openamp-demo-channel.-1.30: new channel: 0x400 -> 0x1e!
[ 18.712476] Install rpmsg tty driver!
After that hang I see nothing new printed to the M4 UART.
I’ll also share my dmesg output, in case that is useful
dmesg_out.txt (26.3 KB)
Some background info on what hardware/BSP I am using.
The Carrier being used is a Colibri Evaluation board (v3.28)
The SOM is a Colibri IMX8X (The 1GB IMX8DX variety) marked v1.0D
The BSP is your v5 BSP (non-Torizon), pulled from the default.xml repo manifest here: tdxref - toradex-manifest.git - Repo manifest for Toradex Embedded Linux TorizonCore and BSP layer setup for Yocto Project/Openembedded
I am building for the “colibri-imx8x” MACHINE. And using the imx8dx-colibri-eval-v3.dtb
Any help getting the RPMSG demo running would be appreciated. Thanks for the help on this.
–Bill