has anyone experience with the Odroid and PEAK-CAN. I use the newest driver (Version 8.4.0) from the official homepage: http://www.peak-system.com/fileadmin/me ... /index.htm
And follow exact the instructions in the installation Manual http://www.peak-system.com/fileadmin/me ... an_eng.pdf
I also installed all requirements including the correct kernel headers:
Code: Select all
sudo apt-get install linux-headers-$(uname -r)
When I try to make the peak can driver:
Code: Select all
$ cd peak-linux-driver-8.4.0
$ make clean
$ make
Code: Select all
make[1]: Entering directory '/home/odroid/peak-linux-driver-8.4.0/driver'
make[1]: Nothing to be done for 'depend'.
make[1]: Leaving directory '/home/odroid/peak-linux-driver-8.4.0/driver'
make[1]: Entering directory '/home/odroid/peak-linux-driver-8.4.0/driver'
***
*** Host machine kernel version=4.9.27-35
*** Driver kernel version=4.9.27-35 (4.9.27)
*** Path to kernel sources=/usr/src/linux-headers-4.9.27-35
*** use KBUILD=yes
*** cc version=5.4.0
***
make -C /usr/src/linux-headers-4.9.27-35 SUBDIRS=/home/odroid/peak-linux-driver-8.4.0/driver EXTRA_CFLAGS="-I/home/odroid/peak-linux-driver-8.4.0/driver -DNO_DEBUG -DMODVERSIONS -DPARPORT_SUBSYSTEM -DUSB_SUPPORT -DPCI_SUPPORT -DPCIEC_SUPPORT -DISA_SUPPORT -DDONGLE_SUPPORT -DPCCARD_SUPPORT -DNO_NETDEV_SUPPORT -DNO_RT -Wno-date-time" V=0 modules
make[2]: Entering directory '/usr/src/linux-headers-4.9.27-35'
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_main.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_fops.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_fifo.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_filter.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_parse.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_sja1000.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_common.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_timing.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcanfd_core.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcanfd_ucan.o
CC [M] /home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_pci.o
/home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_pci.c: In function ‘pcan_pci_enable_msi’:
/home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_pci.c:279:44: error: implicit declaration of function ‘pci_enable_msi_range’ [-Werror=implicit-function-declaration]
#define pcan_pci_enable_msi_range(a, b, c) pci_enable_msi_range(a, b, c)
^
/home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_pci.c:327:18: note: in expansion of macro ‘pcan_pci_enable_msi_range’
pa->msi_count = pcan_pci_enable_msi_range(pa->dev, 1, can_count);
^
/home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_pci.c:338:4: error: implicit declaration of function ‘pci_disable_msi’ [-Werror=implicit-function-declaration]
pci_disable_msi(pa->dev);
^
cc1: some warnings being treated as errors
scripts/Makefile.build:293: recipe for target '/home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_pci.o' failed
make[3]: *** [/home/odroid/peak-linux-driver-8.4.0/driver/src/pcan_pci.o] Error 1
Makefile:1490: recipe for target '_module_/home/odroid/peak-linux-driver-8.4.0/driver' failed
make[2]: *** [_module_/home/odroid/peak-linux-driver-8.4.0/driver] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-4.9.27-35'
Makefile:418: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/odroid/peak-linux-driver-8.4.0/driver'
make[1]: Entering directory '/home/odroid/peak-linux-driver-8.4.0/lib'
cc -o libpcan.so.0.6 -DNO_RT -I. -I../driver -fPIC -shared -Wall src/libpcan.c -Wl,-soname,libpcan.so.0
ln -sf libpcan.so.0.6 libpcan.so
cc -o libpcanfd.so.0.1 -DNO_RT -I. -I../driver -fPIC -shared -Wall -DPCANFD_OLD_STYLE_API src/libpcanfd.c -Wl,-soname,libpcanfd.so.0
ln -sf libpcanfd.so.0.1 libpcanfd.so
make[1]: Leaving directory '/home/odroid/peak-linux-driver-8.4.0/lib'
make[1]: Entering directory '/home/odroid/peak-linux-driver-8.4.0/test'
cc -DNO_RT -g -I. -I../lib -I../driver src/receivetest.c src/common.c -lpcanfd -L../lib -o receivetest
cc -DNO_RT -g -I. -I../lib -I../driver src/transmitest.cpp src/common.c src/parser.cpp -lpcanfd -lstdc++ -L../lib -o transmitest
cc -DNO_RT -g -I. -I../lib -I../driver src/bitratetest.c src/common.c -lpcanfd -L../lib -o bitratetest
cc -DNO_RT -g -I. -I../lib -I../driver src/filtertest.cpp src/common.c -lpcanfd -lstdc++ -L../lib -o filtertest
cc -DNO_RT -g -I. -I../lib -I../driver src/pcan-settings.c -lpopt -L../lib -g -o pcan-settings
cc -DNO_RT -g -I. -I../lib -I../driver src/pcanfdtst.c -lpcanfd -L../lib -o pcanfdtst
make[1]: Leaving directory '/home/odroid/peak-linux-driver-8.4.0/test'
I need the peak can driver to work and can not use the socket can driver, because i use the peak can basic API for further developments.
Best Regards
Philipp