at91_enthus wrote:
> On Tue, Jan 25, 2011 at 12:20 AM, Gilles Chanteperdrix <
> [email protected]> wrote:
> 
>> at91_enthus wrote:
>>>>> Oh. I assumed without mlockall (it wasn't part of my original code).
>>>>> Now, I placed mlockall in my original code (right before
>>>> open_controller())
>>>>> and the pin gets toggled according to my scope.
>>>> Ok. Show me the Makefile then.
>>> And the code which works.
>>>
>>>
>>>  see attachment
>>>
>>>
>>>> Including the
>>>> value of the defines please (not all of them, only those the program
>>>> uses for open_controller).
>>>>
>>>>
>>>>
>>> #define AT91C_BASE_AIC          0xFFFFF000 // (AIC) Base Address
>>> #define AT91C_BASE_PIOB        0xFFFFF600 // (PIOB) Base Address
>>> #define PIO_PER             0x00000000 // (PIO_PER) PIO Enable Register
>>> #define PIO_PDR             0x00000004 // (PIO_PDR) PIO Disable Register
>>> #define PIO_PSR             0x00000008 // (PIO_PSR) PIO Status Register
>>> #define PIO_OER             0x00000010 // (PIO_OER) Output Enable
>> Register
>>> #define PIO_SODR           0x00000030 // (PIO_SODR) Set Output Data
>> Register
>>> #define PIO_CODR           0x00000034 // (PIO_CODR) Clear Output Data
>>> Register
>>> #define PIO_PPUDR         0x00000060 // (PIO_PPUDR) Pull-up Disable
>> Register
>>> #define PIO_MDDR           0x00000054 // (PIO_MDDR) Multi-driver Disable
>>> Register
>>>
>>>
>> I am unable to reproduce your issue. That said, I am using standard
>> Makefiles, that is:
>>
>> XENO_CONFIG = DESTDIR="$(staging)" $(staging)/bin/xeno-config
>>
>> XENO_NATIVE_CPPFLAGS = $(shell $(XENO_CONFIG) --skin=native --cflags)
>> XENO_NATIVE_LIBS = $(shell $(XENO_CONFIG) --skin=native --ldflags)
>>
>> Where staging would be "/" in your case.
>>
>> If I want static libraries, I prepend -static to XENO_NATIVE_LIBS, I do
>> not try to link both with static and dynamic libraries. I suspect this
>> is the cause of your problem, either that or the fact that you have some
>> ulimit.
>>
>> Note that my toolchain does not even allow mixing static and dynamic
>> libraries. I get this warning when linking:
>>
>> /usr/local/arm-2010q1/bin/../lib/gcc/arm-none-linux-gnueabi/4.4.1/../../../../arm-none-linux-gnueabi/bin/ld:
>>
>> /usr/local/arm-2010q1/bin/../arm-none-linux-gnueabi/libc/armv4t/usr/lib/libc.a(dl-tsd.o)(.text+0x18):
>> R_ARM_TLS_LE32 relocation not permitted in shared object
>>
>> And a segmentation fault when running (though I do not even access the
>> mmapped area).
>>
>> --
>>                                                                 Gilles.
>>
> 
> 
> I'll try to fix this issue later today. Thanks a lot for taking the time to
> help me.

Yes, note that I wasted a lot of time: I knew from the beginning that
the Makefile was broken, and this should have been the first thing I
verified.

Anyway, the "first-hand" examples we provide are those documented here:
http://www.xenomai.org/index.php/Examples

They come with working Makefiles, which you are encouraged to re-use.

Also, xeno-config lacks support for getting the RTDM skin flags, but I
am going to add it to 2.5.6.

-- 
                                                                Gilles.

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to