Greetings @Edward and @jeremias.tx!
After loading that overlay, I get the following output on dmesg
:
[ 0.047507] imx rpmsg driver is registered.
[ 1.327610] imx-rpmsg rpmsg: No vring buffer.
[ 1.332023] imx-rpmsg: probe of rpmsg failed with error -12
12 is ENOMEM (out of memory). I’m kind of stuck here, I remember this indeed used to work on Torizon 4 with the 4.14 kernel. I’ve also tried the following overlay, which is based on the EVK one, but had the same results:
/dts-v1/;
/plugin/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/clock/imx8mm-clock.h>
/ {
compatible = "toradex,verdin-imx8mm";
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
m4_reserved: m4@0x80000000 {
no-map;
reg = <0 0x80000000 0 0x1000000>;
};
vdev0vring0: vdev0vring0@b8000000 {
compatible = "shared-dma-pool";
reg = <0 0xb8000000 0 0x8000>;
no-map;
};
vdev0vring1: vdev0vring1@b8008000 {
compatible = "shared-dma-pool";
reg = <0 0xb8008000 0 0x8000>;
no-map;
};
vdevbuffer: vdevbuffer@b8400000 {
compatible = "shared-dma-pool";
reg = <0 0xb8400000 0 0x100000>;
no-map;
};
};
imx8mm-cm4 {
compatible = "fsl,imx8mm-cm4";
rsc-da = <0xb8000000>;
clocks = <&clk IMX8MM_CLK_M4_DIV>;
mbox-names = "tx", "rx", "rxdb";
mboxes = <&mu 0 1
&mu 1 1
&mu 3 1>;
memory-region = <&vdev0vring0>, <&vdev0vring1>, <&vdevbuffer>;
syscon = <&src>;
};
};
&rpmsg {
status = "okay";
};