drivers/can_kvaser/README
author fbeaulier
Mon, 29 Aug 2011 17:44:49 +0200
changeset 666 9febdd6fdc71
parent 400 7d845f5d730c
permissions -rw-r--r--
patch from Stefan Kratochwil <entwicklung@inovel.de> : canfestival-3-fm3_698.patch
Bug:
If an object dictionary entry was requested whose size exceeds
SDO_MAX_LENGTH_TRANSFERT, the memcpy() call at line 139 of objacces.c overwrites
the memory after *pDestData which causes stack corruption.
-> Bugfix:
The bug was corrected by size checking the requested data. An 'Out of
memory' error message will be generated if the requested data exceeds
SDO_MAX_LENGTH_TRANSFERT.

Additional changes:
Added dynamic buffer allocation for the SDO transfer. This feature can be used
if SDO_DYNAMIC_BUFFER_ALLOCATION is defined in config.h. The size of the
dynamically allocated buffer is controlled with
SDO_DYNAMIC_BUFFER_ALLOCATION_SIZE.
-> Note:
This change removes the detection of OD_LENGTH_DATA_INVALID errors!
Kvaser driver for CANfestival, the open source CANopen stack.
(C)2008 Giuseppe Massimo Bertani 


This driver should work with any Kvaser product compatible with Kvaser's CANLIB4.
I tested it with CAN Leaf Professional (USB-CAN adapter) on a Suse10.1 Linux box
and CANLIB 4.72 Beta (Oct 1,2007). 

In order to compile the driver, you should already be able to run the CANlib examples,
and tools, to be sure that CANLIB is able to detect and drive your device. 
 
-------------------------------------------------------------------------------------------------
NOTES ABOUT CANLIB4

Since the "Leaf" device was added recently to CANLIB, I had to download the latest linuxcan4
library sources from http://www.kvaser.com instead of use the CD software shipped with the device.

--------------------------------------------------------------------------------------------------
NOTES ABOUT WINDOWS

Sadly, Kvaser's Win32 CANLIB is not provided with sources, so CANLIB cannot be build with GNU
tools. LIB files for MSVC and BCC are provided with the DLL but the DLL itself is stripped and
I've tried an entire day to compile this driver under Cygwin without success, despite 
Wu Yongwei's hints (http://www.geocities.com/yongweiwu/dllfaq.htm).

This does not mean that it's an impossible task, but probably I left out something important. 
Temporary KO.

-------------------------------------------------------------------------------------------------

GMB 23/1/08