Lines Matching refs:hwdesc

233 	struct udma_hwdesc hwdesc[];  member
493 return d->hwdesc[idx].cppi5_desc_paddr; in udma_curr_cppi5_desc_paddr()
498 return d->hwdesc[idx].cppi5_desc_vaddr; in udma_curr_cppi5_desc_vaddr()
534 if (!d->hwdesc[i].cppi5_desc_vaddr) in udma_free_hwdesc()
538 d->hwdesc[i].cppi5_desc_vaddr, in udma_free_hwdesc()
539 d->hwdesc[i].cppi5_desc_paddr); in udma_free_hwdesc()
541 d->hwdesc[i].cppi5_desc_vaddr = NULL; in udma_free_hwdesc()
543 } else if (d->hwdesc[0].cppi5_desc_vaddr) { in udma_free_hwdesc()
544 dma_free_coherent(uc->dma_dev, d->hwdesc[0].cppi5_desc_size, in udma_free_hwdesc()
545 d->hwdesc[0].cppi5_desc_vaddr, in udma_free_hwdesc()
546 d->hwdesc[0].cppi5_desc_paddr); in udma_free_hwdesc()
548 d->hwdesc[0].cppi5_desc_vaddr = NULL; in udma_free_hwdesc()
1043 h_desc = d->hwdesc[d->desc_idx].cppi5_desc_vaddr; in udma_cyclic_packet_elapsed()
1051 struct cppi5_host_desc_t *h_desc = d->hwdesc[0].cppi5_desc_vaddr; in udma_fetch_epib()
2755 struct udma_hwdesc *hwdesc; in udma_alloc_tr_desc() local
2773 d = kzalloc(sizeof(*d) + sizeof(d->hwdesc[0]), GFP_NOWAIT); in udma_alloc_tr_desc()
2780 hwdesc = &d->hwdesc[0]; in udma_alloc_tr_desc()
2784 hwdesc->cppi5_desc_size = uc->config.hdesc_size; in udma_alloc_tr_desc()
2785 hwdesc->cppi5_desc_vaddr = dma_pool_zalloc(uc->hdesc_pool, in udma_alloc_tr_desc()
2787 &hwdesc->cppi5_desc_paddr); in udma_alloc_tr_desc()
2789 hwdesc->cppi5_desc_size = cppi5_trdesc_calc_size(tr_size, in udma_alloc_tr_desc()
2791 hwdesc->cppi5_desc_size = ALIGN(hwdesc->cppi5_desc_size, in udma_alloc_tr_desc()
2793 hwdesc->cppi5_desc_vaddr = dma_alloc_coherent(uc->ud->dev, in udma_alloc_tr_desc()
2794 hwdesc->cppi5_desc_size, in udma_alloc_tr_desc()
2795 &hwdesc->cppi5_desc_paddr, in udma_alloc_tr_desc()
2799 if (!hwdesc->cppi5_desc_vaddr) { in udma_alloc_tr_desc()
2805 hwdesc->tr_req_base = hwdesc->cppi5_desc_vaddr + tr_size; in udma_alloc_tr_desc()
2807 hwdesc->tr_resp_base = hwdesc->tr_req_base + tr_size * tr_count; in udma_alloc_tr_desc()
2809 tr_desc = hwdesc->cppi5_desc_vaddr; in udma_alloc_tr_desc()
2908 tr_req = d->hwdesc[0].tr_req_base; in udma_prep_slave_sg_tr()
3040 tr_req = d->hwdesc[0].tr_req_base; in udma_prep_slave_sg_triggered_tr()
3221 d = kzalloc(struct_size(d, hwdesc, sglen), GFP_NOWAIT); in udma_prep_slave_sg_pkt()
3239 struct udma_hwdesc *hwdesc = &d->hwdesc[i]; in udma_prep_slave_sg_pkt() local
3244 hwdesc->cppi5_desc_vaddr = dma_pool_zalloc(uc->hdesc_pool, in udma_prep_slave_sg_pkt()
3246 &hwdesc->cppi5_desc_paddr); in udma_prep_slave_sg_pkt()
3247 if (!hwdesc->cppi5_desc_vaddr) { in udma_prep_slave_sg_pkt()
3257 hwdesc->cppi5_desc_size = uc->config.hdesc_size; in udma_prep_slave_sg_pkt()
3258 desc = hwdesc->cppi5_desc_vaddr; in udma_prep_slave_sg_pkt()
3278 hwdesc->cppi5_desc_paddr | asel); in udma_prep_slave_sg_pkt()
3294 h_desc = d->hwdesc[0].cppi5_desc_vaddr; in udma_prep_slave_sg_pkt()
3318 h_desc = d->hwdesc[0].cppi5_desc_vaddr; in udma_attach_metadata()
3346 h_desc = d->hwdesc[0].cppi5_desc_vaddr; in udma_get_metadata_ptr()
3375 h_desc = d->hwdesc[0].cppi5_desc_vaddr; in udma_set_metadata_len()
3491 tr_req = d->hwdesc[0].tr_req_base; in udma_prep_dma_cyclic_tr()
3550 d = kzalloc(struct_size(d, hwdesc, periods), GFP_NOWAIT); in udma_prep_dma_cyclic_pkt()
3566 struct udma_hwdesc *hwdesc = &d->hwdesc[i]; in udma_prep_dma_cyclic_pkt() local
3570 hwdesc->cppi5_desc_vaddr = dma_pool_zalloc(uc->hdesc_pool, in udma_prep_dma_cyclic_pkt()
3572 &hwdesc->cppi5_desc_paddr); in udma_prep_dma_cyclic_pkt()
3573 if (!hwdesc->cppi5_desc_vaddr) { in udma_prep_dma_cyclic_pkt()
3582 hwdesc->cppi5_desc_size = uc->config.hdesc_size; in udma_prep_dma_cyclic_pkt()
3583 h_desc = hwdesc->cppi5_desc_vaddr; in udma_prep_dma_cyclic_pkt()
3711 tr_req = d->hwdesc[0].tr_req_base; in udma_prep_dma_memcpy()
5061 struct udma_hwdesc *hwdesc; in udma_setup_rx_flush() local
5078 hwdesc = &rx_flush->hwdescs[0]; in udma_setup_rx_flush()
5080 hwdesc->cppi5_desc_size = cppi5_trdesc_calc_size(tr_size, 1); in udma_setup_rx_flush()
5081 hwdesc->cppi5_desc_size = ALIGN(hwdesc->cppi5_desc_size, in udma_setup_rx_flush()
5084 hwdesc->cppi5_desc_vaddr = devm_kzalloc(dev, hwdesc->cppi5_desc_size, in udma_setup_rx_flush()
5086 if (!hwdesc->cppi5_desc_vaddr) in udma_setup_rx_flush()
5089 hwdesc->cppi5_desc_paddr = dma_map_single(dev, hwdesc->cppi5_desc_vaddr, in udma_setup_rx_flush()
5090 hwdesc->cppi5_desc_size, in udma_setup_rx_flush()
5092 if (dma_mapping_error(dev, hwdesc->cppi5_desc_paddr)) in udma_setup_rx_flush()
5096 hwdesc->tr_req_base = hwdesc->cppi5_desc_vaddr + tr_size; in udma_setup_rx_flush()
5098 hwdesc->tr_resp_base = hwdesc->tr_req_base + tr_size; in udma_setup_rx_flush()
5100 tr_desc = hwdesc->cppi5_desc_vaddr; in udma_setup_rx_flush()
5105 tr_req = hwdesc->tr_req_base; in udma_setup_rx_flush()
5114 dma_sync_single_for_device(dev, hwdesc->cppi5_desc_paddr, in udma_setup_rx_flush()
5115 hwdesc->cppi5_desc_size, DMA_TO_DEVICE); in udma_setup_rx_flush()
5118 hwdesc = &rx_flush->hwdescs[1]; in udma_setup_rx_flush()
5119 hwdesc->cppi5_desc_size = ALIGN(sizeof(struct cppi5_host_desc_t) + in udma_setup_rx_flush()
5124 hwdesc->cppi5_desc_vaddr = devm_kzalloc(dev, hwdesc->cppi5_desc_size, in udma_setup_rx_flush()
5126 if (!hwdesc->cppi5_desc_vaddr) in udma_setup_rx_flush()
5129 hwdesc->cppi5_desc_paddr = dma_map_single(dev, hwdesc->cppi5_desc_vaddr, in udma_setup_rx_flush()
5130 hwdesc->cppi5_desc_size, in udma_setup_rx_flush()
5132 if (dma_mapping_error(dev, hwdesc->cppi5_desc_paddr)) in udma_setup_rx_flush()
5135 desc = hwdesc->cppi5_desc_vaddr; in udma_setup_rx_flush()
5144 dma_sync_single_for_device(dev, hwdesc->cppi5_desc_paddr, in udma_setup_rx_flush()
5145 hwdesc->cppi5_desc_size, DMA_TO_DEVICE); in udma_setup_rx_flush()