<?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>topic Re: MCC library For FreeRtos in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675409#M104170</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Petrl&lt;/P&gt;&lt;P&gt;i am using the above link reference code only in my project.&lt;/P&gt;&lt;P&gt;it is not working when i increase the number of buffers.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 19 Jun 2017 11:38:04 GMT</pubDate>
    <dc:creator>niranjanbc</dc:creator>
    <dc:date>2017-06-19T11:38:04Z</dc:date>
    <item>
      <title>MCC library For FreeRtos</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675404#M104165</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;Hi i am looking for MCC library in FreeRtos&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;can you please provide the link for the same.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;currently we have used&amp;nbsp;MCC between A9(linux) and M4(MQX)&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;but we are planning to replace MQX with FreeRtos, but i dont find example code or MCC library for FreeRtos.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;thanks&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;Niranjan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 May 2017 11:29:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675404#M104165</guid>
      <dc:creator>niranjanbc</dc:creator>
      <dc:date>2017-05-10T11:29:10Z</dc:date>
    </item>
    <item>
      <title>Re: MCC library For FreeRtos</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675405#M104166</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Niranjan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FreeRTOS have RPMSG instead of MCC, but it also use shared memory.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can find a document explaining how to run RPMsg examples&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/docs/DOC-333803"&gt;Running RPMsg Demo Applications for Multicore Communication with IMX6SX and IMX7D&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can see also some discussions about this topic here:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/thread/441938"&gt;How does M4 and A9 on i.mx6sx access DDR&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/thread/447422"&gt;MCC for FreeRTOS&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Best regards,&lt;BR /&gt;TIC&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 12 May 2017 20:02:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675405#M104166</guid>
      <dc:creator>Carlos_Musich</dc:creator>
      <dc:date>2017-05-12T20:02:15Z</dc:date>
    </item>
    <item>
      <title>Re: MCC library For FreeRtos</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675406#M104167</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you very much Carlos&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 31 May 2017 12:03:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675406#M104167</guid>
      <dc:creator>niranjanbc</dc:creator>
      <dc:date>2017-05-31T12:03:52Z</dc:date>
    </item>
    <item>
      <title>Re: MCC library For FreeRtos</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675407#M104168</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;Hi&amp;nbsp;Carlos&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;i am working on multiple endpoint RPMSG, i was able to modify the shared memory and use DDR.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;but if I change/increase the&amp;nbsp; "RPMSG_BUF_SIZE" multiple endpoint wont work, channel wont get created by installing the module.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&lt;SPAN style="border: 0px; font-weight: bold;"&gt;&lt;STRONG&gt;insmod&lt;/STRONG&gt;&lt;/SPAN&gt; /lib/modules/3.14.28-1.0.0_ga+g91cf351/kernel/drivers/rpmsg/&lt;SPAN style="border: 0px; font-weight: bold;"&gt;&lt;STRONG&gt;rpmsg_multiept.ko&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;i have attached source file for&amp;nbsp;&lt;SPAN style="border: 0px; font-weight: bold;"&gt;&lt;STRONG&gt;rpmsg_multiept.ko&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;below please find the my code of imx_rpmsg.c&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;+ * For now, allocate 256 buffers of 512 bytes for each side. each buffer&lt;BR /&gt;+ * will then have 16B for the msg header and 496B for the payload.&lt;BR /&gt;+ * This will require a total space of 256KB for the buffers themselves, and&lt;BR /&gt;+ * 3 pages for every vring (the size of the vring depends on the number of&lt;BR /&gt;+ * buffers it supports).&lt;BR /&gt;+ */&lt;BR /&gt;+#define &lt;SPAN style="border: 0px; color: #ff0000; font-weight: bold;"&gt;&lt;STRONG&gt;RPMSG_NUM_BUFS&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;(1024)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;+#define&lt;SPAN style="border: 0px; font-weight: bold;"&gt;&lt;STRONG&gt; RPMSG_BUF_SIZE&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;(512)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;+#define RPMSG_BUFS_SPACE&amp;nbsp;&amp;nbsp; &amp;nbsp;(RPMSG_NUM_BUFS * RPMSG_BUF_SIZE)&lt;BR /&gt;+&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;+&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;+&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;.........&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;...........&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;MODULE_DEVICE_TABLE(of, imx_rpmsg_dt_ids);&lt;BR /&gt;+&lt;BR /&gt;+static int imx_rpmsg_probe(struct platform_device *pdev)&lt;BR /&gt;+{&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;int i, ret = 0;&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;struct device_node *np = pdev-&amp;gt;dev.of_node;&lt;BR /&gt;+&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;for (i = 0; i &amp;lt; ARRAY_SIZE(imx_rpmsg_vprocs); i++) {&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;struct imx_rpmsg_vproc *rpdev = &amp;amp;imx_rpmsg_vprocs[i];&lt;BR /&gt;+&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (!strcmp(rpdev-&amp;gt;rproc_name, "m4")) {&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ret = of_device_is_compatible(np, "fsl,imx7d-rpmsg");&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ret |= of_device_is_compatible(np, "fsl,imx6sx-rpmsg");&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (ret) {&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;/* hardcodes here now. */&lt;BR /&gt;&lt;SPAN style="border: 0px; color: #ff0000; font-weight: bold;"&gt;&lt;STRONG&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;rpdev-&amp;gt;vring[0] = 0xBF800000;&amp;nbsp; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="border: 0px; color: #ff0000; font-weight: bold;"&gt;&lt;STRONG&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;rpdev-&amp;gt;vring[1] = 0xBF880000; &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;} else {&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;break;&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;+&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;pr_debug("%s rpdev%d: vring0 0x%x, vring1 0x%x\n", __func__,&lt;BR /&gt;+&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;i, rpdev-&amp;gt;vring[0], rpdev-&amp;gt;vring[1]);&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;if i change &lt;SPAN style="border: 0px; color: #ff0000; font-weight: bold;"&gt;&lt;STRONG&gt;RPMSG_NUM_BUFS&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="border: 0px; color: #ff0000; font-weight: bold;"&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; back to&amp;nbsp; (512),&amp;nbsp; &lt;SPAN style="color: #000000; border: 0px; font-weight: inherit;"&gt;channel gets created&lt;/SPAN&gt;.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;am i doing calculation wrong.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;how to calculate vring address.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px;"&gt;&lt;/P&gt;&lt;P style="border: 0px; font-size: 14px;"&gt;i want to increase the number of buffers, what other changes i have to make that work.&lt;/P&gt;&lt;P style="border: 0px; font-size: 14px;"&gt;if change the buffer number back to 512, i see rpmsg driver works fine.with above memory allocation.&lt;/P&gt;&lt;P style="border: 0px; font-size: 14px;"&gt;i have allocated now last 8MB of shared DDR &amp;nbsp;memory for RPMSG.&lt;/P&gt;&lt;P style="border: 0px; font-size: 14px;"&gt;do i need to change "&lt;SPAN style="border: 0px; font-weight: inherit; font-size: 14px;"&gt;RPMSG_VRING_ALIGN", what is the value and how to calculate it.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="border: 0px; font-size: 14px;"&gt;&lt;SPAN style="border: 0px; font-weight: inherit; font-size: 14px;"&gt;if i change&amp;nbsp;RPMSG_VRING_ALIGN, what other files are affected, what other changes i have to make.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Jun 2017 20:03:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675407#M104168</guid>
      <dc:creator>niranjanbc</dc:creator>
      <dc:date>2017-06-14T20:03:39Z</dc:date>
    </item>
    <item>
      <title>Re: MCC library For FreeRtos</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675408#M104169</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Niranjan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;we have prepared multiple endpoinds implementation. You can find reference here:&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://github.com/NXPmicro/rpmsg-sysfs" title="https://github.com/NXPmicro/rpmsg-sysfs"&gt;GitHub - NXPmicro/rpmsg-sysfs: Linux sysfs interface for RPMsg&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;PetrL&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Jun 2017 07:17:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675408#M104169</guid>
      <dc:creator>PetrL</dc:creator>
      <dc:date>2017-06-19T07:17:15Z</dc:date>
    </item>
    <item>
      <title>Re: MCC library For FreeRtos</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675409#M104170</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Petrl&lt;/P&gt;&lt;P&gt;i am using the above link reference code only in my project.&lt;/P&gt;&lt;P&gt;it is not working when i increase the number of buffers.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Jun 2017 11:38:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/MCC-library-For-FreeRtos/m-p/675409#M104170</guid>
      <dc:creator>niranjanbc</dc:creator>
      <dc:date>2017-06-19T11:38:04Z</dc:date>
    </item>
  </channel>
</rss>

