Hello everybody, I need some advices about how to proceed...<br><br>I'm developing a real time application based on Ethercat Master fee219bb31a9<br>The Sw is working well on a Pentium M with Ubuntu 1004.4 LTS, Linux Kernel 2.6.35.9 and xenomai 2.6.0, using e100 driver<br>Unfortunatly that's not the target Hw.<br>I tried to port the same Sw on arm926ej-s Cpu on Linux Kernel 2.6.30 compiled for my arm, xenomai 2.5.4, using generic driver.<br>I'm using a  large tick time=8ms  (both on servos and for real time task), just to relax hw requirments.<br>The real time system is working and the ethercat master seems to do the same.<br>When I run the application I often experience system crashes, like this one<br><br><span style="font-style: italic; ">user:~ /etc/init.d/ethercat start<br>root@user:~ ./mos<br>EtherCAT: Requesting master 0...<br>EtherCAT: Successfully requested master 0.<br>EtherCATrtdm 0: Master attach start!<br>EtherCAT: Requesting master 0...<br>EtherCAT: attaching Master 0!<br>EtherCATrtdm 0: Master searching for domain!<br>EtherCATrtdm 0: Creating Master mutex ETHrtdmLOCK0!<br>EtherCATrtdm 0: MSTR ATTACH done domain=3235525344!<br>EtherCAT 0: Domain0: Logical address 0x00000000, 56 byte, expected working counter 6.<br>EtherCAT 0:   Datagram domain0-0: Logical offset 0x00000000, 56 byte, type LRW.<br>EtherCAT 0: Master thread exited.<br>EtherCAT 0: Starting EtherCAT-OP thread.<br>EtherCAT WARNING 0-0: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-0: Currently mapped PDO entries: 0x6040:00/16 0x6060:00/8. Entries to map: 0x6081:00/32 0x60FF:00/32<br>EtherCAT WARNING 0-0: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-0: Currently mapped PDO entries: 0x6040:00/16 0x607A:00/32. Entries to map: 0x6083:00/32 0x6084:00/32<br>EtherCAT WARNING 0-0: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-0: Currently mapped PDO entries: 0x6041:00/16. Entries to map: 0x6041:00/16 0x6063:00/32<br>EtherCAT WARNING 0-0: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-0: Currently mapped PDO entries: 0x6041:00/16 0x6061:00/8. Entries to map: 0x606C:00/32<br>EtherCAT 0: Domain 0: Working counter changed to 2/6.<br>EtherCAT 0: Domain 0: Working counter changed to 3/6.<br>EtherCAT WARNING 0-1: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-1: Currently mapped PDO entries: 0x6040:00/16 0x6060:00/8. Entries to map: 0x6081:00/32 0x60FF:00/32<br>EtherCAT WARNING 0-1: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-1: Currently mapped PDO entries: 0x6040:00/16 0x607A:00/32. Entries to map: 0x6083:00/32 0x6084:00/32<br>EtherCAT WARNING 0-1: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-1: Currently mapped PDO entries: 0x6041:00/16. Entries to map: 0x6041:00/16 0x6063:00/32<br>EtherCAT WARNING 0-1: Slave does not support changing the PDO mapping!<br>EtherCAT WARNING 0-1: Currently mapped PDO entries: 0x6041:00/16 0x6061:00/8. Entries to map: 0x606C:00/32<br>EtherCAT 0: Domain 0: Working counter changed to 5/6.<br>EtherCAT 0: Slave states: OP.<br>Unable to handle kernel NULL pointer dereference at virtual address 00000030<br>pgd = c0550000<br>[00000030] *pgd=2055d031, *pte=00000000, *ppte=00000000<br>Internal error: Oops: 17 [#1]<br>Modules linked in: ec_rtdm ec_generic ec_master<br>CPU: 0    Not tainted  (2.6.30 #49)<br>PC is at wakeup_preempt_entity+0x1c/0x140<br>LR is at 0xc09200d0<br>pc : [<c0033ff8>]    lr : [<c09200d0>]    psr: a0000013<br>sp : c0b6bf28  ip : 00000000  fp : c0b6bf54<br>r10: 00000000  r9 : c0b6a000  r8 : c002810c<br>r7 : 0000009e  r6 : c0dc4dcc  r5 : 00000000  r4 : c037c140<br>r3 : c02a0958  r2 : 00000002  r1 : 0000001c  r0 : f0adad09<br>Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user<br>Control: 0005317f  Table: 20550000  DAC: 00000015<br>Process mos (pid: 799, stack limit = 0xc0b6a268)<br>Stack: (0xc0b6bf28 to 0xc0b6c000)<br>bf20:                   f0adad09 0000001c 60000013 c037c140 00000000 c0dc4dcc <br>bf40: 0000009e c002810c c0b6a000 00000000 c0b6bf64 c00351e8 c037c140 c0dc4c40 <br>bf60: c0b6bf8c c029e0f4 00000000 c0b6a000 4050d490 404d6000 0000009e c002810c <br>bf80: c0b6a000 00000000 c0b6bf9c c029e3e0 4050d490 bef1e8a0 c0b6bfa4 c0035f40 <br>bfa0: 00000000 c0027f24 bef1e8a0 4050d490 00000000 00000000 4050ce40 4050d490 <br>bfc0: bef1e8a0 4050d490 404d6000 0000009e 404d6000 003d0f00 404be864 00000000 <br>bfe0: 00000152 4050ce30 00035048 4044042c 60000010 00000000 20726f20 6c696166 <br>[<c0033ff8>] (wakeup_preempt_entity+0x1c/0x140) from [<c00351e8>] (pick_next_task_fair+0x3c/0x88)<br>[<c00351e8>] (pick_next_task_fair+0x3c/0x88) from [<c029e0f4>] (__schedule+0x194/0x468)<br>[<c029e0f4>] (__schedule+0x194/0x468) from [<c029e3e0>] (schedule+0x18/0x34)<br>[<c029e3e0>] (schedule+0x18/0x34) from [<c0035f40>] (sys_sched_yield+0x48/0x58)<br>[<c0035f40>] (sys_sched_yield+0x48/0x58) from [<c0027f24>] (ret_fast_syscall+0x0/0x10)<br>Code: e1a0a001 e1a0e000 e1c003d0 e14b02fc (e1ca23d0) <br>---[ end trace eba8fcd0de91cb32 ]---</span><br><br>Sometimes the application seems to work but I cannot use mail boxes, infact everytime I'm going to write sdo the procedure successfully ends but the value doesn't change.<br>I tried to recompile the kernel enabling/disabling FCSE ,  NwFPE, FastFPE (I know I always need one Fpu emulation switch) and VFP (Which is supported by my CPU),without appreciable results.<br>Could someone point out the direction to investigate on?<br>Thanks in advance for your answers, Best Regards Luca<br><br/><br/>Invita i tuoi amici e Tiscali ti premia! Il consiglio di un amico vale più di uno spot in TV. Per ogni nuovo abbonato 30 € di premio per te e per lui! Un amico al mese e parli e navighi sempre gratis: <a target='_blank'  href="http://freelosophy.tiscali.it/">http://freelosophy.tiscali.it/</a><br/><br/>