We have do the following test with your suggestions:
1. Enable the shared interrupt
Code: Select all
$ grep CONFIG_XENO_OPT_SHIRQ /boot/config-`uname -r`
CONFIG_XENO_OPT_SHIRQ=y
Code: Select all
$ dmesg | grep EAK
[ 3.413147] PEAK-PCI-CAN: initializing device 001c:0008
[ 3.413165] PEAK-PCI-CAN 0000:01:00.0: enabling device (0000 -> 0002)
[ 3.418376] PEAK-PCI-CAN: base_addr=ffffb89fc0cb5000 conf_addr=ffffb89fc0cad000 irq=22
[ 3.418457] PEAK-PCI-CAN: base_addr=ffffb89fc0cbd400 conf_addr=ffffb89fc0cad000 irq=22
Code: Select all
$ sudo /usr/xenomai/rtcanconfig rtcan0 -b 1000000 start
$ sudo /usr/xenomai/rtcanconfig rtcan1 -b 1000000 start
Code: Select all
$ cat /proc/rtcan/devices
Name___________ _Baudrate State___ TX_Counter RX_Counter ____Errors
rtcan0 1000000 active 0 0 0
rtcan1 1000000 active 0 0 0
Code: Select all
$ while :; do sudo /usr/xenomai/bin/rtcansend rtcan0 -i 1 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 -v; sleep 0.1; done
interface rtcan0
s=3, ifr_name=rtcan0
<0x001> [8] 01 02 03 04 05 06 07 08
Cleaning up...
interface rtcan0
s=3, ifr_name=rtcan0
Code: Select all
$ sudo /usr/xenomai/bin/rtcanrecv rtcan1
Xenomai kernel has been tested successfully. Sending and receiving data are failed yet.
(linux kernel 4.9.38 xenomai kernel 3.0.5)
We follow this link to the xenomai installation and testing:
https://rtt-lwr.readthedocs.io/en/lates ... omai3.html
So if we should change the default rt-socket-can driver with the peak-can driver?
Regards.