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 ?
Jerome
-------------- next part --------------
# ------------------------------------------------------------------------------
# line below should not be changed
# ------------------------------------------------------------------------------
### Default Xenomai installation path
XENO ?= /usr/xenomai
XENOCONFIG=$(shell PATH=$(XENO):$(XENO)/bin:$(PATH) which xeno-config
2>/dev/null)
### Sanity check
ifeq ($(XENOCONFIG),)
all::
@echo ">>> Invoke make like this: \"make XENO=/path/to/xeno-config\"
<<<"
@echo
endif
CC=$(shell $(XENOCONFIG) --cc)
CFLAGS=-DCONSUMER $(shell $(XENOCONFIG) --skin=posix --cflags) $(MY_CFLAGS)
LDFLAGS=$(MY_LDFLAGS)
LDLIBS=$(shell $(XENOCONFIG) --skin=posix --ldflags)
# This includes the library path of given Xenomai into the binary to make live
# easier for beginners if Xenomai's libs are not in any default search path.
LDFLAGS+=-Xlinker -rpath -Xlinker $(shell $(XENOCONFIG) --libdir)
KSRC ?= /usr/xenomai/include
LSRC ?= ./
TKSRC ?= ./Toolkit
INCLUDE := -I$(KSRC)/include/xenomai -I$(KSRC)/include/xenomai/compat
-I$(KSRC)/include/xenomai/posix -I$(LSRC) -I$(LSRC)/Toolkit
EXTRA_CFLAGS := -Wall -fpic -O2 # -DVERBOSE
EXTRA_LDFLAGS := -L/usr/xenomai/lib -shared
all:
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(TKSRC)/cifXDownload.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(TKSRC)/cifXEndianess.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(TKSRC)/cifXFunctions.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(TKSRC)/cifXHWFunctions.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(TKSRC)/cifXInit.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(TKSRC)/cifXInterrupt.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(TKSRC)/md5.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(LSRC)/cifx_xenomai.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(LSRC)/OS_xenomai.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_CFLAGS) -c $(LSRC)/USER_xenomai.c
$(CC) $(CFLAGS) $(INCLUDE) $(EXTRA_LDFLAGS) -o libcifx.so $(LSRC)/cifXDownload.o $(LSRC)/cifXEndianess.o $(LSRC)/cifXFunctions.o $(LSRC)/cifXHWFunctions.o $(LSRC)/cifXInit.o $(LSRC)/cifXInterrupt.o $(LSRC)/md5.o $(LSRC)/cifx_xenomai.o $(LSRC)/OS_xenomai.o $(LSRC)/USER_xenomai.o $(EXTRA_LDFLAGS)
clean:
rm -f *.o *.so
_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai