Got stuck in rpmsg_lite_is_link_up()

0004-imx8qm.dtsi.patch (386 Bytes)
0003-imx8qm-apalis-v1.1-eval.dts.patch (1.9 KB)
0002-imx8-ss-cm41.dtsi.patch (1.1 KB)
0001-imx8-apalis-v1.1.dtsi.patch (1.8 KB)

module : imx8qm 4gb wb it

i tried to use both m40 and m41 as a bridge of rpmsg-to-uart.
and i patched device tree files as above.

rpmsg configured as below.

root@apalis-imx8-07278405:~# dmesg | grep -i rpmsg
[ 0.081204] imx rpmsg driver is registered.
[ 3.332364] imx-rpmsg 90000000.rpmsg0: assigned reserved memory node vdevbuffer
[ 3.340098] virtio_rpmsg_bus virtio0: rpmsg host is online
[ 3.346182] virtio_rpmsg_bus virtio1: rpmsg host is online
[ 3.346243] virtio_rpmsg_bus virtio1: creating channel rpmsg-virtual-tty-channel addr 0x1e
[ 3.360151] imx-rpmsg 90100000.rpmsg1: assigned reserved memory node vdevbuffer
[ 3.389500] virtio_rpmsg_bus virtio2: rpmsg host is online
[ 3.417477] virtio_rpmsg_bus virtio3: rpmsg host is online
root@apalis-imx8-07278405:~# ^C

but when i run “modprobe imx_rpmsg_tty”, nothing is on the terminal.
( only keyboard typing works, it doesnt mean i can run commands)

on m4 uart side ( rpmsg_lite_str_echo_rtos uploaded)
the output shows this message

“RPMSG String Echo FreeRTOS RTOS API Demo…”

i suppose it is wating for “1” from rpmsg_lite_is_link_up()

while (0 == rpmsg_lite_is_link_up(my_rpmsg))
    ;

i think there are something i missed out…

Thanks.

Hi @ee00bb.20 , if you echo to the new device, do you get any response? That is the expected result.

Hi alvarto.

I am unable to echo on terminal.

As I mentioned above.
"
but when i run “modprobe imx_rpmsg_tty”, nothing is on the terminal.
( only keyboard typing works, it doesnt mean i can run commands)
"

# modprobe imx_rpmsg_tty

After running this command. I can’t do anything. the command line doesn’t show # mark.

so I run the same command in the background

# modprobe imx_rpmsg_tty &

In /dev , I found “ttyRPMSG30”.

So, i tested echoing some string on it.

# echo “some string” > /dev/ttyRPMSG30

It also gives no # mark. The linux command interface stuck here.

On m4 uart. No message showed.


Thanks.

Hi @ee00bb.20 , understood. What Linux image version are you using? Are you reproducing the issue in our Multimedia Reference Image 6.4.0?

it’s yocto (dunfell). i haven’t tried it on kirstone yet.

Hi @ee00bb.20 , sorry for the late reply, we had an exhibition. Understood. Just to confirm, since I see that you did some changes on Yocto, did you try in our latest Dunfell (BSP 5) Multimedia Reference Image from our feeds?

Hi @jorge.tx , can you check the status of RPMsg in Apalis iMX8? Multimedia Reference Image 5.7. My understanding was that this was working just fine.

Thanks,
Alvaro.

Yes. it’s 5.7.3( probably latest). I tested on 5.7.1, too.

Technically, I don’t use “Mutimedia Reference Image”. I added my meta-layer.
(didn’t touched meta-toradex-demos)

This is .bb file from “/recipes-images/images”. (copied from tdx-reference-minimal-image.bb, some package added)
===========================================================================
inherit core-image

SUMMARY = “***** Embedded Linux ***** Minimal Image”
DESCRIPTION = “Minimal image without graphical interface that just boots”

LICENSE = “MIT”

#Prefix to the resulting deployable tarball name
export IMAGE_BASENAME = “*****-Minimal-Image”
MACHINE_NAME ?= “${MACHINE}”
IMAGE_NAME = “${MACHINE_NAME}_${IMAGE_BASENAME}”

# Copy Licenses to image /usr/share/common-license
COPY_LIC_MANIFEST ?= “1”
COPY_LIC_DIRS ?= “1”

add_rootfs_version () {
/*
*/
}
# add the rootfs version to the welcome banner
ROOTFS_POSTPROCESS_COMMAND += " add_rootfs_version;"
IMAGE_LINGUAS = “en-us”
#IMAGE_LINGUAS = “de-de fr-fr en-gb en-us pt-br es-es kn-in ml-in ta-in”
CONMANPKGS ?= “connman connman-plugin-loopback connman-plugin-ethernet connman-plugin-wifi connman-client”

IMAGE_INSTALL += "
packagegroup-boot
packagegroup-basic
packagegroup-base-tdx-cli
packagegroup-machine-tdx-cli
packagegroup-wifi-tdx-cli
packagegroup-wifi-fw-tdx-cli
packagegroup-core-buildessential
packagegroup-core-full-cmdline
udev-extraconf
${CONMANPKGS}
${@bb.utils.contains(‘DISTRO_FEATURES’, ‘systemd’, ‘timestamp-service systemd-analyze’, ‘’, d)}
rsync
cmake
gdb
gdbserver
ninja
sqlite3
zip
zlib
poco
poco-dev
screen
googletest
googletest-dev
boost
boost-dev
fillypubsystemd
"
==================================================================================

Do I need to make .bb file based on “tdx-reference-multimedia-image.bb” file ?

I think it is ok to use minimal-reference-image. because i just configured some gpio/uart port and added rpmsg.

You definitely want to try in our Multimedia image, since that is the most complete offering we support. If it is not working there, it is very likely additional development/changes are needed.

I have built “Multimedia Reference Image” with patched device trees. and, i assume that the issue has to do with the pci bus.

after running modprobe command, the message shows up that the pcie ldo has stopped.

I will rebuild the image with other device tree patchs. and will reply if the issue remains the same.

Thanks.

1 Like

Thanks for the info. We also want to try over here but we have been a bit busy lately. Hopefully my colleage @jorge.tx can get back to you next week latest, as we want to confirm if it works personally.

Alvaro.

Dear customer,

Is this issue resolved or still need support on this topic.

Thank you

Regards,