I’m correctly generating my image Yocto-hardknott-technexion with this:
$ mkdir tn-imx-yocto
$ cd tn-imx-yocto
$ repo init -u https://github.com/TechNexion/tn-imx-yocto-manifest.git -b hardknott_5.10.y-next -m imx-5.10.52-2.1.0.xml
$ repo sync -j8
$ DISTRO=fsl-imx-x11 MACHINE=pico-imx7 BASEBOARD=pi source tn-setup-release.sh -b build-x11-pico-imx7
$ bitbake core-image-base
Then after I run modprobe imx_rpmsg_tty I have issue: virtio_rpmsg_bus virtio0: msg received with no recipient
I tried this: https://community.toradex.com/t/rpmsg-error-virtio-rpmsg-bus-virtio0-msg-received-with-no-recipient/12701 But not solved yet
When I change lines 83 and 102 from src to dst I got the error below(also look at the last photo):
/home/neuberfran/freertos-tn/examples/imx7d_pico_m4/demo_apps/rpmsg/str_echo_freertos/str_echo_freertos.c: In function 'StrEchoTask':
/home/neuberfran/freertos-tn/examples/imx7d_pico_m4/demo_apps/rpmsg/str_echo_freertos/str_echo_freertos.c:83:75: error: 'dst' undeclared (first use in this function)
result = rpmsg_rtos_recv_nocopy(app_chnl->rp_ept, &rx_buf, &len, &dst, 0xFFFFFFFF);
^
/home/neuberfran/freertos-tn/examples/imx7d_pico_m4/demo_apps/rpmsg/str_echo_freertos/str_echo_freertos.c:83:75: note: each undeclared identifier is reported only once for each function it appears in
/home/neuberfran/freertos-tn/examples/imx7d_pico_m4/demo_apps/rpmsg/str_echo_freertos/str_echo_freertos.c:63:19: warning: unused variable 'src' [-Wunused-variable]
unsigned long src;
^
make[2]: *** [CMakeFiles/rpmsg_str_echo_freertos_example.dir/build.make:94: CMakeFiles/rpmsg_str_echo_freertos_example.dir/home/neuberfran/freertos-tn/examples/imx7d_pico_m4/demo_apps/rpmsg/str_echo_freertos/str_echo_freertos.c.obj] Erro 1
make[2]: ** Esperando que outros processos terminem.
make[1]: *** [CMakeFiles/Makefile2:76: CMakeFiles/rpmsg_str_echo_freertos_example.dir/all] Erro 2
The error is being printed on line 761: https://elixir.bootlin.com/linux/latest/source/drivers/rpmsg/virtio_rpmsg_bus.c#L761
How to solve?
edited: I think the problem can be stay in Vring[0] Vring1. Link below. Because I can put
#define VRING0_BASE 0xBFFF0000
#define VRING1_BASE 0xBFFF8000
in platform_info.c But I can't do changes in imx_rpmsg.c
I started to resolve my issue after on 04/13/2022 When I edited this post/issue and put this link: https://imxdev.gitlab.io/tutorial/Multicore_communication_on_WaRP7_using_Remote_Processor_Messaging_bus_(RPMsg)/
In freertos-tn/middleware/multicore/open-amp/porting/imx7d-m4/platform_info.c file #define VRING1_BASE correct is 0x9FFF8000 But in my platform_info.c was 0x9FFF0000
Now, I can run RPMsg with str_echo_freertos script/example: