<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 11 (filtered medium)">
<style>
<!--
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{color:purple;
text-decoration:underline;}
p.MsoAutoSig, li.MsoAutoSig, div.MsoAutoSig
{mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman";}
span.EstiloCorreo17
{mso-style-type:personal-compose;
font-family:Arial;
color:windowtext;}
@page Section1
{size:595.3pt 841.9pt;
margin:70.85pt 3.0cm 70.85pt 3.0cm;}
div.Section1
{page:Section1;}
-->
</style>
</head>
<body lang="ES" link="blue" vlink="purple">
<div class="Section1">
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial">Hello all,<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial">First of all, I must thank the whole IgH team for their great work on the EtherCAT master. I’ve cross compiled it for Xenomai. It’s running smoothly
and with very good latency times. I’m using the e100 driver.<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial">However, I’ve found some problems during its compilation and the execution of the Xenomai test:<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal" style="margin-left:35.4pt;text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial">export host_alias=$ELINOS_BIN_PREFIX<o:p></o:p></span></font></p>
<p class="MsoNormal" style="margin-left:35.4pt;text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial">cd /users/aplicaci/elinos52/xenomai/src/ethercat-1.5.2<o:p></o:p></span></font></p>
<p class="MsoNormal" style="margin-left:35.4pt;text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial">./configure --build=i486-pc-linux-gnu --host=x86-linux --enable-generic=no --enable-8139too=no --enable-e100
--with-e100-kernel=2.6.34 --enable-rtdm --with-xenomai-dir=/users/aplicaci/elinos52/xenomai/xenomai-2.6.34/xenomai-build/usr/realtime --with-linux-dir=/users/aplicaci/elinos52/xenomai/linux<o:p></o:p></span></font></p>
<p class="MsoNormal" style="margin-left:35.4pt;text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial">make<o:p></o:p></span></font></p>
<p class="MsoNormal" style="margin-left:35.4pt;text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial">make modules<o:p></o:p></span></font></p>
<p class="MsoNormal" style="text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal" style="text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial">This doesn’t create the Xenomai examples. How can I cross compile them? Finally, I’ve created a Makefile and compiled
it, but I’d like to know how to do it from the original sources.<o:p></o:p></span></font></p>
<p class="MsoNormal" style="text-autospace:none"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial">Besides, at first, the Xenomai test gave a System state exception when executing ecrt_domain_state(). The problem was that copy_to_user() and copy_from_user()
in ec_ioctl_domain_state() were being called in primary mode. After changing all the copy_*_user(…) to rtdm_copy_*_user(NULL,…) in rtdm-ioctl.c (and adding #include <rtdm.h>), the Xenomai demo now runs without context switching.<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial">However, there are still some calls to __copy_to_user() which I don’t dare to change. Can they be substituted with rtdm_copy_to_user()?<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial">Best regards,<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial">Asier<o:p></o:p></span></font></p>
<p class="MsoNormal"><font size="2" face="Arial"><span lang="EN-GB" style="font-size:
10.0pt;font-family:Arial"><o:p> </o:p></span></font></p>
</div>
</body>
</html>