Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d933d2be authored by David S. Miller's avatar David S. Miller
Browse files

Merge branch 'fixes-for-3.6' of git://gitorious.org/linux-can/linux-can



Marc Kleine-Budde says:

====================
here's a fix intended for the v3.6 release cycle. Oliver noticed and
fixed that the flags definition for the new canfd_frame contains
redundant and confusing information.
====================

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parents 99aa3473 035534ed
Loading
Loading
Loading
Loading
+13 −12
Original line number Diff line number Diff line
@@ -74,20 +74,21 @@ struct can_frame {
/*
 * defined bits for canfd_frame.flags
 *
 * As the default for CAN FD should be to support the high data rate in the
 * payload section of the frame (HDR) and to support up to 64 byte in the
 * data section (EDL) the bits are only set in the non-default case.
 * Btw. as long as there's no real implementation for CAN FD network driver
 * these bits are only preliminary.
 * The use of struct canfd_frame implies the Extended Data Length (EDL) bit to
 * be set in the CAN frame bitstream on the wire. The EDL bit switch turns
 * the CAN controllers bitstream processor into the CAN FD mode which creates
 * two new options within the CAN FD frame specification:
 *
 * RX: NOHDR/NOEDL - info about received CAN FD frame
 *     ESI         - bit from originating CAN controller
 * TX: NOHDR/NOEDL - control per-frame settings if supported by CAN controller
 *     ESI         - bit is set by local CAN controller
 * Bit Rate Switch - to indicate a second bitrate is/was used for the payload
 * Error State Indicator - represents the error state of the transmitting node
 *
 * As the CANFD_ESI bit is internally generated by the transmitting CAN
 * controller only the CANFD_BRS bit is relevant for real CAN controllers when
 * building a CAN FD frame for transmission. Setting the CANFD_ESI bit can make
 * sense for virtual CAN interfaces to test applications with echoed frames.
 */
#define CANFD_NOHDR 0x01 /* frame without high data rate */
#define CANFD_NOEDL 0x02 /* frame without extended data length */
#define CANFD_ESI   0x04 /* error state indicator */
#define CANFD_BRS 0x01 /* bit rate switch (second bitrate for payload data) */
#define CANFD_ESI 0x02 /* error state indicator of the transmitting node */

/**
 * struct canfd_frame - CAN flexible data rate frame structure