Lines Matching full:rflow
271 /* PKTDMA default tflow or rflow for mapped channel */
290 struct udma_rflow *rflow; member
659 ring = uc->rflow->fd_ring; in udma_push_to_ring()
699 ring = uc->rflow->r_ring; in udma_pop_from_ring()
734 ring1 = uc->rflow->fd_ring; in udma_reset_rings()
735 ring2 = uc->rflow->r_ring; in udma_reset_rings()
1306 * Attempt to request rflow by ID can be made for any rflow in __udma_get_rflow()
1319 /* GP rflow has to be allocated first */ in __udma_get_rflow()
1325 dev_dbg(ud->dev, "get rflow%d\n", id); in __udma_get_rflow()
1330 static void __udma_put_rflow(struct udma_dev *ud, struct udma_rflow *rflow) in __udma_put_rflow() argument
1332 if (!test_bit(rflow->id, ud->rflow_in_use)) { in __udma_put_rflow()
1333 dev_err(ud->dev, "attempt to put unused rflow%d\n", rflow->id); in __udma_put_rflow()
1337 dev_dbg(ud->dev, "put rflow%d\n", rflow->id); in __udma_put_rflow()
1338 clear_bit(rflow->id, ud->rflow_in_use); in __udma_put_rflow()
1541 if (uc->rflow) { in udma_get_rflow()
1542 dev_dbg(ud->dev, "chan%d: already have rflow%d allocated\n", in udma_get_rflow()
1543 uc->id, uc->rflow->id); in udma_get_rflow()
1547 uc->rflow = __udma_get_rflow(ud, flow_id); in udma_get_rflow()
1548 if (IS_ERR(uc->rflow)) { in udma_get_rflow()
1549 ret = PTR_ERR(uc->rflow); in udma_get_rflow()
1550 uc->rflow = NULL; in udma_get_rflow()
1602 if (uc->rflow) { in udma_put_rflow()
1603 dev_dbg(ud->dev, "chan%d: put rflow%d\n", uc->id, in udma_put_rflow()
1604 uc->rflow->id); in udma_put_rflow()
1605 __udma_put_rflow(ud, uc->rflow); in udma_put_rflow()
1606 uc->rflow = NULL; in udma_put_rflow()
1744 if (uc->rflow) { in udma_free_rx_resources()
1745 struct udma_rflow *rflow = uc->rflow; in udma_free_rx_resources() local
1747 k3_ringacc_ring_free(rflow->fd_ring); in udma_free_rx_resources()
1748 k3_ringacc_ring_free(rflow->r_ring); in udma_free_rx_resources()
1749 rflow->fd_ring = NULL; in udma_free_rx_resources()
1750 rflow->r_ring = NULL; in udma_free_rx_resources()
1762 struct udma_rflow *rflow; in udma_alloc_rx_resources() local
1770 /* For MEM_TO_MEM we don't need rflow or rings */ in udma_alloc_rx_resources()
1784 rflow = uc->rflow; in udma_alloc_rx_resources()
1786 fd_ring_id = ud->tflow_cnt + rflow->id; in udma_alloc_rx_resources()
1792 &rflow->fd_ring, &rflow->r_ring); in udma_alloc_rx_resources()
1817 ret = k3_ringacc_ring_cfg(rflow->fd_ring, &ring_cfg); in udma_alloc_rx_resources()
1820 ret |= k3_ringacc_ring_cfg(rflow->r_ring, &ring_cfg); in udma_alloc_rx_resources()
1828 k3_ringacc_ring_free(rflow->r_ring); in udma_alloc_rx_resources()
1829 rflow->r_ring = NULL; in udma_alloc_rx_resources()
1830 k3_ringacc_ring_free(rflow->fd_ring); in udma_alloc_rx_resources()
1831 rflow->fd_ring = NULL; in udma_alloc_rx_resources()
2042 int fd_ring = k3_ringacc_get_ring_id(uc->rflow->fd_ring); in udma_tisci_rx_channel_config()
2043 int rx_ring = k3_ringacc_get_ring_id(uc->rflow->r_ring); in udma_tisci_rx_channel_config()
2162 flow_req.flow_index = uc->rflow->id; in pktdma_tisci_rx_channel_config()
2177 dev_err(ud->dev, "flow%d config failed: %d\n", uc->rflow->id, in pktdma_tisci_rx_channel_config()
2288 irq_ring = uc->rflow->r_ring; in udma_alloc_chan_resources()
2651 irq_ring_idx = uc->rflow->id + oes->pktdma_rchan_flow; in pktdma_alloc_chan_resources()
2729 "chan%d: rchan%d, rflow%d, Remote thread: 0x%04x\n", in pktdma_alloc_chan_resources()
2730 uc->id, uc->rchan->id, uc->rflow->id, in pktdma_alloc_chan_resources()
2825 ring_id = k3_ringacc_get_ring_id(uc->rflow->r_ring); in udma_alloc_tr_desc()
3252 ring_id = k3_ringacc_get_ring_id(uc->rflow->r_ring); in udma_prep_slave_sg_pkt()
3599 ring_id = k3_ringacc_get_ring_id(uc->rflow->r_ring); in udma_prep_dma_cyclic_pkt()
4579 [RM_RANGE_RFLOW] = "ti,sci-rm-range-rflow",
4730 /* GP rflow ranges */ in udma_setup_resources()
4739 &rm_res->desc[i], "gp-rflow"); in udma_setup_resources()
5055 /* rflow ranges */ in pktdma_setup_resources()
5065 &rm_res->desc[i], "rflow"); in pktdma_setup_resources()
5169 "Channels: %d (tchan: %u, rchan: %u, gp-rflow: %u)\n", in setup_resources()
5329 seq_printf(s, "rflow%d, ", uc->rflow->id); in udma_dbg_summary_show_chan()
5607 struct udma_rflow *rflow = &ud->rflows[i]; in udma_probe() local
5609 rflow->id = i; in udma_probe()