aboutsummaryrefslogtreecommitdiff
path: root/lib/stm32/f1
diff options
context:
space:
mode:
authorJeff Ciesielski2012-10-22 13:26:58 -0700
committerJeff Ciesielski2012-10-22 13:26:58 -0700
commitdd5e797d6187a48ed944a5f34630f200e9fc8649 (patch)
treea698de03a7aa069cb456c149ffe28c05c79b4fe9 /lib/stm32/f1
parentffe392c11bdc7c45f61c652ecabd79fecbe1938a (diff)
stm32/f1/can: Add function to detect if can system has an available mailbox
Diffstat (limited to 'lib/stm32/f1')
-rw-r--r--lib/stm32/f1/can.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/stm32/f1/can.c b/lib/stm32/f1/can.c
index 9bd23cb..2131fd1 100644
--- a/lib/stm32/f1/can.c
+++ b/lib/stm32/f1/can.c
@@ -313,3 +313,16 @@ void can_receive(u32 canport, u8 fifo, bool release, u32 *id, bool *ext,
if (release)
can_fifo_release(CAN1, 0);
}
+
+bool can_available_mailbox(u32 canport)
+{
+ if ((CAN_TSR(canport) & CAN_TSR_TME0) == CAN_TSR_TME0) {
+ return true;
+ } else if ((CAN_TSR(canport) & CAN_TSR_TME1) == CAN_TSR_TME1) {
+ return true;
+ } else if ((CAN_TSR(canport) & CAN_TSR_TME2) == CAN_TSR_TME2) {
+ return true;
+ } else {
+ return false;
+ }
+}