Commit Graph

1146 Commits (1405a90e8b71cf0677d26eb78ed267d2500c15ff)

Author SHA1 Message Date
Marc Kleine-Budde 94e40d3c2d can-calc-bit-timing: fix checkpatch warnings
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-04-13 13:13:01 +02:00
Marc Kleine-Budde 197700d26e can-calc-bit-timing: import current can_calc_bittiming() from kernel
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-04-13 13:13:01 +02:00
Marc Kleine-Budde 95f62518d1 can-calc-bit-timing: import helper macros from kernel
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-04-13 13:13:01 +02:00
Marc Kleine-Budde 9ae9e7da02 can-calc-bit-timing: use "struct can_bittiming_const" from uapi headers
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-04-13 13:13:00 +02:00
Marc Kleine-Budde bc41784773 can-calc-bit-timing: make use of bool
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-04-13 13:12:16 +02:00
Marc Kleine-Budde a31b27f420 can-calc-bit-timing: fix checkpatch warnings
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-04-13 13:12:16 +02:00
Marc Kleine-Budde 8c703db361 can-calc-bit-timing: add support flexcan with 30MHz refclock
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-04-13 13:11:53 +02:00
Ramesh Shanmugasundaram c689803204 can-calc-bit-timing: add support for rcar_can
Signed-off-by: Ramesh Shanmugasundaram <ramesh.shanmugasundaram@bp.renesas.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-02-29 11:27:05 +01:00
Kurt Van Dijck 0e3611464b use -w option for transport protocol examples 2016-02-23 11:01:38 +01:00
Kurt Van Dijck 1ffa9a16a4 testj1939: add -w option to keep program open 2016-02-23 09:51:16 +01:00
Kurt Van Dijck 215ca91d26 Makefile: remove .html's with make clean 2016-02-23 09:38:13 +01:00
Kurt Van Dijck 6d717b8a40 update for obsolete enable/disable using netlink 2016-02-23 09:37:46 +01:00
Kurt Van Dijck 047356608b update for dropped rtnetlink 2015-12-11 04:45:54 +01:00
Kurt Van Dijck 61b18e7ff1 fix link 2015-12-11 04:23:58 +01:00
Kurt Van Dijck bbb2f9af04 fix link 2015-12-11 04:23:18 +01:00
Kurt Van Dijck 7644a013cd split in Readme+Kickstart guide 2015-12-11 04:22:19 +01:00
Kurt Van Dijck 4f1026e9ff prepare for github 2015-12-11 04:16:41 +01:00
Kurt Van Dijck a79c16b1d2 Merge branch 'rtnetlink'
* rtnetlink:
  Revert "j1939.page: add relevant API calls"
  testj1939: print API calls
  j1939.page: add relevant API calls
  j1939.page: restructure
  testj1939: use send() when connect()ed
  testj1939: remember if peername was provided
  add .gitignore
  import sample program & help page
  initial
2015-12-11 04:12:18 +01:00
Kurt Van Dijck a14f4448ee Initial commit 2015-12-11 04:09:40 +01:00
Kurt Van Dijck 8e199945be Revert "j1939.page: add relevant API calls"
This reverts commit 234729507e.
2015-12-11 03:31:32 +01:00
Oliver Hartkopp cda61171f1 can: avoid using timeval for uapi
Upstream commit ba61a8d9d780980e8284355a0be750897e7af212

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=ba61a8d9d780980e8284355a0be750897e7af212

The can subsystem communicates with user space using a bcm_msg_head
header, which contains two timestamps. This is problematic for
multiple reasons:

a) The structure layout is currently incompatible between 64-bit
   user space and 32-bit user space, and cannot work in compat
   mode (other than x32).

b) The timeval structure layout will change in 32-bit user
   space when we fix the y2038 overflow problem by redefining
   time_t to 64-bit, making new 32-bit user space incompatible
   with the current kernel interface.
   Cars last a long time and often use old kernels, so the actual
   users of this code are the most likely ones to migrate to y2038
   safe user space.

