Lines Matching refs:dma
3 * Common module for AVM B1 cards that support dma with AMCC
356 skb_queue_tail(&card->dma->send_queue, skb);
370 avmcard_dmainfo *dma = card->dma;
377 skb = skb_dequeue(&dma->send_queue);
385 p = dma->sendbuf.dmabuf;
396 txlen = (u8 *)p - (u8 *)dma->sendbuf.dmabuf;
410 skb_copy_from_linear_data_offset(skb, 2, dma->sendbuf.dmabuf,
415 b1dma_writel(card, dma->sendbuf.dmaaddr, AMCC_TXPTR);
450 avmcard_dmainfo *dma = card->dma;
453 void *p = dma->recvbuf.dmabuf+4;
458 printk(KERN_DEBUG "rx: 0x%x %lu\n", b1cmd, (unsigned long)dma->recvlen);
603 struct avmcard_dmainfo *dma = card->dma;
605 if (card->dma->recvlen == 0) {
608 dma->recvlen = *((u32 *)dma->recvbuf.dmabuf);
609 rxlen = (dma->recvlen + 3) & ~3;
610 b1dma_writel(card, dma->recvbuf.dmaaddr+4, AMCC_RXPTR);
621 dma->recvlen = 0;
623 b1dma_writel(card, dma->recvbuf.dmaaddr, AMCC_RXPTR);
629 if (skb_queue_empty(&card->dma->send_queue))
742 card->dma->recvlen = 0;
743 b1dma_writel(card, card->dma->recvbuf.dmaaddr, AMCC_RXPTR);
925 txoff = (dma_addr_t)b1dma_readl(card, AMCC_TXPTR)-card->dma->sendbuf.dmaaddr;
928 rxoff = (dma_addr_t)b1dma_readl(card, AMCC_RXPTR)-card->dma->recvbuf.dmaaddr;