On 03/12/2013 04:27 PM, Jerome Poncin wrote:

> Le 12/03/2013 13:21, Gilles Chanteperdrix a écrit :
>> On 03/12/2013 10:10 AM, Jerome Poncin wrote:
>>
>>> Le 08/03/2013 13:22, Gilles Chanteperdrix a écrit :
>>>> On 03/08/2013 11:17 AM, Jerome Poncin wrote:
>>>>
>>>>> Le 07/03/2013 16:33, Jerome Poncin a écrit :
>>>>>> Le 06/03/2013 22:05, Gilles Chanteperdrix a écrit :
>>>>>>> On 03/06/2013 04:28 PM, Jan Kiszka wrote:
>>>>>>>
>>>>>>>> Also here: Do not misuse write(), define an IOCTL that contains
>>>>>>>> something like "MMAP" and another one with MUNMAP in its name - that's
>>>>>>>> the purpose of this service, no?
>>>>>>> A lot of drivers probably have to reinvent a way to pass all the
>>>>>>> parameters for an mmap, why not adding an "mmap" method to RTDM drivers?
>>>>>>>
>>>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I  re factored my code with all your remarks (I think and I hope).
>>>>>>
>>>>>> Could you say me if it's correct now ?
>>>>>>
>>>>>> Jan, you're right, It's possible to use Xenomai with UIO driver, but I
>>>>>> would like to use more real time possibilities of Xenomai in future
>>>>>> (like IRQ).
>>>>>> My first goal is to have a code compliant.
>>>>>> I added IRQ, and my next step will be to understand why the kernel
>>>>>> crash after IRQ registration.
>>>>>>
>>>>>> Thank you for your help,
>>>>>>
>>>>>> Jerome
>>>>>>
>>>>>>
>>>>>>
>>>>> Hello,
>>>>>
>>>>> I have good news because, I arrived to validated driver with IRQ
>>>>> support. I changed position of cifx on my motherboard in my PC and the
>>>>> IRQ affected is not shared ;-) !
>>>>>
>>>>> I have now a question about IRQ. What is the good method to signal to
>>>>> user-land that there is an IRQ. Is there an example ?
>>>> Almost every "read" call is an example... ;-)
>>>>
>>> Hello,
>>>
>>> I'm finishing my driver with IRQ. I saw that there is two mode, Real
>>> time and Non real time for RTDM driver function.
>>> My driver should run in the two mode. When I compile my User Space
>>> Shared library that call Xenomai Kernel driver,
>>> I saw that library call every time Non real time function and no real
>>> time function...
>>> I use a shared library with posix skin with makefile in attached file. I
>>> read explanation for static library with posix skin :
>>>
>>> http://www.xenomai.org/index.php/Porting_POSIX_applications_to_Xenomai
>>>
>>> What must I do with shared library for using rt mode ?
>>
>> Use the LDLIBS variable when linking the library?
>>
> Gilles,
> 
> you're right ;-), I didn't use LDLIBS for linking the library, therefore 
> I corrected this.
> 
> Now I have this as link line for my library :
> 
> gcc -shared -Xlinker -rpath -Xlinker /usr/xenomai/lib 
> -I/usr/xenomai/include/include/xenomai 
> -I/usr/xenomai/include/include/xenomai/compat 
> -I/usr/xenomai/include/include/xenomai/posix -I./ -I.//Toolkit 
> -Wl,@/usr/xenomai/lib/posix.wrappers -L/usr/xenomai/lib -lpthread_rt 
> -lxenomai -lpthread -lrt -o libcifx.so .//cifXDownload.o 
> .//cifXEndianess.o .//cifXFunctions.o .//cifXHWFunctions.o .//cifXInit.o 
> .//cifXInterrupt.o .//md5.o   .//cifx_xenomai.o .//OS_xenomai.o 
> .//USER_xenomai.o
> 
> and this for the application :
> 
> gcc -DCONSUMER -I/usr/xenomai/include -D_GNU_SOURCE -D_REENTRANT 
> -D__XENO__ -I/usr/xenomai/include/posix -I../libcifx 
> -I../libcifx/Toolkit -O2   -lcifx -lpciaccess -lrtdm -Xlinker -rpath 
> -Xlinker /usr/xenomai/lib  cifx_xenomai_sample.c 
> -Wl,@/usr/xenomai/lib/posix.wrappers -L/usr/xenomai/lib -lpthread_rt 
> -lxenomai -lpthread -lrt -lcifx -lpciaccess -lrtdm -o cifx_xenomai_sample
> 
> with
> 
> mlockall(MCL_CURRENT | MCL_FUTURE);
> 
> 
> first line in main
> 
> I have a new log :
> 
> [ 4700.073616] cifx 0000:04:01.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
> [ 4700.073643] cifx 0000:04:01.0: DPM at FEBF0000
> [ 4700.073654] cifx 0000:04:01.0: registered CifX card
> [ 4734.146888] NRT mode
> [ 4751.104009] rt
> [ 4751.388002] Xenomai: Posix: destroying mutex f8419600.
> 
> But as you see It seems I'm always in Non Real Time mode...


I do not see anything, as I do not see the sources for either your
driver or application.

> 
> Do you have an idea about my problem ?
> 

> The log "rt" and " Xenomai: Posix: destroying mutex f8419600." is normal ?


It depends if you consider normal leaving an application with a mutex
created but not destroyed.

-- 
                                                                Gilles.


_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai

Reply via email to