aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/include/mac.h
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-12-28 17:40:45 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2012-12-28 17:40:45 +0000
commit76d8262f134d41c05adda7edb27d9868ca847941 (patch)
tree799f56b1b9fe756a4c41fdd750e5caf7c2401817 /os/hal/include/mac.h
parent22dcca914b67892038958a03b527ca9df25ac916 (diff)
downloadChibiOS-76d8262f134d41c05adda7edb27d9868ca847941.tar.gz
ChibiOS-76d8262f134d41c05adda7edb27d9868ca847941.tar.bz2
ChibiOS-76d8262f134d41c05adda7edb27d9868ca847941.zip
Zero-copy API for the MAC driver.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@4984 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/include/mac.h')
-rw-r--r--os/hal/include/mac.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/os/hal/include/mac.h b/os/hal/include/mac.h
index 2903bd07c..763bc373e 100644
--- a/os/hal/include/mac.h
+++ b/os/hal/include/mac.h
@@ -45,8 +45,15 @@
/**
* @brief Enables an event sources for incoming packets.
*/
+#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
+#define MAC_USE_ZERO_COPY FALSE
+#endif
+
+/**
+ * @brief Enables an event sources for incoming packets.
+ */
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
-#define MAC_USE_EVENTS TRUE
+#define MAC_USE_EVENTS TRUE
#endif
/** @} */
@@ -102,6 +109,7 @@ typedef struct MACDriver MACDriver;
#define macGetReceiveEventSource(macp) (&(macp)->rdevent)
#endif
+#if !MAC_USE_ZERO_COPY || defined(__DOXYGEN__)
/**
* @brief Writes to a transmit descriptor's stream.
*
@@ -132,8 +140,9 @@ typedef struct MACDriver MACDriver;
*/
#define macReadReceiveDescriptor(rdp, buf, size) \
mac_lld_read_receive_descriptor(rdp, buf, size)
+#endif /* !MAC_USE_ZERO_COPY */
-#if MAC_SUPPORTS_ZERO_COPY || defined(__DOXYGEN__)
+#if MAC_USE_ZERO_COPY || defined(__DOXYGEN__)
/**
* @brief Returns a pointer to the next transmit buffer in the descriptor
* chain.
@@ -154,7 +163,7 @@ typedef struct MACDriver MACDriver;
* @api
*/
#define macGetNextTransmitBuffer(tdp, size, sizep) \
- mac_lld_get_next_transmit_buffer(tdp, bufp)
+ mac_lld_get_next_transmit_buffer(tdp, size, sizep)
/**
* @brief Returns a pointer to the next receive buffer in the descriptor
@@ -172,7 +181,7 @@ typedef struct MACDriver MACDriver;
*/
#define magGetNextReceiveBuffer(rdp, sizep) \
mac_lld_get_next_receive_buffer(rdp, sizep)
-#endif /* MAC_SUPPORTS_ZERO_COPY */
+#endif /* MAC_USE_ZERO_COPY */
/** @} */
/*===========================================================================*/