Lines Matching refs:dma
126 dma_addr_t dma;
128 bd = dma_pool_alloc(cppi->pool, GFP_KERNEL, &dma);
129 bd->dma = dma;
149 dma_pool_free(cppi->pool, bd, bd->dma);
255 /* While dma channel is allocated, we only want the core irqs active
257 * Except for TX irqs, where dma done != fifo empty and reusable ...
261 * REVISIT same issue applies to pure PIO usage too, and non-cppi dma...
433 tag, bd->dma,
520 * existing queue, processing completed "dma buffers" (segments) on the fly.
523 * (especially in "transparent" dma). Unfortunately that model seems to be
594 musb_dbg(musb, "TX DMA%d, pktSz %d %s bds %d dma 0x%llx len %u",
623 bd->hw_next = bd->next->dma;
664 musb_writel(&tx_ram->tx_head, 0, (u32)tx->freelist->dma);
747 * cppi_next_rx_segment - dma read for the next chunk of a buffer
749 * @rx: dma channel
816 "dma 0x%llx len %u %u/%u",
843 tail->hw_next = bd->dma;
866 WARNING("rx dma%d -- no BDs? need %d\n", rx->index, n_bds);
869 WARNING("rx dma%d -- only %d of %d BDs\n", rx->index, i, n_bds);
878 * dma segment. we want one "dma packet" per dma segment, not
892 tail->hw_next = bd->dma;
903 musb_writel(&rx_ram->rx_head, 0, bd->dma);
943 * @dma_addr: dma address of buffer
1033 (unsigned long long)bd->dma, bd->hw_next, bd->hw_bufp,
1066 if (bd->dma == safe2ack) {
1070 if (bd->dma == safe2ack)
1085 /* dma abort, lost ack, or ... */
1089 if (safe2ack == 0 || safe2ack == rx->last_processed->dma)
1108 rx->last_processed->dma
1227 musb_writel(&tx_ram->tx_complete, 0, bd->dma);
1266 /* let incomplete dma segments finish */
1270 /* start another dma segment if needed */
1305 int irq = platform_get_irq_byname(pdev, "dma");
1335 if (request_irq(irq, cppi_interrupt, 0, "cppi-dma", musb)) {
1487 /* clear dma enable */
1492 /* Quiesce: wait for current dma to finish (if not cleanup).