Lines Matching refs:dma

259 	struct grcan_dma dma;  member
505 struct grcan_dma *dma = &priv->dma; in catch_up_echo_skb() local
531 dma->tx.size); in catch_up_echo_skb()
541 struct grcan_dma *dma = &priv->dma; in grcan_lost_one_shot_frame() local
562 txrd = grcan_ring_add(txrd, GRCAN_MSG_SIZE, dma->tx.size); in grcan_lost_one_shot_frame()
580 struct grcan_dma *dma = &priv->dma; in grcan_err() local
699 if (grcan_txspace(dma->tx.size, txwr, in grcan_err()
867 if (grcan_txspace(priv->dma.tx.size, txwr, priv->eskbp) && in grcan_running_reset()
929 struct grcan_dma *dma = &priv->dma; in grcan_free_dma_buffers() local
931 dma_free_coherent(&dev->dev, dma->base_size, dma->base_buf, in grcan_free_dma_buffers()
932 dma->base_handle); in grcan_free_dma_buffers()
933 memset(dma, 0, sizeof(*dma)); in grcan_free_dma_buffers()
940 struct grcan_dma *dma = &priv->dma; in grcan_allocate_dma_buffers() local
941 struct grcan_dma_buffer *large = rsize > tsize ? &dma->rx : &dma->tx; in grcan_allocate_dma_buffers()
942 struct grcan_dma_buffer *small = rsize > tsize ? &dma->tx : &dma->rx; in grcan_allocate_dma_buffers()
955 dma->base_size = lsize + ssize + GRCAN_BUFFER_ALIGNMENT; in grcan_allocate_dma_buffers()
956 dma->base_buf = dma_alloc_coherent(&dev->dev, in grcan_allocate_dma_buffers()
957 dma->base_size, in grcan_allocate_dma_buffers()
958 &dma->base_handle, in grcan_allocate_dma_buffers()
961 if (!dma->base_buf) in grcan_allocate_dma_buffers()
964 dma->tx.size = tsize; in grcan_allocate_dma_buffers()
965 dma->rx.size = rsize; in grcan_allocate_dma_buffers()
967 large->handle = ALIGN(dma->base_handle, GRCAN_BUFFER_ALIGNMENT); in grcan_allocate_dma_buffers()
969 shift = large->handle - dma->base_handle; in grcan_allocate_dma_buffers()
971 large->buf = dma->base_buf + shift; in grcan_allocate_dma_buffers()
986 grcan_write_reg(&regs->txaddr, priv->dma.tx.handle); in grcan_start()
987 grcan_write_reg(&regs->txsize, priv->dma.tx.size); in grcan_start()
990 grcan_write_reg(&regs->rxaddr, priv->dma.rx.handle); in grcan_start()
991 grcan_write_reg(&regs->rxsize, priv->dma.rx.size); in grcan_start()
1048 struct grcan_dma *dma = &priv->dma; in grcan_open() local
1060 priv->echo_skb = kzalloc(dma->tx.size * sizeof(*priv->echo_skb), in grcan_open()
1066 priv->can.echo_skb_max = dma->tx.size; in grcan_open()
1069 priv->txdlc = kzalloc(dma->tx.size * sizeof(*priv->txdlc), GFP_KERNEL); in grcan_open()
1171 struct grcan_dma *dma = &priv->dma; in grcan_receive() local
1197 slot = dma->rx.buf + rd; in grcan_receive()
1224 rd = grcan_ring_add(rd, GRCAN_MSG_SIZE, dma->rx.size); in grcan_receive()
1289 struct grcan_dma *dma = &priv->dma; in grcan_txbug_workaround() local
1310 if (grcan_txspace(dma->tx.size, txwr, priv->eskbp)) in grcan_txbug_workaround()
1356 struct grcan_dma *dma = &priv->dma; in grcan_start_xmit() local
1382 space = grcan_txspace(dma->tx.size, txwr, priv->eskbp); in grcan_start_xmit()
1385 slot = dma->tx.buf + txwr; in grcan_start_xmit()
1437 if (unlikely(grcan_ring_sub(txwr, txrd, dma->tx.size) == 1)) { in grcan_start_xmit()
1463 grcan_ring_add(txwr, GRCAN_MSG_SIZE, dma->tx.size)); in grcan_start_xmit()