| /linux/drivers/dma/ |
| H A D | tegra20-apb-dma.c | 154 struct tegra_dma_desc *dma_desc; member 267 struct tegra_dma_desc *dma_desc; in tegra_dma_desc_get() local 273 list_for_each_entry(dma_desc, &tdc->free_dma_desc, node) { in tegra_dma_desc_get() 274 if (async_tx_test_ack(&dma_desc->txd) && !dma_desc->cb_count) { in tegra_dma_desc_get() 275 list_del(&dma_desc->node); in tegra_dma_desc_get() 277 dma_desc->txd.flags = 0; in tegra_dma_desc_get() 278 return dma_desc; in tegra_dma_desc_get() 285 dma_desc = kzalloc_obj(*dma_desc, GFP_NOWAIT); in tegra_dma_desc_get() 286 if (!dma_desc) in tegra_dma_desc_get() 289 dma_async_tx_descriptor_init(&dma_desc->txd, &tdc->dma_chan); in tegra_dma_desc_get() [all …]
|
| H A D | tegra186-gpc-dma.c | 240 struct tegra_dma_desc *dma_desc; member 478 struct tegra_dma_desc *dma_desc = tdc->dma_desc; in tegra_dma_configure_next_sg() local 483 dma_desc->sg_idx++; in tegra_dma_configure_next_sg() 486 if (dma_desc->sg_idx == dma_desc->sg_count) in tegra_dma_configure_next_sg() 487 dma_desc->sg_idx = 0; in tegra_dma_configure_next_sg() 498 ch_regs = &dma_desc->sg_req[dma_desc->sg_idx].ch_regs; in tegra_dma_configure_next_sg() 512 struct tegra_dma_desc *dma_desc = tdc->dma_desc; in tegra_dma_start() local 516 if (!dma_desc) { in tegra_dma_start() 521 dma_desc = vd_to_tegra_dma_desc(vdesc); in tegra_dma_start() 523 dma_desc->tdc = tdc; in tegra_dma_start() [all …]
|
| H A D | timb_dma.c | 145 static int td_fill_desc(struct timb_dma_chan *td_chan, u8 *dma_desc, in td_fill_desc() argument 161 dma_desc, (unsigned long long)sg_dma_address(sg)); in td_fill_desc() 163 dma_desc[7] = (sg_dma_address(sg) >> 24) & 0xff; in td_fill_desc() 164 dma_desc[6] = (sg_dma_address(sg) >> 16) & 0xff; in td_fill_desc() 165 dma_desc[5] = (sg_dma_address(sg) >> 8) & 0xff; in td_fill_desc() 166 dma_desc[4] = (sg_dma_address(sg) >> 0) & 0xff; in td_fill_desc() 168 dma_desc[3] = (sg_dma_len(sg) >> 8) & 0xff; in td_fill_desc() 169 dma_desc[2] = (sg_dma_len(sg) >> 0) & 0xff; in td_fill_desc() 171 dma_desc[1] = 0x00; in td_fill_desc() 172 dma_desc[0] = 0x21 | (last ? 0x02 : 0); /* tran, valid */ in td_fill_desc()
|
| /linux/sound/soc/bcm/ |
| H A D | bcm63xx-pcm-whistler.c | 48 struct i2s_dma_desc *dma_desc; in bcm63xx_pcm_hw_params() local 51 dma_desc = kzalloc_obj(*dma_desc, GFP_NOWAIT); in bcm63xx_pcm_hw_params() 52 if (!dma_desc) in bcm63xx_pcm_hw_params() 55 snd_soc_dai_set_dma_data(snd_soc_rtd_to_cpu(rtd, 0), substream, dma_desc); in bcm63xx_pcm_hw_params() 63 struct i2s_dma_desc *dma_desc; in bcm63xx_pcm_hw_free() local 66 dma_desc = snd_soc_dai_get_dma_data(snd_soc_rtd_to_cpu(rtd, 0), substream); in bcm63xx_pcm_hw_free() 67 kfree(dma_desc); in bcm63xx_pcm_hw_free() 144 struct i2s_dma_desc *dma_desc; in bcm63xx_pcm_prepare() local 151 dma_desc in bcm63xx_pcm_prepare() 240 struct i2s_dma_desc *dma_desc; i2s_dma_isr() local [all...] |
| /linux/drivers/net/ethernet/synopsys/ |
| H A D | dwc-xlgmac-hw.c | 29 static int xlgmac_tx_complete(struct xlgmac_dma_desc *dma_desc) in xlgmac_tx_complete() argument 31 return !XLGMAC_GET_REG_BITS_LE(dma_desc->desc3, in xlgmac_tx_complete() 708 struct xlgmac_dma_desc *dma_desc; in xlgmac_dev_xmit() local 759 dma_desc = desc_data->dma_desc; in xlgmac_dev_xmit() 769 dma_desc->desc2 = XLGMAC_SET_REG_BITS_LE( in xlgmac_dev_xmit() 770 dma_desc->desc2, in xlgmac_dev_xmit() 776 dma_desc->desc3 = XLGMAC_SET_REG_BITS_LE( in xlgmac_dev_xmit() 777 dma_desc->desc3, in xlgmac_dev_xmit() 783 dma_desc->desc3 = XLGMAC_SET_REG_BITS_LE( in xlgmac_dev_xmit() 784 dma_desc->desc3, in xlgmac_dev_xmit() [all …]
|
| H A D | dwc-xlgmac-common.c | 289 struct xlgmac_dma_desc *dma_desc; in xlgmac_dump_tx_desc() local 293 dma_desc = desc_data->dma_desc; in xlgmac_dump_tx_desc() 296 desc_data->dma_desc, &desc_data->dma_desc_addr); in xlgmac_dump_tx_desc() 300 le32_to_cpu(dma_desc->desc0), in xlgmac_dump_tx_desc() 301 le32_to_cpu(dma_desc->desc1), in xlgmac_dump_tx_desc() 302 le32_to_cpu(dma_desc->desc2), in xlgmac_dump_tx_desc() 303 le32_to_cpu(dma_desc->desc3)); in xlgmac_dump_tx_desc() 314 struct xlgmac_dma_desc *dma_desc; in xlgmac_dump_rx_desc() local 317 dma_desc = desc_data->dma_desc; in xlgmac_dump_rx_desc() 320 desc_data->dma_desc, &desc_data->dma_desc_addr); in xlgmac_dump_rx_desc() [all …]
|
| H A D | dwc-xlgmac-desc.c | 421 struct xlgmac_dma_desc *dma_desc; in xlgmac_tx_desc_init() local 433 dma_desc = ring->dma_desc_head; in xlgmac_tx_desc_init() 439 desc_data->dma_desc = dma_desc; in xlgmac_tx_desc_init() 442 dma_desc++; in xlgmac_tx_desc_init() 458 struct xlgmac_dma_desc *dma_desc; in xlgmac_rx_desc_init() local 470 dma_desc = ring->dma_desc_head; in xlgmac_rx_desc_init() 476 desc_data->dma_desc = dma_desc; in xlgmac_rx_desc_init() 482 dma_desc++; in xlgmac_rx_desc_init()
|
| H A D | dwc-xlgmac.h | 286 struct xlgmac_dma_desc *dma_desc; member 400 int (*tx_complete)(struct xlgmac_dma_desc *dma_desc); 432 int (*is_last_desc)(struct xlgmac_dma_desc *dma_desc); 433 int (*is_context_desc)(struct xlgmac_dma_desc *dma_desc);
|
| /linux/drivers/net/ethernet/stmicro/stmmac/ |
| H A D | chain_mode.c | 25 struct dma_desc *desc; in jumbo_frm() 118 struct dma_desc *p = (struct dma_desc *)des; in init_dma_chain() 120 dma_phy += sizeof(struct dma_desc); in init_dma_chain() 128 static void refill_desc3(struct stmmac_rx_queue *rx_q, struct dma_desc *p) in refill_desc3() 140 sizeof(struct dma_desc))); in refill_desc3() 143 static void clean_desc3(struct stmmac_tx_queue *tx_q, struct dma_desc *p) in clean_desc3() 157 * sizeof(struct dma_desc))); in clean_desc3()
|
| H A D | stmmac.h | 71 struct dma_desc *dma_tx; 101 struct dma_desc *desc; 102 struct dma_desc *ndesc; 107 struct dma_desc *tx_desc; 115 struct dma_desc *desc; 127 struct dma_desc *dma_rx ____cacheline_aligned_in_smp;
|
| H A D | stmmac_main.c | 373 return sizeof(struct dma_desc); in stmmac_get_tx_desc_size() 376 static struct dma_desc *stmmac_get_tx_desc(struct stmmac_priv *priv, in stmmac_get_tx_desc() 406 return sizeof(struct dma_desc); in stmmac_get_rx_desc_size() 409 static struct dma_desc *stmmac_get_rx_desc(struct stmmac_priv *priv, in stmmac_get_rx_desc() 427 u32 rx_tail_addr = rx_q->dma_rx_phy + index * sizeof(struct dma_desc); in stmmac_set_queue_rx_tail_ptr() 534 struct dma_desc *p, struct sk_buff *skb) in stmmac_get_tx_hwtstamp() 576 static void stmmac_get_rx_hwtstamp(struct stmmac_priv *priv, struct dma_desc *p, in stmmac_get_rx_hwtstamp() 577 struct dma_desc *np, struct sk_buff *skb) in stmmac_get_rx_hwtstamp() 580 struct dma_desc *desc = p; in stmmac_get_rx_hwtstamp() 1583 struct dma_desc *desc; in stmmac_clear_rx_descriptors() [all …]
|
| /linux/drivers/usb/dwc2/ |
| H A D | hcd_ddma.c | 516 struct dwc2_dma_desc *dma_desc = &qh->desc_list[idx]; in dwc2_fill_host_isoc_dma_desc() local 519 memset(dma_desc, 0, sizeof(*dma_desc)); in dwc2_fill_host_isoc_dma_desc() 527 dma_desc->buf = (u32)(qtd->urb->dma + frame_desc->offset); in dwc2_fill_host_isoc_dma_desc() 528 dma_desc->status = qh->n_bytes[idx] << HOST_DMA_ISOC_NBYTES_SHIFT & in dwc2_fill_host_isoc_dma_desc() 532 dma_desc->status |= HOST_DMA_A; in dwc2_fill_host_isoc_dma_desc() 540 dma_desc->status |= HOST_DMA_IOC; in dwc2_fill_host_isoc_dma_desc() 664 struct dwc2_dma_desc *dma_desc = &qh->desc_list[n_desc]; in dwc2_fill_host_dma_desc() local 684 dma_desc->status = len << HOST_DMA_NBYTES_SHIFT & HOST_DMA_NBYTES_MASK; in dwc2_fill_host_dma_desc() 689 dma_desc->status |= HOST_DMA_SUP; in dwc2_fill_host_dma_desc() 691 dma_desc->buf = (u32)chan->xfer_dma; in dwc2_fill_host_dma_desc() [all …]
|
| /linux/drivers/soc/tegra/fuse/ |
| H A D | fuse-tegra20.c | 45 struct dma_async_tx_descriptor *dma_desc; in tegra20_fuse_read() local 62 dma_desc = dmaengine_prep_slave_single(fuse->apbdma.chan, in tegra20_fuse_read() 66 if (!dma_desc) in tegra20_fuse_read() 69 dma_desc->callback = apb_dma_complete; in tegra20_fuse_read() 70 dma_desc->callback_param = fuse; in tegra20_fuse_read() 74 dmaengine_submit(dma_desc); in tegra20_fuse_read()
|
| /linux/drivers/comedi/drivers/ |
| H A D | gsc_hpdi.c | 125 struct plx_dma_desc *dma_desc; member 154 start = le32_to_cpu(devpriv->dma_desc[idx].pci_start_addr); in gsc_hpdi_drain_dma() 169 start = le32_to_cpu(devpriv->dma_desc[idx].pci_start_addr); in gsc_hpdi_drain_dma() 428 devpriv->dma_desc[i].pci_start_addr = in gsc_hpdi_setup_dma_descriptors() 430 devpriv->dma_desc[i].local_start_addr = cpu_to_le32(FIFO_REG); in gsc_hpdi_setup_dma_descriptors() 431 devpriv->dma_desc[i].transfer_size = cpu_to_le32(len); in gsc_hpdi_setup_dma_descriptors() 432 devpriv->dma_desc[i].next = cpu_to_le32((phys_addr + in gsc_hpdi_setup_dma_descriptors() 433 (i + 1) * sizeof(devpriv->dma_desc[0])) | next_bits); in gsc_hpdi_setup_dma_descriptors() 446 devpriv->dma_desc[i - 1].next = cpu_to_le32(phys_addr | next_bits); in gsc_hpdi_setup_dma_descriptors() 496 if (devpriv->dma_desc) in gsc_hpdi_free_dma() [all …]
|
| /linux/drivers/mtd/nand/ |
| H A D | qpic_common.c | 157 struct dma_async_tx_descriptor *dma_desc; in qcom_prepare_bam_async_desc() local 194 dma_desc = dmaengine_prep_slave_sg(chan, sgl, sgl_cnt, dir_eng, in qcom_prepare_bam_async_desc() 197 if (!dma_desc) { in qcom_prepare_bam_async_desc() 204 desc->dma_desc = dma_desc; in qcom_prepare_bam_async_desc() 208 bam_txn->last_cmd_desc = dma_desc; in qcom_prepare_bam_async_desc() 210 bam_txn->last_data_desc = dma_desc; in qcom_prepare_bam_async_desc() 360 struct dma_async_tx_descriptor *dma_desc; in qcom_prep_adm_dma_desc() local 414 dma_desc = dmaengine_prep_slave_sg(nandc->chan, sgl, 1, dir_eng, 0); in qcom_prep_adm_dma_desc() 415 if (!dma_desc) { in qcom_prep_adm_dma_desc() 421 desc->dma_desc = dma_desc; in qcom_prep_adm_dma_desc() [all …]
|
| /linux/drivers/usb/musb/ |
| H A D | musb_cppi41.c | 149 struct dma_async_tx_descriptor *dma_desc; in cppi41_trans_done() local 162 dma_desc = dmaengine_prep_slave_single(dc, in cppi41_trans_done() 167 if (WARN_ON(!dma_desc)) in cppi41_trans_done() 170 dma_desc->callback_result = cppi41_dma_callback; in cppi41_trans_done() 171 dma_desc->callback_param = &cppi41_channel->channel; in cppi41_trans_done() 172 cppi41_channel->cookie = dma_desc->tx_submit(dma_desc); in cppi41_trans_done() 418 struct dma_async_tx_descriptor *dma_desc; in cppi41_configure_channel() local 465 dma_desc = dmaengine_prep_slave_single(dc, dma_addr, len, direction, in cppi41_configure_channel() 467 if (!dma_desc) in cppi41_configure_channel() 470 dma_desc->callback_result = cppi41_dma_callback; in cppi41_configure_channel() [all …]
|
| H A D | ux500_dma.c | 77 struct dma_async_tx_descriptor *dma_desc; in ux500_configure_channel() local 114 dma_desc = dmaengine_prep_slave_sg(dma_chan, &sg, 1, direction, in ux500_configure_channel() 116 if (!dma_desc) in ux500_configure_channel() 119 dma_desc->callback = ux500_dma_callback; in ux500_configure_channel() 120 dma_desc->callback_param = channel; in ux500_configure_channel() 121 ux500_channel->cookie = dma_desc->tx_submit(dma_desc); in ux500_configure_channel()
|
| H A D | tusb6010_omap.c | 196 struct dma_async_tx_descriptor *dma_desc; in tusb_omap_dma_program() local 303 dma_desc = dmaengine_prep_slave_single(dma_data->chan, dma_addr, in tusb_omap_dma_program() 306 if (!dma_desc) { in tusb_omap_dma_program() 311 dma_desc->callback = tusb_omap_dma_cb; in tusb_omap_dma_program() 312 dma_desc->callback_param = channel; in tusb_omap_dma_program() 313 dmaengine_submit(dma_desc); in tusb_omap_dma_program()
|
| /linux/arch/mips/include/asm/mach-rc32434/ |
| H A D | dma.h | 23 struct dma_desc { struct 30 #define DMA_DESC_SIZ sizeof(struct dma_desc) argument
|
| /linux/drivers/video/fbdev/ |
| H A D | pxafb.c | 1054 struct pxafb_dma_descriptor *dma_desc, *pal_desc; in setup_frame_dma() local 1060 dma_desc = &fbi->dma_buff->dma_desc[dma]; in setup_frame_dma() 1061 dma_desc_off = offsetof(struct pxafb_dma_buff, dma_desc[dma]); in setup_frame_dma() 1063 dma_desc->fsadr = start; in setup_frame_dma() 1064 dma_desc->fidr = 0; in setup_frame_dma() 1065 dma_desc->ldcmd = size; in setup_frame_dma() 1068 dma_desc->fdadr = fbi->dma_buff_phys + dma_desc_off; in setup_frame_dma() 1086 dma_desc->fdadr = fbi->dma_buff_phys + pal_desc_off; in setup_frame_dma() 1118 struct pxafb_dma_descriptor *dma_desc; in setup_smart_dma() local 1121 dma_desc = &fbi->dma_buff->dma_desc[DMA_CMD]; in setup_smart_dma() [all …]
|
| /linux/drivers/net/ethernet/ |
| H A D | korina.c | 249 struct dma_desc { struct 319 #define RD_RING_SIZE (KORINA_NUM_RDS * sizeof(struct dma_desc)) 320 #define TD_RING_SIZE (KORINA_NUM_TDS * sizeof(struct dma_desc)) 339 struct dma_desc *td_ring; /* transmit descriptor ring */ 340 struct dma_desc *rd_ring; /* receive descriptor ring */ 380 return lp->td_dma + (idx * sizeof(struct dma_desc)); in korina_tx_dma() 385 return lp->rd_dma + (idx * sizeof(struct dma_desc)); in korina_rx_dma() 425 struct dma_desc *td; in korina_send_packet() 599 struct dma_desc *rd = &lp->rd_ring[lp->rx_next_done]; in korina_rx() 767 struct dma_desc *td = &lp->td_ring[lp->tx_next_done]; in korina_tx()
|
| /linux/drivers/mmc/host/ |
| H A D | bcm2835.c | 186 struct dma_async_tx_descriptor *dma_desc; member 513 host->dma_desc = desc; in bcm2835_prepare_dma() 520 dmaengine_submit(host->dma_desc); in bcm2835_start_dma() 529 if (host->dma_desc) { in bcm2835_set_transfer_irqs() 555 if (!host->dma_desc) { in bcm2835_prepare_data() 605 host->dma_desc = NULL; in bcm2835_finish_request() 801 if (host->data && host->dma_desc) in bcm2835_finish_command() 960 if (!host->dma_desc) { in bcm2835_block_irq() 1215 if (host->data && host->dma_desc) { in bcm2835_request() 1403 host->dma_desc = NULL; in bcm2835_probe()
|
| /linux/drivers/net/ethernet/broadcom/ |
| H A D | b44.h | 244 struct dma_desc { struct 363 struct dma_desc *rx_ring, *tx_ring;
|
| H A D | b44.c | 67 #define B44_RX_RING_BYTES (sizeof(struct dma_desc) * \ 71 #define B44_TX_RING_BYTES (sizeof(struct dma_desc) * \ 598 cur /= sizeof(struct dma_desc); in b44_tx() 635 struct dma_desc *dp; in b44_alloc_rx_skb() 710 struct dma_desc *src_desc, *dest_desc; in b44_recycle_rx() 761 prod /= sizeof(struct dma_desc); in b44_rx() 836 bw32(bp, B44_DMARX_PTR, cons * sizeof(struct dma_desc)); in b44_rx() 1017 bw32(bp, B44_DMATX_PTR, entry * sizeof(struct dma_desc)); in b44_start_xmit() 1019 bw32(bp, B44_DMATX_PTR, entry * sizeof(struct dma_desc)); in b44_start_xmit() 1186 struct dma_desc *rx_ring; in b44_alloc_consistent() [all …]
|
| /linux/drivers/net/ethernet/samsung/sxgbe/ |
| H A D | sxgbe_main.c | 613 int dma_desc; in tx_free_ring_skbufs() local 617 for (dma_desc = 0; dma_desc < tx_rsize; dma_desc++) { in tx_free_ring_skbufs() 618 struct sxgbe_tx_norm_desc *tdesc = txqueue->dma_tx + dma_desc; in tx_free_ring_skbufs() 620 if (txqueue->tx_skbuff_dma[dma_desc]) in tx_free_ring_skbufs() 622 txqueue->tx_skbuff_dma[dma_desc], in tx_free_ring_skbufs() 626 dev_kfree_skb_any(txqueue->tx_skbuff[dma_desc]); in tx_free_ring_skbufs() 627 txqueue->tx_skbuff[dma_desc] = NULL; in tx_free_ring_skbufs() 628 txqueue->tx_skbuff_dma[dma_desc] = 0; in tx_free_ring_skbufs()
|