mirror of
https://github.com/torvalds/linux.git
synced 2024-12-11 05:33:09 +00:00
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: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
d933d2beb1
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user