Hi Imanol,
As you can see in the original hardcoded version, the VRING addresses are spaced by 0x8000 (32kB) and not 0x800 (2kB). The reason is that the size of one vring is (with the default configuration) 3*4096B = 12kB.
If you still want to use your layout, you will also need to change RPMSG_NUM_BUFS and/or RPMSG_BUF_SIZE so that your VRING fits into 2048.. But even if you do it like this, it will not work, since the VRING must take at least one page size, which is 4kB (> 2kB (0x800)). Also, if you change RPMSG_NUM_BUFS or RPMSG_BUF_SIZE, you need to do the same changes analogically on the M4/FreeRTOS side.
My recommendation is you use the same spacing as in the default case (0x8000), if you are not much size constrained.
I would also recommend you to have a look here: GitHub - EmbeddedRPC/erpc-imx-demos: eRPC demos for i.MX devices . It is a repository, where I tried to show, how to use RPMsg Lite + FreeRTOS vs. RPMsg in Linux on i.MX6SX SDB board.
Regards,
Marek NOVAK