]> rtime.felk.cvut.cz Git - sojka/can-utils.git/commit
canfd: upgrade tools to support CAN FD for Linux 3.6
authorOliver Hartkopp <socketcan@hartkopp.net>
Wed, 14 Nov 2012 18:47:21 +0000 (19:47 +0100)
committerOliver Hartkopp <socketcan@hartkopp.net>
Wed, 14 Nov 2012 18:47:21 +0000 (19:47 +0100)
commite7631bd7f94804962e48cde2e7de37370c31a8b8
treed57e2295e25dcf22bc7ca3c5bc5b78fa864d7322
parenta2b13452c73df5eb32be42294b7f87bee08f69c9
canfd: upgrade tools to support CAN FD for Linux 3.6

This is a major upgrade of the basic tools to handle CAN FD frames.
The library to parse and print CAN frames and logfiles has been extended.

In detail:

 asc2log.c      |    5 +
 candump.c      |   24 ++++---
 cangen.c       |  172 +++++++++++++++++++++++++++++++++------------------
 canlogserver.c |   28 +++++---
 canplayer.c    |   25 ++++---
 cansend.c      |   55 ++++++++++++----
 lib.c          |  189 ++++++++++++++++++++++++++++++++++++++-------------------
 lib.h          |  109 ++++++++++++++++++++++++--------
 log2asc.c      |    8 +-
 log2long.c     |   26 ++++++-
 10 files changed, 440 insertions(+), 201 deletions(-)

asc2log.c / log2asc.c
- updates for new lib functions
- still can only handle CAN2.0 frames (no new info about ASC file layout)

log2long.c / canlogserver.c / canplayer.c
- updates for new lib functions to handle CAN FD

lib.h / lib.c
- reworked lib functions to handle CAN FD
- parse_canframe() now returns CAN_MTU and CANFD_MTU on success, 0 at failure
- added can_dlc2len() and can_len2dlc() helpers
- moved hexstring2candata to hexstring2data to support simple byte buffers
- in the long CAN frame representation use %03X/%08X instead of %3X/%8X
- introduced unified buffer size definitions for ASCII CAN frames
- updated documentation

cangen.c
- support CAN FD frames (added -f option to create CAN FD frames)
- added -m option ('mix') to create random extended / RTR / CAN FD frames
- fixed the 'fixed data' option which was zero'ing the payload by the time
- updated help text

candump.c
- support CAN FD frames (print, bridge, log)
- distinguish frame types by length info: [0] = CAN2.0 [00] = CAN FD frame

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
asc2log.c
candump.c
cangen.c
canlogserver.c
canplayer.c
cansend.c
lib.c
lib.h
log2asc.c
log2long.c