-
cl-som-imx8
-
ucm-imx8m-mini
-
iot-gate-imx8
-
mcm-imx8m-mini
The demo applications are loaded from MMC to TCM.
-
U-Boot environment:
setenv m4_loadaddr 0x7e0000 setenv m4_start 'load mmc 1 0x48000000 ${m4_file}; cp.b 0x48000000 ${m4_loadaddr} 0x20000; dcache flush; bootaux ${m4_loadaddr}' saveenv
-
UART1 configured as the M4 debug console.
-
cl-som-imx8
SB-iMX8M P20 header is in use. P20.P19 - UART1_TXD P20.P21 - UART1_RXD P20.P33 - GND
-
ucm-imx8m-mini
SB-UCM-iMX8 P16 connector is in use.
-
mcm-imx8m-mini
SB-MCM-iMX8-Mini P20 header is in use. P20.P9 - UART1_TXD P20.P11 - UART1_RXD P20.P31 - GND
-
-
UART2 configured as the M4 debug console.
-
iot-gate-imx8
-
The IED-BASE module should be installed on the SB-IOTGIMX8 base board.
-
IED-RS232 should be installed in socket A of the IE-BASE module.
IED-BASE P2 header is in use. P2.P1 - UART2_TXD P2.P3 - UART2_RXD P2.P2 - GND
-
-
-
hello_world.bin
-
U-Boot
setenv m4_file hello_world.bin; run m4_start
-
M4 console
hello world.
-
-
igpio_led_output.bin
-
U-Boot
setenv m4_file igpio_led_output.bin; run m4_start
-
M4 console
GPIO Driver example The LED is blinking. GPIO_DR& 0x30200000 ; PIN# 12
-
-
rpmsg_lite_str_echo_rtos_imxcm4.bin
-
U-Boot
setenv m4_file rpmsg_lite_str_echo_rtos_imxcm4.bin; run m4_start; boot
-
M4 console
RPMSG String Echo FreeRTOS RTOS API Demo... Nameservice sent, ready for incoming messages...
-
OS
dmesg -c > /dev/null modprobe imx_rpmsg_tty dmesg [ 41.088386] imx_rpmsg_tty virtio0.rpmsg-virtual-tty-channel-1.-1.30: new channel: 0x400 -> 0x1e! [ 41.099673] Install rpmsg tty driver! [ 41.108472] rpmsg_tty_cb68 65 6c 6c 6f 20 77 6f 72 6c 64 21 hello world!
-
M4 console
Get Message From Master Side : "hello world!" [len : 12]
-
-
rpmsg_lite_pingpong_rtos_linux_remote.bin
-
U-Boot
setenv m4_file rpmsg_lite_pingpong_rtos_linux_remote.bin; run m4_start; boot
-
M4 console
RPMSG Ping-Pong FreeRTOS RTOS API Demo... RPMSG Share Base Addr is 0xb8000000 Link is up! Nameservice announce sent.
-
OS
-
maunal load
dmesg -c > /dev/null modprobe imx_rpmsg_pingpong dmesg [ 30.420794] imx_rpmsg_pingpong virtio0.rpmsg-openamp-demo-channel.-1.30: new channel: 0x400 -> 0x1e! [ 30.433498] get 1 (src: 0x1e) .... [ 30.665919] get 101 (src: 0x1e) [ 30.669131] imx_rpmsg_pingpong virtio0.rpmsg-openamp-demo-channel.-1.30: goodbye!
-
auto load
# This approach shows how to make the system load the driver automatically at the boot time. # It is up to the user to prepare the boot environment that loads an m4-ping-pong demo before starting kernel. cat << eof > /etc/modules-load.d/imx_rpmsg_pingpong.conf imx_rpmsg_pingpong eof reboot
-
-
M4 console
Waiting for ping... Sending pong... .... Ping pong done, deinitializing... Looping forever...
-
-
Requirements:
-
HW: Bus Blaster v3
-
SW: OpenOCD
-
Integration and configuration: Open Source JTAG Debugging
-
-
How to:
-
Target is a
ucm-imx8m-mini
SOC.-
U-Boot console:
setenv m4_file hello_world.bin; run m4_start
-
-
Host is a development Linux machine.
-
BackEnd
sudo openocd -f ~/openocd/tcl/interface/ftdi/dp_busblaster.cfg -f ~/openocd/tcl/board/nxp_mcimx8m-evk.cfg
-
Monitor
-
get connected to the
openocd:4444
, switch to theimx8mq.m4
and examine:telnet localhost 4444 > targets imx8mq.m4 > imx8mq.m4 arp_examine imx8mq.m4: hardware has 6 breakpoints, 4 watchpoints > targets TargetName Type Endian TapName State -- ------------------ ---------- ------ ------------------ ------------ 0 imx8mq.a53.0 aarch64 little imx8mq.cpu running 1 imx8mq.a53.1 aarch64 little imx8mq.cpu examine deferred 2 imx8mq.a53.2 aarch64 little imx8mq.cpu examine deferred 3 imx8mq.a53.3 aarch64 little imx8mq.cpu examine deferred 4* imx8mq.m4 cortex_m little imx8mq.cpu running 5 imx8mq.ahb mem_ap little imx8mq.cpu running
-
-
Front End
-
get connected to the
openocd:3334
, resume them4
:${CROSS_COMPILE}gdb /path/to/igpio_led_output.elf (gdb) target remote :3334 Remote debugging using :3334 delay () at /path/to/rtos/freertos/imx8mm/boards/ucm-imx8m-mini/driver_examples/gpio/led_output/gpio_led_output.c:41 41 for (i = 0; i < EXAMPLE_DELAY_COUNT; ++i) (gdb) continue Continuing.
-
-
-