Hardware requirements
Micro USB cable
IMX95LPD5-EVK Board
J-Link Debug Probe
12V~20V power supply
Personal Computer
Board settings
No special is needed.
Prepare the Demo
Connect a USB cable between the host PC and the J31 USB port on the target board. Open two serial terminals for A Core and M Core with the following settings:
115200 baud rate
8 data bits
No parity
One stop bit
No flow control (e.g. /dev/ttyUSB0~3, /dev/ttyUSB2 for A Core, /dev/ttyUSB3 for M Core)
Connect 12V~20V power supply and J-Link Debug Probe to the board, switch SW4 to power on the board
Make flash.bin and burn it to imx95(refer to Getting_Started_with_MCUXpresso_SDK_for_IMX95LPD5EVK_review.pdf)
Boot to linux. Run “echo ‘7 4 1 7’ > /proc/sys/kernel/printk” to change the message level.
After login, make sure imx_rpmsg_pingpong kernel module is inserted (lsmod) or insert it (modprobe imx_rpmsg_pingpong).
Running the demo
After the boot process succeeds, the ARM Cortex-M33 terminal displays the following information:
RPMSG Ping-Pong FreeRTOS RTOS API Demo...
RPMSG Share Base Addr is 0xb8000000
During boot the Kernel,the ARM Cortex-M33 terminal displays the following information:
Link is up!
Nameservice announce sent.
After the Linux RPMsg pingpong module was installed, the ARM Cortex-M33 terminal displays the following information:
Waiting for ping...
Sending pong...
Waiting for ping...
Sending pong...
Waiting for ping...
Sending pong...
......
Waiting for ping...
Sending pong...
Ping pong done, deinitializing...
Looping forever...
The Cortex-A terminal displays the following information:
get 1 (src: 0x1e)
get 3 (src: 0x1e)
......
get 99 (src: 0x1e)
get 101 (src: 0x1e)