mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] dmaengine: ti: k3-udma: Fix BCHAN count with UHC and HC channels
@ 2024-06-04  9:51 Jai Luthra
  2024-06-06 17:40 ` Péter Ujfalusi
  0 siblings, 1 reply; 2+ messages in thread
From: Jai Luthra @ 2024-06-04  9:51 UTC (permalink / raw)
  To: Peter Ujfalusi, Vinod Koul
  Cc: dmaengine, linux-kernel, linux-arm-kernel, Devarsh Thakkar,
	Jayesh Choudhary, Vignesh Raghavendra, Jai Luthra

From: Vignesh Raghavendra <vigneshr@ti.com>

Unlike other channel counts in CAPx registers, BCDMA BCHAN CNT doesn't
include UHC and HC BC channels. So include them explicitly to arrive at
total BC channel in the instance.

Fixes: 017794739702 ("dmaengine: ti: k3-udma: Initial support for K3 BCDMA")
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Jai Luthra <j-luthra@ti.com>
---
 drivers/dma/ti/k3-udma.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/dma/ti/k3-udma.c b/drivers/dma/ti/k3-udma.c
index 6400d06588a2..710296dfd0ae 100644
--- a/drivers/dma/ti/k3-udma.c
+++ b/drivers/dma/ti/k3-udma.c
@@ -4473,6 +4473,7 @@ static int udma_get_mmrs(struct platform_device *pdev, struct udma_dev *ud)
 		break;
 	case DMA_TYPE_BCDMA:
 		ud->bchan_cnt = BCDMA_CAP2_BCHAN_CNT(cap2);
+		ud->bchan_cnt += BCDMA_CAP3_HBCHAN_CNT(cap3) + BCDMA_CAP3_UBCHAN_CNT(cap3);
 		ud->tchan_cnt = BCDMA_CAP2_TCHAN_CNT(cap2);
 		ud->rchan_cnt = BCDMA_CAP2_RCHAN_CNT(cap2);
 		ud->rflow_cnt = ud->rchan_cnt;

---
base-commit: d97496ca23a2d4ee80b7302849404859d9058bcd
change-id: 20240604-bcdma_chan_cnt-bbc6c0c95259

Best regards,
-- 
Jai Luthra <j-luthra@ti.com>


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] dmaengine: ti: k3-udma: Fix BCHAN count with UHC and HC channels
  2024-06-04  9:51 [PATCH] dmaengine: ti: k3-udma: Fix BCHAN count with UHC and HC channels Jai Luthra
@ 2024-06-06 17:40 ` Péter Ujfalusi
  0 siblings, 0 replies; 2+ messages in thread
From: Péter Ujfalusi @ 2024-06-06 17:40 UTC (permalink / raw)
  To: Jai Luthra, Vinod Koul
  Cc: dmaengine, linux-kernel, linux-arm-kernel, Devarsh Thakkar,
	Jayesh Choudhary, Vignesh Raghavendra



On 6/4/24 12:51 PM, Jai Luthra wrote:
> From: Vignesh Raghavendra <vigneshr@ti.com>
> 
> Unlike other channel counts in CAPx registers, BCDMA BCHAN CNT doesn't
> include UHC and HC BC channels.

Oh, it does not?
Back at the time of 017794739702 there were no devices with H/U BCHAN...

> So include them explicitly to arrive at
> total BC channel in the instance.
> 
> Fixes: 017794739702 ("dmaengine: ti: k3-udma: Initial support for K3 BCDMA")
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> Signed-off-by: Jai Luthra <j-luthra@ti.com>
> ---
>  drivers/dma/ti/k3-udma.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/dma/ti/k3-udma.c b/drivers/dma/ti/k3-udma.c
> index 6400d06588a2..710296dfd0ae 100644
> --- a/drivers/dma/ti/k3-udma.c
> +++ b/drivers/dma/ti/k3-udma.c
> @@ -4473,6 +4473,7 @@ static int udma_get_mmrs(struct platform_device *pdev, struct udma_dev *ud)
>  		break;
>  	case DMA_TYPE_BCDMA:
>  		ud->bchan_cnt = BCDMA_CAP2_BCHAN_CNT(cap2);
> +		ud->bchan_cnt += BCDMA_CAP3_HBCHAN_CNT(cap3) + BCDMA_CAP3_UBCHAN_CNT(cap3);

I would add them in a single operation. Easier for the eye:
ud->bchan_cnt = BCDMA_CAP2_BCHAN_CNT(cap2) + BCDMA_CAP3_HBCHAN_CNT(cap3) +
		BCDMA_CAP3_UBCHAN_CNT(cap3);

>  		ud->tchan_cnt = BCDMA_CAP2_TCHAN_CNT(cap2);
>  		ud->rchan_cnt = BCDMA_CAP2_RCHAN_CNT(cap2);
>  		ud->rflow_cnt = ud->rchan_cnt;
> 
> ---
> base-commit: d97496ca23a2d4ee80b7302849404859d9058bcd
> change-id: 20240604-bcdma_chan_cnt-bbc6c0c95259
> 
> Best regards,

-- 
Péter

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-06-06 17:36 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-04  9:51 [PATCH] dmaengine: ti: k3-udma: Fix BCHAN count with UHC and HC channels Jai Luthra
2024-06-06 17:40 ` Péter Ujfalusi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®