This tries to work around part of the problem by changing the
publicly visible user interface in the header, but not the binary
interface. Fortunately, the values passed around in the structure
are relative times and do not actually suffer from the y2038
overflow, so 32-bit is enough here.

We replace the use of 'struct timeval' with a newly defined
'struct bcm_timeval' that uses the exact same binary layout
as before and that still suffers from problem a) but not problem
b).

The downside of this approach is that any user space program
that currently assigns a timeval structure to these members
rather than writing the tv_sec/tv_usec portions individually
will suffer a compile-time error when built with an updated
kernel header. Fixing this error makes it work fine with old
and new headers though.

We could address problem a) by using '__u32' or 'int' members
rather than 'long', but that would have a more significant
downside in also breaking support for all existing 64-bit user
binaries that might be using this interface, which is likely
not acceptable.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Cc: linux-can@vger.kernel.org
Cc: linux-api@vger.kernel.org
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-11-05 21:36:42 +01:00
Maximilian Pachl c548eee04a slcan: added listen-only flag
Signed-off-by: Maximilian Pachl <m@ximilian.info>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-10-15 10:18:15 +02:00
Sven Schmitt 4a154cf3c4 cangen: added -b switch enabling bitrate switch in canfd frames.
Signed-off-by: Sven Schmitt <sven.schmitt@gmx.net>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-10-14 21:22:35 +02:00
Sven Schmitt 3f04e8a1fe cangen: fixed coding style
Signed-off-by: Sven Schmitt <sven.schmitt@gmx.net>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-10-14 21:21:20 +02:00
Andrew Berezovskyi 0e3ff3b315 Create README.md
Signed-off-by: Andrew Berezovskyi <andrew@berezovskiy.me>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-09-04 11:16:17 +02:00
Yegor Yefremov 636ce43cd9 autotools: fix syntax error
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2015-09-03 17:24:21 +02:00
Yegor Yefremov f0abaaacb0 Include linux/sockios.h to fix musl build
Including <sys/ioctl.h> and <net/if.h> is not sufficient
to musl to find SIOCSIFNAME, so <linux/sockios.h> must be
included too.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2015-07-22 21:12:51 +02:00
Yegor Yefremov 48a0fdb941 log2asc: include sys/time.h
Without this patch compilation against musl C library
breaks, because struct timeval cannot be found.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
2015-07-22 21:12:44 +02:00
Marc Kleine-Budde 58716c1c29 can-calc-bit-timing: add some more timings for mscan and flexcan
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-06-30 21:04:13 +02:00
Sven Schmitt f5fb7317aa treewide: use if_nametoindex to avoid overflows
replaced strcpy(if_name, argv[x]) + ioctl by if_idx = if_nametoindex(argv[x])
to avoid overflows caused by long user input.

Signed-off-by: Sven Schmitt <sven.schmitt@gmx.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-06-30 21:00:04 +02:00
Oliver Hartkopp 8af831f377 cangw: introduce uid command line option
Similar to referencing iptables rules by their line number this UID allows to
reference created routing jobs, e.g. to alter configured data modifications.

The UID is an optional non-zero value which can be provided at routing job
creation time. When the UID is set the UID replaces the data modification
configuration as job identification attribute e.g. at job removal time.

The UID option is provided by mainline Linux 4.2+

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-06-11 20:48:43 +02:00
bombilee dc374b074b add 'v' command response
add v command response. Some software like USBtinViewer using v for software version.
Tested on USBtinViewer 1.0

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-05-08 13:00:15 +02:00
Yegor Yefremov 5846246ddd canplayer: convert skipgap to unsigned long
The result of (last_log_tv.tv_sec - log_tv.tv_sec) is
unsigned long, so use labs() in order not to trim the
value to int. Make skipgap to unsigned long for the same
reason.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-04-10 21:20:58 +02:00
Oliver Hartkopp 47fbe8fec2 candump: check for joined filter support at runtime
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-04-01 12:58:27 +02:00
Oliver Hartkopp 1a2467ed29 candump: support new raw socket option to join the given CAN filters
The CAN_RAW socket can set multiple CAN identifier specific filters that lead
to multiple filters in the af_can.c filter processing. These filters are
indenpendent from each other which leads to logical OR'ed filters when applied.

