summaryrefslogtreecommitdiffstats
path: root/meta-ivi-common/recipes-automotive/automotive-message-broker/automotive-message-broker/0004-cansocketbcm-Fix-reading-of-frames-in-case-of-RX_TIM.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-ivi-common/recipes-automotive/automotive-message-broker/automotive-message-broker/0004-cansocketbcm-Fix-reading-of-frames-in-case-of-RX_TIM.patch')
-rw-r--r--meta-ivi-common/recipes-automotive/automotive-message-broker/automotive-message-broker/0004-cansocketbcm-Fix-reading-of-frames-in-case-of-RX_TIM.patch65
1 files changed, 0 insertions, 65 deletions
diff --git a/meta-ivi-common/recipes-automotive/automotive-message-broker/automotive-message-broker/0004-cansocketbcm-Fix-reading-of-frames-in-case-of-RX_TIM.patch b/meta-ivi-common/recipes-automotive/automotive-message-broker/automotive-message-broker/0004-cansocketbcm-Fix-reading-of-frames-in-case-of-RX_TIM.patch
deleted file mode 100644
index fda729270..000000000
--- a/meta-ivi-common/recipes-automotive/automotive-message-broker/automotive-message-broker/0004-cansocketbcm-Fix-reading-of-frames-in-case-of-RX_TIM.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From 10327a700491ba7412ce1296cb709b4d3303326f Mon Sep 17 00:00:00 2001
-From: Petr Nechaev <petr.nechaev@cogentembedded.com>
-Date: Wed, 29 Jul 2015 17:58:49 +0300
-Subject: [PATCH 4/9] cansocketbcm: Fix reading of frames in case of RX_TIMEOUT
-
-If bcms.hdr.nframes==0 we must not read any frames.
-Also, frame size can vary with the number of messages.
----
- plugins/common/cansocketbcm.cpp | 26 ++++++++++++++++++++------
- 1 file changed, 20 insertions(+), 6 deletions(-)
-
-diff --git a/plugins/common/cansocketbcm.cpp b/plugins/common/cansocketbcm.cpp
-index d923ce3..7ee663c 100644
---- a/plugins/common/cansocketbcm.cpp
-+++ b/plugins/common/cansocketbcm.cpp
-@@ -145,7 +145,7 @@ int CANSocketBCM::waitData(unsigned int timeout)
-
- /**
- * BCM header with one message.
-- * @note hdr.nframes must always be 0 or 1.
-+ * @note As a result, hdr.nframes must always be 0 or 1.
- */
- struct __attribute__ ((__packed__)) bcm_msg_one{
- struct bcm_msg_head hdr;
-@@ -190,7 +190,7 @@ CANSocket::CANSocketReadSuccess CANSocketBCM::readMessage(CANFrameInfo& message)
- switch (bcms.hdr.opcode)
- {
- case RX_CHANGED:
-- if (bcms.hdr.nframes >= 1 && nbytes == sizeof(bcms))
-+ if (bcms.hdr.nframes >= 1 && nbytes == sizeof(bcm_msg_head) + bcms.hdr.nframes*sizeof(can_frame))
- {
- if (bcms.hdr.nframes > 1)
- {
-@@ -211,10 +211,24 @@ CANSocket::CANSocketReadSuccess CANSocketBCM::readMessage(CANFrameInfo& message)
- return CANSocket::CANSocketReadSuccess::READING_FAILED;
- }
- case RX_TIMEOUT:
-- memcpy(&message.frame, &bcms.frames[0], sizeof(bcms.frames[0]));
-- message.frame.can_id = bcms.hdr.can_id; //doubtful. Do we need to override this?
-- message.status = CANFrameInfo::CANMessageStatus::TIMEOUT;
-- return CANSocket::CANSocketReadSuccess::READING_SUCCEEDED;
-+ if (bcms.hdr.nframes >= 0 && nbytes == sizeof(bcm_msg_head) + bcms.hdr.nframes*sizeof(can_frame))
-+ {
-+ if (bcms.hdr.nframes > 0)
-+ {
-+ memcpy(&message.frame, &bcms.frames[0], sizeof(bcms.frames[0]));
-+ }
-+ message.frame.can_id = bcms.hdr.can_id; //doubtful. Do we need to override this?
-+ message.status = CANFrameInfo::CANMessageStatus::TIMEOUT;
-+ return CANSocket::CANSocketReadSuccess::READING_SUCCEEDED;
-+ }
-+ else
-+ {
-+ LOG_ERROR("Unexpected data from the socket"
-+ << " " << bcms.hdr.opcode
-+ << " " << bcms.hdr.nframes
-+ << " " << nbytes);
-+ return CANSocket::CANSocketReadSuccess::READING_FAILED;
-+ }
-
- case TX_EXPIRED:
- // do nothing
---
-1.9.1
-