You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
/// Extra, unfilled Tx descs to leave in the DMA ring at all times.
43
+
/// This is used to support Eth MACs that don't allow enqueuing every single descriptor at a time.
44
+
constsize_t extraTxDescsToLeave;
45
+
42
46
/// Pointer to first memory buffer in the chain associated with descriptor n.
43
47
/// The buffer address shall only be set for the *last* descriptor, so that the entire chain is freed
44
48
/// when the last descriptor is returned.
@@ -55,6 +59,11 @@ namespace mbed {
55
59
std::atomic<size_t> txDescsOwnedByApplication; ///< Number of Tx descriptors owned by the application. Decremented by txPacket() and incremented by reclaimTxDescs()
56
60
size_t txReclaimIndex; ///< Index of the next Tx descriptor that will be reclaimed by the mac thread calling reclaimTxDescs().
57
61
62
+
/// Construct, passing a value for extraTxDescsToLeave
63
+
GenericTxDMARing(size_t extraTxDescsToLeave = 0):
64
+
extraTxDescsToLeave(extraTxDescsToLeave)
65
+
{}
66
+
58
67
/// Configure DMA registers to point to the DMA ring,
59
68
/// and enable DMA. This is done before the MAC itself is enabled.
0 commit comments