Lines Matching refs:mdesc
271 struct mpc_dma_desc *mdesc; in mpc_dma_execute() local
275 mdesc = list_first_entry(&mchan->queued, in mpc_dma_execute()
283 if (mdesc->will_access_peripheral) { in mpc_dma_execute()
285 list_move_tail(&mdesc->node, &mchan->active); in mpc_dma_execute()
288 list_move_tail(&mdesc->node, &mchan->active); in mpc_dma_execute()
293 list_for_each_entry(mdesc, &mchan->active, node) { in mpc_dma_execute()
295 first = mdesc; in mpc_dma_execute()
298 prev = mdesc; in mpc_dma_execute()
302 prev->tcd->dlast_sga = mdesc->tcd_paddr; in mpc_dma_execute()
304 mdesc->tcd->start = 1; in mpc_dma_execute()
306 prev = mdesc; in mpc_dma_execute()
333 struct mpc_dma_desc *mdesc; in mpc_dma_irq_process() local
348 list_for_each_entry(mdesc, &mchan->active, node) in mpc_dma_irq_process()
349 mdesc->error = -EIO; in mpc_dma_irq_process()
392 struct mpc_dma_desc *mdesc; in mpc_dma_process_completed() local
411 list_for_each_entry(mdesc, &list, node) { in mpc_dma_process_completed()
412 desc = &mdesc->desc; in mpc_dma_process_completed()
475 struct mpc_dma_desc *mdesc; in mpc_dma_tx_submit() local
479 mdesc = container_of(txd, struct mpc_dma_desc, desc); in mpc_dma_tx_submit()
484 list_move_tail(&mdesc->node, &mchan->queued); in mpc_dma_tx_submit()
502 struct mpc_dma_desc *mdesc; in mpc_dma_alloc_chan_resources() local
518 mdesc = kzalloc(sizeof(struct mpc_dma_desc), GFP_KERNEL); in mpc_dma_alloc_chan_resources()
519 if (!mdesc) { in mpc_dma_alloc_chan_resources()
525 dma_async_tx_descriptor_init(&mdesc->desc, chan); in mpc_dma_alloc_chan_resources()
526 mdesc->desc.flags = DMA_CTRL_ACK; in mpc_dma_alloc_chan_resources()
527 mdesc->desc.tx_submit = mpc_dma_tx_submit; in mpc_dma_alloc_chan_resources()
529 mdesc->tcd = &tcd[i]; in mpc_dma_alloc_chan_resources()
530 mdesc->tcd_paddr = tcd_paddr + (i * sizeof(struct mpc_dma_tcd)); in mpc_dma_alloc_chan_resources()
532 list_add_tail(&mdesc->node, &descs); in mpc_dma_alloc_chan_resources()
560 struct mpc_dma_desc *mdesc, *tmp; in mpc_dma_free_chan_resources() local
587 list_for_each_entry_safe(mdesc, tmp, &descs, node) in mpc_dma_free_chan_resources()
588 kfree(mdesc); in mpc_dma_free_chan_resources()
618 struct mpc_dma_desc *mdesc = NULL; in mpc_dma_prep_memcpy() local
625 mdesc = list_first_entry(&mchan->free, struct mpc_dma_desc, in mpc_dma_prep_memcpy()
627 list_del(&mdesc->node); in mpc_dma_prep_memcpy()
631 if (!mdesc) { in mpc_dma_prep_memcpy()
637 mdesc->error = 0; in mpc_dma_prep_memcpy()
638 mdesc->will_access_peripheral = 0; in mpc_dma_prep_memcpy()
639 tcd = mdesc->tcd; in mpc_dma_prep_memcpy()
680 list_add_tail(&mdesc->node, &mchan->prepared); in mpc_dma_prep_memcpy()
683 return &mdesc->desc; in mpc_dma_prep_memcpy()
702 struct mpc_dma_desc *mdesc = NULL; in mpc_dma_prep_slave_sg() local
721 mdesc = list_first_entry(&mchan->free, in mpc_dma_prep_slave_sg()
723 if (!mdesc) { in mpc_dma_prep_slave_sg()
730 list_del(&mdesc->node); in mpc_dma_prep_slave_sg()
745 mdesc->error = 0; in mpc_dma_prep_slave_sg()
746 mdesc->will_access_peripheral = 1; in mpc_dma_prep_slave_sg()
749 tcd = mdesc->tcd; in mpc_dma_prep_slave_sg()
807 list_add_tail(&mdesc->node, &mchan->prepared); in mpc_dma_prep_slave_sg()
811 return &mdesc->desc; in mpc_dma_prep_slave_sg()
816 list_add_tail(&mdesc->node, &mchan->free); in mpc_dma_prep_slave_sg()