aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/include/can.h
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/include/can.h')
-rw-r--r--os/hal/include/can.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/os/hal/include/can.h b/os/hal/include/can.h
index 3d43e1c51..3637c64b0 100644
--- a/os/hal/include/can.h
+++ b/os/hal/include/can.h
@@ -41,6 +41,14 @@ typedef enum {
#include "can_lld.h"
+/**
+ * @brief Adds some flags to the CAN status mask.
+ *
+ * @param[in] canp pointer to the @p CANDriver object
+ * @param[in] mask flags to be added to the status mask
+ */
+#define canAddFlagsI(canp, mask) ((canp)->cd_status |= (mask))
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -50,6 +58,7 @@ extern "C" {
void canStop(CANDriver *canp);
msg_t canTransmit(CANDriver *canp, const CANFrame *cfp, systime_t timeout);
msg_t canReceive(CANDriver *canp, CANFrame *cfp, systime_t timeout);
+ canstatus_t canGetAndClearFlags(CANDriver *canp);
#if CAN_USE_SLEEP_MODE
void canSleep(CANDriver *canp);
void canWakeup(CANDriver *canp);