I can`t run RPMSG-lite in Zephyr 3.3 in imx7d-pico/m4 side. Zephyr 1.13 Works. Issue in new IPM changes in Zephyr #66669
Replies: 9 comments 12 replies
-
Hi @neuberfran |
Beta Was this translation helpful? Give feedback.
-
@MichalPrincNXP Yes, I stay trying older rpmsg-lite based example with the latest Zephyr version. I don't know if older rpmsg-lite version is 2.0.0. The boot order is the traditional one in these cases. U-boot starts zephyr.bin (some messages appear on the m4 side and stop at that damn moment) Also, I looked at the issue below 1 month ago and tried not to upload the tty module directly to scorpion.conf but after booting Linux/A7/Yocto Hardknott using modprobe imx_rpmsg_tty. But not solved. You said: Today I will try this here: How unfortunate that you don't have this device. Would anything device/kit with A7 and M4 produce the same results(to You test)? Yes, I can wait a little longer because I still want to know what is stopping rpmsg-lite here. Could you tell me something about lines 528 and 549 that I asked above? E.g.: I stay trying rpmsg-lite (old and new version) in FreeRTOS here. With the new RPMSG-lite version I will can use something like this: rpmsg_lite_wait_for_link_up(my_rpmsg, RL_BLOCK); With Old rpmsg-lite version in FreeRTOS, stay stopping in rpmsg_lite_is_link_up() like here. root@scorpion: |
Beta Was this translation helpful? Give feedback.
-
Hello @neuberfran Anyway, I would propose to wait a little ... we are going to support rpmsg_lite in Zephyr more at the beginning on the next year. We internally already get Zephyr rpmsg_lite examples running on different NXP dualcore platforms using the latest Zephyr code and the latest Zephyr IPC infrastructure. We focused on dualcores with CortexM cores so far, checking Zephyr rpmsg-lite communication against Linux is planned as well (your case). Based on this records the proposed evkmcimx7ulp board is not in the scope of officially supported Zephyr boards, so we will probably choose another NXP board to test. However, porting to your board of choice should be very easy once we finish. Does it make sense and helpful for you? |
Beta Was this translation helpful? Give feedback.
-
@MichalPrincNXP Ok. But Why I can't work with old rpmsg_lite in FreeRTOS 1.0.1? In FreeRTOS 1.0.1 I can Run normal RPMSG |
Beta Was this translation helpful? Give feedback.
-
Hi @neuberfran , have you made any progress in your rpmsg_lite based project?
|
Beta Was this translation helpful? Give feedback.
-
Before answering your questions, let me say that I am eagerly waiting to have the RPMSG-lite in zephyr upstream on my imx7d-pico (technexion) device. About what I said above, today I'm trying to upload zephyr.elf (coming from the upstream RPMSG-lite zephyr) in userspace using remoteproc and maybe I'll leave this place (rpmsg_lite_is_link_up(rl_instance)) { ) where the upstream RPMSG-lite has stopped here Regarding your questions, I say that it is not essential to use FreeRTOS 1.0.1 but any suitable FreeRTOS I'm a FAN (and I've already reproduced it here: https://www.youtube.com/watch?v=tNevT71nCpM) of this Timada project: I don't have this device (evkmcimx7ulp) But I compile mcuxpresso here Ok. |
Beta Was this translation helpful? Give feedback.
-
the rpmsg-lite gitrepo update should be available on Jan-24 |
Beta Was this translation helpful? Give feedback.
-
Hello @neuberfran currently the RPMSG-Lite under Zephyr with Linux as main core is in plan, once there will be example on this you can take is as reference for your board. And as stated in #66669 (comment) |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Contextualizing:
2) Since then (as shown in the photo above) zephyr.bin (from zephyr3.3) has been defined to start on m4 of imx7d-pico in U-boot in TCM memory 0X7F80000 and the messages from main_remote_echo (in M4 UART6-Console is: Waiting for Master) stop at while (!rpmsg_lite_is_link_up(rl_instance)) {
github project: https://github.com/neuberfran/diegosueiro/blob/main/rpmsg-lite/zephyr/samples/subsys/ipc/rpmsg_lite/remote_echo/src/main_remote_echo.c#L82
Some things I've already tried to resolve:
https://github.com/neuberfran/diegosueiro/blob/main/rpmsg-lite/lib/rpmsg_lite/rpmsg_lite.c#L549
in line 529 rpmsg_lite_dev and non-zero
But, in line 548 rpmsg_lite_dev->link_state is always equal to zero (and return 0 to function (!rpmsg_lite_is_link_up(rl_instance)). Why?
How to resolve my issue(Pls)?
Beta Was this translation helpful? Give feedback.
All reactions