<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Feb 5, 2017 at 1:14 PM, Denis Obrezkov <span dir="ltr"><<a href="mailto:denisobrezkov@gmail.com" target="_blank">denisobrezkov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="m_-3992085280166013837gmail-m_-7102857552868715048gmail-"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><span class="m_-3992085280166013837gmail-m_-7102857552868715048gmail-m_7549103633084270119HOEnZb"><font color="#888888"><div><br></div></font></span></div></div></blockquote></span><div>First.. does that CPU include a free toolset? A free simulator? </div><div><br></div></div></div></div></blockquote></span><div>As far as I know, it has a compiler, but I never tried it:</div><div><a href="https://gcc.gnu.org/onlinedocs/gcc/C6X-Options.html" target="_blank">https://gcc.gnu.org/onlinedocs<wbr>/gcc/C6X-Options.html</a></div><div><br></div><div>Also, there is a linux port that uses gcc:</div><div><a href="http://linux-c6x.org/wiki/index.php/Main_Page" target="_blank">http://linux-c6x.org/wiki/inde<wbr>x.php/Main_Page</a> </div><br></div></div></div></blockquote><div><br></div><div>That's a good sign. :)</div><div><br></div><div>I am asking these questions because a new port has more moving parts</div><div>than other RTEMS project. For example:</div><div><br></div><div>+ toolchain. If there is a c6x-elf, myself or Sebastian can usually add a </div><div>-rtems target pretty quickly. We have FSF assignment paperwork so that</div><div>much is handled. But a toolchain includes binutils, gcc, gdb, and newlib.</div><div>Newlib has to have at least setjmp/longjmp support for the CPU.  </div><div><br></div><div>+ If available, a free simulator is nice because it eases initial development </div><div>and long-term testing even if the simulator doesn't have interrupt support. </div><div><br></div><div>+ A BSP for the simulator.</div><div><br></div><div>+ A BSP for reference hardware.</div><div><br></div><div>You can't have a port without at least one BSP. Sometimes there are two</div><div>but you have to have one of those. It is highly desirable to have a BSP</div><div>that is easily available and affordable to the community.</div><div> </div><div>If you decide to do this, we need to assess the tool chain situation.</div><div>My quick check of the source looks OK. I tried to build a tic6x-elf</div><div>tool chain from the tools master and it failed in gcc. I have emailed</div><div>the port maintainer to see if this is going to be an ongoing issue.</div><div>An unmaintained or lightly toolchain which is broken now is not a </div><div>good sign.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">I know that there was simulators in CCS. But I found this phrase on their wiki:<br>CCSv6 does NOT have any simulators. Texas Instruments is moving away from<br> providing simulators and instead is focusing on providing low cost development boards.</div><div class="gmail_quote">(<a href="http://processors.wiki.ti.com/index.php/List_of_Simulator" target="_blank">http://processors.wiki.ti.com<wbr>/index.php/List_of_Simulator</a>)<br><div><br></div><div>I think I can ask more about simulators in BB and linux-c6x mailing lists.</div><span class=""><div><br></div></span></div></div></div></blockquote><div>Simulators are never exactly the same as the HW. Maybe they just got tired</div><div>of investing money in them if they were far off the hardware. Even the most</div><div>basic simulator can help you get through context switch code and some</div><div>other fundamental problems.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class=""><div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div></div><div>For that project I would be prone to list it as a separate project</div><div>and add to the BeagleBoard project to take advantage of that</div><div>project. So the port is step 1 and using that port in specific ways</div><div>on the BB is step 2.<br></div></div></div></div></blockquote></span><div>Should I apply my proposal to BB GSoC too? </div><span class="HOEnZb"><font color="#888888"><div><br></div></font></span></div></div></div></blockquote><div>If you have to develop targeting the c6x in the BB, then I think that</div><div>is just part of defining your project. </div><div><br></div><div>I am assuming you would start accessing the CPU via the Linux</div><div>tools (whatever they are).  And ensure that whatever method is used</div><div>to interact with the CPU works when running Linux.</div><div><br></div><div>Then when all is working, address how an RTEMS ARM app on</div><div>the BB interacts with it.</div><div><br></div><div>--joel</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="HOEnZb"><font color="#888888"><div></div><div><br></div><div><br class="m_-3992085280166013837gmail-Apple-interchange-newline">-- <br><div class="m_-3992085280166013837gmail_signature">Regards, Denis Obrezkov</div></div></font></span></div>
</div></div>
</blockquote></div><br></div></div>