Lines Matching refs:chan

79 	struct dma_chan		chan;  member
102 static struct device *chan2dev(struct dma_chan *chan) in chan2dev() argument
104 return &chan->dev->device; in chan2dev()
106 static struct device *chan2dmadev(struct dma_chan *chan) in chan2dmadev() argument
108 return chan2dev(chan)->parent->parent; in chan2dmadev()
113 int id = td_chan->chan.chan_id; in tdchantotd()
121 int id = td_chan->chan.chan_id; in __td_enable_chan_irq()
128 dev_dbg(chan2dev(&td_chan->chan), "Enabling irq: %d, IER: 0x%x\n", id, in __td_enable_chan_irq()
136 int id = td_chan->chan.chan_id; in __td_dma_done_ack()
142 dev_dbg(chan2dev(&td_chan->chan), "Checking irq: %d, td: %p\n", id, td); in __td_dma_done_ack()
157 dev_err(chan2dev(&td_chan->chan), "Too big sg element\n"); in td_fill_desc()
163 dev_err(chan2dev(&td_chan->chan), "Incorrect length: %d\n", in td_fill_desc()
168 dev_dbg(chan2dev(&td_chan->chan), "desc: %p, addr: 0x%llx\n", in td_fill_desc()
191 dev_err(chan2dev(&td_chan->chan), in __td_start_dma()
199 dev_dbg(chan2dev(&td_chan->chan), in __td_start_dma()
201 td_chan, td_chan->chan.chan_id, td_chan->membase); in __td_start_dma()
242 dev_dbg(chan2dev(&td_chan->chan), "descriptor %u complete\n", in __td_finish()
298 dev_dbg(chan2dev(&td_chan->chan), "%s: started %u\n", in __td_start_next()
309 struct timb_dma_chan *td_chan = container_of(txd->chan, in td_tx_submit()
310 struct timb_dma_chan, chan); in td_tx_submit()
317 dev_dbg(chan2dev(txd->chan), "%s: started %u\n", __func__, in td_tx_submit()
322 dev_dbg(chan2dev(txd->chan), "tx_submit: queued %u\n", in td_tx_submit()
335 struct dma_chan *chan = &td_chan->chan; in td_alloc_init_desc() local
341 dev_err(chan2dev(chan), "Failed to alloc descriptor\n"); in td_alloc_init_desc()
349 dev_err(chan2dev(chan), "Failed to alloc descriptor\n"); in td_alloc_init_desc()
353 dma_async_tx_descriptor_init(&td_desc->txd, chan); in td_alloc_init_desc()
357 td_desc->txd.phys = dma_map_single(chan2dmadev(chan), in td_alloc_init_desc()
360 err = dma_mapping_error(chan2dmadev(chan), td_desc->txd.phys); in td_alloc_init_desc()
362 dev_err(chan2dev(chan), "DMA mapping error: %d\n", err); in td_alloc_init_desc()
377 dev_dbg(chan2dev(td_desc->txd.chan), "Freeing desc: %p\n", td_desc); in td_free_desc()
378 dma_unmap_single(chan2dmadev(td_desc->txd.chan), td_desc->txd.phys, in td_free_desc()
388 dev_dbg(chan2dev(&td_chan->chan), "Putting desc: %p\n", td_desc); in td_desc_put()
408 dev_dbg(chan2dev(&td_chan->chan), "desc %p not ACKed\n", in td_desc_get()
416 static int td_alloc_chan_resources(struct dma_chan *chan) in td_alloc_chan_resources() argument
419 container_of(chan, struct timb_dma_chan, chan); in td_alloc_chan_resources()
422 dev_dbg(chan2dev(chan), "%s: entry\n", __func__); in td_alloc_chan_resources()
431 dev_err(chan2dev(chan), in td_alloc_chan_resources()
441 dma_cookie_init(chan); in td_alloc_chan_resources()
447 static void td_free_chan_resources(struct dma_chan *chan) in td_free_chan_resources() argument
450 container_of(chan, struct timb_dma_chan, chan); in td_free_chan_resources()
454 dev_dbg(chan2dev(chan), "%s: Entry\n", __func__); in td_free_chan_resources()
465 dev_dbg(chan2dev(chan), "%s: Freeing desc: %p\n", __func__, in td_free_chan_resources()
471 static enum dma_status td_tx_status(struct dma_chan *chan, dma_cookie_t cookie, in td_tx_status() argument
476 dev_dbg(chan2dev(chan), "%s: Entry\n", __func__); in td_tx_status()
478 ret = dma_cookie_status(chan, cookie, txstate); in td_tx_status()
480 dev_dbg(chan2dev(chan), "%s: exit, ret: %d\n", __func__, ret); in td_tx_status()
485 static void td_issue_pending(struct dma_chan *chan) in td_issue_pending() argument
488 container_of(chan, struct timb_dma_chan, chan); in td_issue_pending()
490 dev_dbg(chan2dev(chan), "%s: Entry\n", __func__); in td_issue_pending()
504 static struct dma_async_tx_descriptor *td_prep_slave_sg(struct dma_chan *chan, in td_prep_slave_sg() argument
510 container_of(chan, struct timb_dma_chan, chan); in td_prep_slave_sg()
517 dev_err(chan2dev(chan), "%s: No SG list\n", __func__); in td_prep_slave_sg()
523 dev_err(chan2dev(chan), in td_prep_slave_sg()
530 dev_err(chan2dev(chan), "Not enough descriptors available\n"); in td_prep_slave_sg()
539 dev_err(chan2dev(chan), "No descriptor space\n"); in td_prep_slave_sg()
546 dev_err(chan2dev(chan), "Failed to update desc: %d\n", in td_prep_slave_sg()
554 dma_sync_single_for_device(chan2dmadev(chan), td_desc->txd.phys, in td_prep_slave_sg()
560 static int td_terminate_all(struct dma_chan *chan) in td_terminate_all() argument
563 container_of(chan, struct timb_dma_chan, chan); in td_terminate_all()
566 dev_dbg(chan2dev(chan), "%s: Entry\n", __func__); in td_terminate_all()
710 td_chan->chan.device = &td->dma; in td_probe()
711 dma_cookie_init(&td_chan->chan); in td_probe()
730 list_add_tail(&td_chan->chan.device_node, &td->dma.channels); in td_probe()