Hardware requirements
Micro USB cable
MIMX8ULP-EVK/EVK9 Board
J-Link Debug Probe
5V power supply
Personal Computer
Board settings
No special is needed.
Prepare the Demo
Connect 5V power supply and J-Link Debug Probe to the board, switch SW10 to power on the board
Connect a USB cable between the host PC and the J17 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)
Flash flash.bin to emmc/flexspi0 nor flash using u-boot/UUU/JLink.(Don’t use IAR/GDB to download m33 binary to SSRAM to test it)
Repower on board to boot system
Login to linux
Change log level of linux with below command:
echo ‘7 4 1 7’ > /proc/sys/kernel/printk
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)