Hallo Jan
xenomai-2.2.0, rtnet-0.9.3-svn
I have included the following lines in frag-ip.c (for user mode).
-----------------------------------------------------
int fd;
rt_task_set_periodic(NULL, TM_NOW, CYCLE);
fdtdma = rt_dev_open("TDMA0", O_RDONLY);
if (fdtdma < 0) {
printf("TDMA open failed!\n");
}
ret = rt_dev_ioctl(fdtdma, RTMAC_RTIOC_WAITONCYCLE, TDMA_WAIT_ON_SYNC);
if (ret < 0 ) {
printf("RTMAC_WAITONCYCLE failed");
}
printf("after WAITONCYCLE\n");
--------------------------------------------
The problem is now that the process seems to hang in rt_dev_ioctl()
forever.
"after WAITONCYCLE" is never printed.
A bug?
Jochen
>From: Jan Kiszka <[EMAIL PROTECTED]>
>To: [EMAIL PROTECTED]
>CC: [email protected]
>Subject: Re: [RTnet-users] WAITONCYCLE User Mode
>Date: Mon, 07 Aug 2006 14:23:05 +0200
>
>matrix_df hotmail wrote:
> > Hello
> >
> > Is there any example which shows how to use WAITONCYCLE in user mode?
> > Or some kind of documention?
> >
> > I tried to copy it from /broken/netshm but this is kernel mode and I
>did
> > not get very far.
> >
> > int rtmac;
> > char rtmac_name[] = "TDMA0";
> > struct rtdm_getcontext_args getcontext;
> >
> > rtmac = open_rt(rtmac_name, O_RDONLY);
> > if (rtmac < 0) {
> > ret = rtmac;
> > //goto err_rtmac1;
> > printf("rtmac open failed!\n");
> > }
> > --> NOW compiling problem
> > getcontext.struct_version = RTDM_CONTEXT_STRUCT_VER;
> > ret = ioctl_rt(rtmac, RTIOC_GETCONTEXT, &getcontext);
> > if (ret < 0) {
> > printf("rtmac RTIOC_GETCONTEXT failed!\n");
> > }
>
>RTIOC_GETCONTEXT is a short path opener, only available to kernel-space
>users (see also RTDM documentation). Therefore the compilation problems.
>
>
>To invoke WAITONCYLE/WAITONCYLE_EX (see also stack/include/rtmac.h),
>simply open the related TDMA device
>
>fd = rt_dev_open("TDMA0", O_RDWR);
>
>and issue RTMAC_RTIOC_WAITONCYCLE or RTMAC_RTIOC_WAITONCYCLE_EX from
>your RT-thread:
>
>err = rt_dev_ioctl(fd, RTMAC_RTIOC_WAITONCYCLE, TDMA_WAIT_ON_SYNC);
>
>-or-
>
>struct rtmac_waitinfo waitinfo = {
> type: TDMA_WAIT_ON_SYNC,
> ext_size: 0
>};
>
>err = rt_dev_ioctl(fd, RTMAC_RTIOC_WAITONCYCLE_EX, &waitinfo);
>/* cycle number is now in waitinfo.cycle_no */
>
>
>If you happen to create a nice demo with this information, please
>contribute it so that we can put it into the examples repository.
>
>Jan
>
><< signature.asc >>
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
RTnet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rtnet-users