<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: IMX8MP Remote core share memory driver</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/2305074#M243788</link>
    <description>You need:&lt;BR /&gt;&lt;BR /&gt;rmtcore_shm {&lt;BR /&gt;compatible = "fsl,rmtcore-shm";&lt;BR /&gt;status = "ok";&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;On the off chance that someone else wants this for the FRDM_IMX8MPLUS have a look here:&lt;BR /&gt;&lt;BR /&gt;&lt;A href="https://github.com/AndrewCapon/rmtcore-shm/tree/main" target="_blank"&gt;https://github.com/AndrewCapon/rmtcore-shm/tree/main&lt;/A&gt;</description>
    <pubDate>Tue, 03 Feb 2026 08:27:29 GMT</pubDate>
    <dc:creator>AndyCapon</dc:creator>
    <dc:date>2026-02-03T08:27:29Z</dc:date>
    <item>
      <title>IMX8MP Remote core share memory driver</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/1667513#M207430</link>
      <description>&lt;P&gt;Good day.&lt;BR /&gt;I’m trying to implement inter-core data exchange using a DDR buffer for a large amount of data. I am using a Verdin devkit on IMX8MP. Kernel version 5.15. I have already implemented communication via RPMSG using “/dev/rpmsg_ctrl0”.&lt;/P&gt;&lt;P&gt;Now I want to allocate memory in DDR from CMA space and send the address to the CortexM via the RPMSG message. To do this, I deal with an NXP example for “Low Power Audio Application - AN12195SW”. I took the “rmtcore_shm” driver code from the patches and compiled it in the kernel environment via devshell.&lt;/P&gt;&lt;P&gt;Then I installed the module on the system “rmtcore-shm.ko”&lt;/P&gt;&lt;PRE&gt;root&lt;SPAN class=""&gt;@verdin&lt;/SPAN&gt;-imx8mp-&lt;SPAN class=""&gt;14762892&lt;/SPAN&gt;&lt;SPAN class=""&gt;:~&lt;/SPAN&gt;&lt;SPAN class=""&gt;# insmod ./rmtcore-shm.ko&lt;/SPAN&gt;
[ &lt;SPAN class=""&gt;235.945223&lt;/SPAN&gt;] &lt;SPAN class=""&gt;RMTCORE&lt;/SPAN&gt; &lt;SPAN class=""&gt;module&lt;/SPAN&gt; started!
root&lt;SPAN class=""&gt;@verdin&lt;/SPAN&gt;-imx8mp-&lt;SPAN class=""&gt;14762892&lt;/SPAN&gt;&lt;SPAN class=""&gt;:~&lt;/SPAN&gt;&lt;SPAN class=""&gt;#&lt;/SPAN&gt;
&lt;/PRE&gt;&lt;P&gt;But the new device “/dev/rmtcore_shm” did not appear in the system. And when I try to open it I get an error:&lt;/P&gt;&lt;PRE&gt;rmtcore&lt;SPAN class=""&gt;_shm_&lt;/SPAN&gt;fd = open(RMTCORE&lt;SPAN class=""&gt;_SHM_&lt;/SPAN&gt;DEV, O&lt;SPAN class=""&gt;_RDWR);
&lt;SPAN class=""&gt;****&lt;/SPAN&gt;&lt;SPAN class=""&gt;****&lt;/SPAN&gt;&lt;SPAN class=""&gt;****&lt;/SPAN&gt;&lt;SPAN class=""&gt;****&lt;/SPAN&gt;&lt;SPAN class=""&gt;***
"Unable to open device /dev/rmtcore_shm"
**&lt;/SPAN&gt;&lt;SPAN class=""&gt;****&lt;/SPAN&gt;&lt;SPAN class=""&gt;****&lt;/SPAN&gt;&lt;SPAN class=""&gt;****&lt;/SPAN&gt;&lt;SPAN class=""&gt;****&lt;/SPAN&gt;*&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;I may need to make changes to the device files. Right now my overlay for RPMSG looks like this:&lt;/P&gt;&lt;PRE&gt;/dts-v1/;
&lt;SPAN class=""&gt;/plugin/&lt;/SPAN&gt;;

&lt;SPAN class=""&gt;#include &amp;lt;dt-bindings/clock/imx8mp-clock.h&amp;gt;&lt;/SPAN&gt;

/ {
	compatible = &lt;SPAN class=""&gt;"toradex,verdin-imx8mp"&lt;/SPAN&gt;;

	rmtcore_shm {
		compatible = &lt;SPAN class=""&gt;"fsl,rmtcore-shm"&lt;/SPAN&gt;;
		status = &lt;SPAN class=""&gt;"ok"&lt;/SPAN&gt;;
	};
};

&amp;amp;{/} {
	imx8mp-cm7 {
		compatible = &lt;SPAN class=""&gt;"fsl,imx8mp-cm7"&lt;/SPAN&gt;;
		clocks = &amp;lt;&amp;amp;clk IMX8MP_CLK_M7_DIV&amp;gt;;
		mbox-names = &lt;SPAN class=""&gt;"tx"&lt;/SPAN&gt;, &lt;SPAN class=""&gt;"rx"&lt;/SPAN&gt;, &lt;SPAN class=""&gt;"rxdb"&lt;/SPAN&gt;;
		mboxes = &amp;lt;&amp;amp;mu &lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;1&lt;/SPAN&gt;
			  &amp;amp;mu &lt;SPAN class=""&gt;1&lt;/SPAN&gt; &lt;SPAN class=""&gt;1&lt;/SPAN&gt;
			  &amp;amp;mu &lt;SPAN class=""&gt;3&lt;/SPAN&gt; &lt;SPAN class=""&gt;1&lt;/SPAN&gt;&amp;gt;;
		memory-region = &amp;lt;&amp;amp;vdevbuffer&amp;gt;, &amp;lt;&amp;amp;vdev0vring&lt;SPAN class=""&gt;0&lt;/SPAN&gt;&amp;gt;, &amp;lt;&amp;amp;vdev0vring1&amp;gt;, &amp;lt;&amp;amp;rsc_table&amp;gt;, &amp;lt;&amp;amp;m7_reserved&amp;gt;;
		rsc-da = &amp;lt;&lt;SPAN class=""&gt;0x55000000&lt;/SPAN&gt;&amp;gt;;
		syscon = &amp;lt;&amp;amp;src&amp;gt;;
		fsl,startup-delay-ms = &amp;lt;&lt;SPAN class=""&gt;500&lt;/SPAN&gt;&amp;gt;;
	};
};

&amp;amp;i2c3 {
	status = &lt;SPAN class=""&gt;"disabled"&lt;/SPAN&gt;;
};

&amp;amp;pwm4 {
	status = &lt;SPAN class=""&gt;"disabled"&lt;/SPAN&gt;;
};

&amp;amp;resmem {
	&lt;SPAN class=""&gt;#address-cells = &amp;lt;2&amp;gt;;&lt;/SPAN&gt;
	&lt;SPAN class=""&gt;#size-cells = &amp;lt;2&amp;gt;;&lt;/SPAN&gt;

	m7_reserved: m7@0x80000000 {
		&lt;SPAN class=""&gt;no&lt;/SPAN&gt;-&lt;SPAN class=""&gt;map&lt;/SPAN&gt;;
		reg = &amp;lt;&lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x80000000&lt;/SPAN&gt; &lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x1000000&lt;/SPAN&gt;&amp;gt;;
	};

	vdev0vring&lt;SPAN class=""&gt;0&lt;/SPAN&gt;: vdev0vring&lt;SPAN class=""&gt;0&lt;/SPAN&gt;@55000000 {
		&lt;SPAN class=""&gt;no&lt;/SPAN&gt;-&lt;SPAN class=""&gt;map&lt;/SPAN&gt;;
		reg = &amp;lt;&lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x55000000&lt;/SPAN&gt; &lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x8000&lt;/SPAN&gt;&amp;gt;;
	};

	vdev0vring1: vdev0vring1@55008000 {
		&lt;SPAN class=""&gt;no&lt;/SPAN&gt;-&lt;SPAN class=""&gt;map&lt;/SPAN&gt;;
		reg = &amp;lt;&lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x55008000&lt;/SPAN&gt; &lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x8000&lt;/SPAN&gt;&amp;gt;;
	};

	vdevbuffer: vdevbuffer@55400000 {
		compatible = &lt;SPAN class=""&gt;"shared-dma-pool"&lt;/SPAN&gt;;
		&lt;SPAN class=""&gt;no&lt;/SPAN&gt;-&lt;SPAN class=""&gt;map&lt;/SPAN&gt;;
		reg = &amp;lt;&lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x55400000&lt;/SPAN&gt; &lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x100000&lt;/SPAN&gt;&amp;gt;;
	};

	rsc_table: rsc_table@550ff000 {
		&lt;SPAN class=""&gt;no&lt;/SPAN&gt;-&lt;SPAN class=""&gt;map&lt;/SPAN&gt;;
		reg = &amp;lt;&lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x550ff000&lt;/SPAN&gt; &lt;SPAN class=""&gt;0&lt;/SPAN&gt; &lt;SPAN class=""&gt;0x1000&lt;/SPAN&gt;&amp;gt;;
	};
};

&amp;amp;sai3 {
	status = &lt;SPAN class=""&gt;"disabled"&lt;/SPAN&gt;;
};

&amp;amp;sdma3 {
	status = &lt;SPAN class=""&gt;"disabled"&lt;/SPAN&gt;;
};

&amp;amp;mu {
	status = &lt;SPAN class=""&gt;"okay"&lt;/SPAN&gt;;
};

&amp;amp;uart4 {
	status = &lt;SPAN class=""&gt;"disabled"&lt;/SPAN&gt;;
};&lt;/PRE&gt;&lt;P&gt;Can you please tell me what changes need to be made so that&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;/dev/rmtcore_shm&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;appears in the system and I can get access to memory allocation in DDR? If someone has already come across this solution and an example.&lt;/P&gt;&lt;P&gt;Thanks in advance for any help.&lt;/P&gt;</description>
      <pubDate>Mon, 12 Jun 2023 14:18:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/1667513#M207430</guid>
      <dc:creator>Stan88</dc:creator>
      <dc:date>2023-06-12T14:18:19Z</dc:date>
    </item>
    <item>
      <title>Re: IMX8MP Remote core share memory driver</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/1668491#M207519</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;If you build the module, you have to compile the kernel itself to make it works and see in dmseg output.&lt;/P&gt;
&lt;P&gt;Regards&lt;/P&gt;</description>
      <pubDate>Tue, 13 Jun 2023 14:50:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/1668491#M207519</guid>
      <dc:creator>Bio_TICFSL</dc:creator>
      <dc:date>2023-06-13T14:50:07Z</dc:date>
    </item>
    <item>
      <title>Re: IMX8MP Remote core share memory driver</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/1668542#M207522</link>
      <description>&lt;P&gt;Yes, I've tried it also - I compiled it inside kernel, I saw it in the kernel menuconfig - "Remote Core Share Memory Driver", and activated it. Compiled and deployed the kernel, built the image and installed it on the board.&lt;/P&gt;&lt;P&gt;&lt;EM&gt;lsmod&lt;/EM&gt; won't show me this driver because it was not loaded dynamically but is a buildin module.&lt;/P&gt;&lt;P&gt;&lt;EM&gt;dmseg&lt;/EM&gt; also does not contain any information about this driver. An attempt to unload a module gives an error indicating that such a module exists in the system:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;root@verdin-imx8mp-14762892:~# modprobe -r rmtcore-shm
modprobe: FATAL: Module rmtcore_shm is builtin.&lt;/LI-CODE&gt;</description>
      <pubDate>Tue, 13 Jun 2023 16:02:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/1668542#M207522</guid>
      <dc:creator>Stan88</dc:creator>
      <dc:date>2023-06-13T16:02:15Z</dc:date>
    </item>
    <item>
      <title>Re: IMX8MP Remote core share memory driver</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/2304304#M243750</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/218189"&gt;@Stan88&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Did you get to the bottom of this?&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Andy&lt;/P&gt;</description>
      <pubDate>Sun, 01 Feb 2026 15:39:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/2304304#M243750</guid>
      <dc:creator>AndyCapon</dc:creator>
      <dc:date>2026-02-01T15:39:27Z</dc:date>
    </item>
    <item>
      <title>Re: IMX8MP Remote core share memory driver</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/2305074#M243788</link>
      <description>You need:&lt;BR /&gt;&lt;BR /&gt;rmtcore_shm {&lt;BR /&gt;compatible = "fsl,rmtcore-shm";&lt;BR /&gt;status = "ok";&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;On the off chance that someone else wants this for the FRDM_IMX8MPLUS have a look here:&lt;BR /&gt;&lt;BR /&gt;&lt;A href="https://github.com/AndrewCapon/rmtcore-shm/tree/main" target="_blank"&gt;https://github.com/AndrewCapon/rmtcore-shm/tree/main&lt;/A&gt;</description>
      <pubDate>Tue, 03 Feb 2026 08:27:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX8MP-Remote-core-share-memory-driver/m-p/2305074#M243788</guid>
      <dc:creator>AndyCapon</dc:creator>
      <dc:date>2026-02-03T08:27:29Z</dc:date>
    </item>
  </channel>
</rss>

