Lines Matching refs:pdesc
115 struct mxs_dma_desc *pdesc; in mxs_dma_enable() local
129 pdesc = list_first_entry(&pchan->active, struct mxs_dma_desc, node); in mxs_dma_enable()
130 if (pdesc == NULL) in mxs_dma_enable()
134 if (!(pdesc->cmd.data & MXS_DMA_DESC_CHAIN)) in mxs_dma_enable()
142 pdesc = list_entry(pdesc->node.next, in mxs_dma_enable()
144 writel(mxs_dma_cmd_address(pdesc), in mxs_dma_enable()
154 writel(mxs_dma_cmd_address(pdesc), in mxs_dma_enable()
341 struct mxs_dma_desc *pdesc; in mxs_dma_desc_alloc() local
345 pdesc = memalign(MXS_DMA_ALIGNMENT, size); in mxs_dma_desc_alloc()
347 if (pdesc == NULL) in mxs_dma_desc_alloc()
350 memset(pdesc, 0, sizeof(*pdesc)); in mxs_dma_desc_alloc()
351 pdesc->address = (dma_addr_t)pdesc; in mxs_dma_desc_alloc()
353 return pdesc; in mxs_dma_desc_alloc()
359 void mxs_dma_desc_free(struct mxs_dma_desc *pdesc) in mxs_dma_desc_free() argument
361 if (pdesc == NULL) in mxs_dma_desc_free()
364 free(pdesc); in mxs_dma_desc_free()
406 int mxs_dma_desc_append(int channel, struct mxs_dma_desc *pdesc) in mxs_dma_desc_append() argument
418 pdesc->cmd.next = mxs_dma_cmd_address(pdesc); in mxs_dma_desc_append()
419 pdesc->flags |= MXS_DMA_DESC_FIRST | MXS_DMA_DESC_LAST; in mxs_dma_desc_append()
425 pdesc->flags &= ~MXS_DMA_DESC_FIRST; in mxs_dma_desc_append()
428 last->cmd.next = mxs_dma_cmd_address(pdesc); in mxs_dma_desc_append()
433 pdesc->flags |= MXS_DMA_DESC_READY; in mxs_dma_desc_append()
434 if (pdesc->flags & MXS_DMA_DESC_FIRST) in mxs_dma_desc_append()
436 list_add_tail(&pdesc->node, &pchan->active); in mxs_dma_desc_append()
438 mxs_dma_flush_desc(pdesc); in mxs_dma_desc_append()
459 struct mxs_dma_desc *pdesc; in mxs_dma_finish() local
479 pdesc = list_entry(p, struct mxs_dma_desc, node); in mxs_dma_finish()
480 pdesc->flags &= ~MXS_DMA_DESC_READY; in mxs_dma_finish()
487 if (pdesc->flags & MXS_DMA_DESC_LAST) in mxs_dma_finish()
553 void mxs_dma_circ_start(int chan, struct mxs_dma_desc *pdesc) in mxs_dma_circ_start() argument
558 mxs_dma_flush_desc(pdesc); in mxs_dma_circ_start()
562 writel(mxs_dma_cmd_address(pdesc), in mxs_dma_circ_start()