我正确地生成了Yocto Hardnott Technesion的图像:
$ 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
在我运行modprobe imx_rpmsg_tty之后,我遇到了一个问题:virtio_rpmsg_bus virtio0: msg received with no recipient
当我将第83行和第102行从src改为dst时,我得到了下面的错误(也请看最后一张照片):
/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
如何解决?
编辑:我认为问题可以留在Vring[0]Vring1.链接如下.因为我可以
#define VRING0_BASE 0xBFFF0000
#define VRING1_BASE 0xBFFF8000
在平台信息中.c但是我不能在imx_rpmsg中进行更改.C