Thread (15 messages) 15 messages, 3 authors, 2012-03-06

Re: [PATCH 6/9] dmaengine: consolidate tx_status functions

flat view
DORMANTno replies

From: Russell King - ARM Linux <hidden>
Date: 2012-03-06 08:59:39
Also in: linux-arm-kernel

Revision v1 of 6 in this series.

Revisions (6)
  1. v1
  2. v1
  3. v1
  4. v1 current
  5. v2 [diff vs current]
  6. v2 [diff vs current]
On Mon, Mar 05, 2012 at 06:12:50PM -0600, H Hartley Sweeten wrote:
On Monday, March 05, 2012 1:17 PM, Russell King wrote:
quoted
diff --git a/drivers/dma/dmaengine.h b/drivers/dma/dmaengine.h
index 47e0997..244a2c5 100644
--- a/drivers/dma/dmaengine.h
+++ b/drivers/dma/dmaengine.h
@@ -45,4 +45,35 @@ static inline void dma_cookie_complete(struct dma_async_tx_descriptor *tx)
 	tx->cookie = 0;
 }
 
+/**
+ * dma_cookie_status - report cookie status
+ * @chan: dma channel
+ * @cookie: cookie we are interested in
+ * @state: dma_tx_state structure to return last/used cookies
+ *
+ * Report the status of the cookie, filling in the state structure if
+ * non-NULL.  No locking is required.
+ */
+static inline enum dma_status dma_cookie_status(struct dma_chan *chan,
+	dma_cookie_t cookie, struct dma_tx_state *state)
+{
+	dma_cookie_t used, complete;
+
+	used = chan->cookie;
+	complete = chan->complete;
+	barrier();
+	if (state) {
+		state->last = complete;
+		state->used = used;
+		state->residue = 0;
+	}
Isn't this dma_set_tx_state()?
It's more than dma_set_tx_state().  It is my intention to get rid of
dma_set_tx_state() in favour of these implementations.
quoted
+	return dma_async_is_complete(cookie, complete, used);
+}
Regards,
Hartley
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help