This socket option joines the given CAN filters in the way that only CAN frames
are passed to user space that matched *all* given CAN filters. The semantic for
the applied filters is therefore changed to a logical AND.

This is useful especially when the filterset is a combination of filters where
the CAN_INV_FILTER flag is set in order to notch single CAN IDs or CAN ID
ranges from the incoming traffic.

Example:
	candump can0,100~7FF,200~7FF,400~7FF	(logical OR'ed filters)
	candump can0,100~7FF,200~7FF,400~7FF,J	(logical AND'ed filters)

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-03-17 20:30:54 +01:00
Yegor Yefremov 0eb1e3db2e autotools: define N_SLCAN, if not already declared
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-03-08 18:39:19 +01:00
Robert Schwebel 6fa3473c74 gitignore: add isotpperf
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-03-06 10:02:35 +01:00
Robert Schwebel b9f211319d janitorial: log2asc: properly close infile and outfile
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-03-06 10:02:35 +01:00
Robert Schwebel dfabea6120 janitorial: asc2log: properly close infile
outfile is closed as well, so do this symmetrically for infile.

Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-03-06 10:02:35 +01:00
Marc Kleine-Budde ef968b91b3 configure: switch to new libtool-2.0 macro
It's been out for a while now.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-03-04 21:09:39 +01:00
Marc Kleine-Budde 002f8eba87 isotp: fix printf warning on 32 bit systems
Use "z" modifier to print sizeof() values.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2015-03-03 08:29:36 +01:00
Oliver Hartkopp e71816295b isotpperf: print link layer data length of measured PDU
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-02-23 10:37:13 +01:00
Oliver Hartkopp 7e1b18f756 isotpperf: display bitrate setting status in summary
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-02-23 10:22:59 +01:00
Oliver Hartkopp 97f64049ac isotpperf: fix printed FC STMin value
Additionally remove the already removed -f option from the help text.

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-02-23 10:03:12 +01:00
Oliver Hartkopp c1ac5613fd can-utils: added isotpperf tool for performance measurements
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2015-02-04 10:17:38 +01:00
Jeremiah Mahler ca79909197 use line discipline number from linux/tty.h
The line discipline number is provided in include/linux/tty.h.
Use that instead of a #define in each program.

Signed-off-by: Jeremiah Mahler <jmmahler@gmail.com>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2014-12-23 18:03:09 +01:00
Jeremiah Mahler d93ef0e372 slcand: consistent use of exit(EXIT_FAILURE)
Some places used exit(1) and others used exit(EXIT_FAILURE).
Be consistent and use exit(EXIT_FAILURE) for all of these instances.

Signed-off-by: Jeremiah Mahler <jmmahler@gmail.com>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2014-12-23 18:02:52 +01:00
Jeremiah Mahler d62a9f148d slcand: remove #define EXIT_FAILURE, EXIT_SUCCESS
slcand has #defines for EXIT_FAILURE and EXIT_SUCCESS but this is
unnecessary since they are already provided by stdlib.h.  Remove them.

Signed-off-by: Jeremiah Mahler <jmmahler@gmail.com>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2014-12-23 18:02:18 +01:00
Jeremiah Mahler 86023b8640 slcand: improve usage examples
The examples in the usage of slcand use a 'ttyslcan0' device which
is an uncommon name.  Use a more common ttyUSB0 name which is seen
with CANUSB devices.  Also, add an example showing that /dev/ttyUSB0
can be use as well.

Signed-off-by: Jeremiah Mahler <jmmahler@gmail.com>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2014-12-23 18:02:03 +01:00
Andri Yngvason 7492b1c873 lib: Update error messages according to new state change handling
This patch updates the error messages for the reworked state change handling
from Andri Yngvason you find in mainline Linux 3.19+

Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
2014-12-18 14:40:42 +01:00