[PATCH v4] dma: ti: k3-udma: Use ring_idx to pair k3 nav rings
Ravi Gunasekaran
r-gunasekaran at ti.com
Fri Feb 2 06:01:19 CET 2024
On 1/30/2024 11:48 AM, MD Danish Anwar wrote:
> Use ring_idx to pair rings. ring_idx will be same as tx flow_id for all
> non-negative flow_ids. For negative flow_ids, ring_idx will be tchan->id
> added with bchan_cnt.
>
> Signed-off-by: MD Danish Anwar <danishanwar at ti.com>
> ---
> Changes from v3 to v4:
> *) No functional change. Splitted the patch out of the series as suggested
> by Nishant.
>
> v3: https://lore.kernel.org/all/20240124064930.1787929-2-danishanwar@ti.com/
>
> drivers/dma/ti/k3-udma.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/dma/ti/k3-udma.c b/drivers/dma/ti/k3-udma.c
> index 8a62d63dfe..eea9ec9659 100644
> --- a/drivers/dma/ti/k3-udma.c
> +++ b/drivers/dma/ti/k3-udma.c
> @@ -876,13 +876,20 @@ static int udma_alloc_tx_resources(struct udma_chan *uc)
> {
> struct k3_nav_ring_cfg ring_cfg;
> struct udma_dev *ud = uc->ud;
> - int ret;
> + struct udma_tchan *tchan;
> + int ring_idx, ret;
>
> ret = udma_get_tchan(uc);
> if (ret)
> return ret;
>
> - ret = k3_nav_ringacc_request_rings_pair(ud->ringacc, uc->tchan->id, -1,
> + tchan = uc->tchan;
> + if (tchan->tflow_id >= 0)
> + ring_idx = tchan->tflow_id;
> + else
> + ring_idx = ud->bchan_cnt + tchan->id;
> +
> + ret = k3_nav_ringacc_request_rings_pair(ud->ringacc, ring_idx, -1,
> &uc->tchan->t_ring,
> &uc->tchan->tc_ring);
> if (ret) {
I see this change present in upstream linux kernel as well.
You could consider providing the link to kernel if such changes are already
merged there.
Reviewed-by: Ravi Gunasekaran <r-gunasekaran at ti.com>
More information about the U-Boot
mailing list