dmaengine: zynqmp_dma: Sync DMA and coherent masks

Message ID 20230316093318.6722-1-harini.katakam@amd.com
State New
Headers
Series dmaengine: zynqmp_dma: Sync DMA and coherent masks |

Commit Message

Harini Katakam March 16, 2023, 9:33 a.m. UTC
  Align ZDMA DMA as well as coherent memory masks to 44 bit. This is
required when using >32 bit memory regions.

Signed-off-by: Harini Katakam <harini.katakam@amd.com>
---
 drivers/dma/xilinx/zynqmp_dma.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
  

Comments

Michal Simek March 21, 2023, 2:45 p.m. UTC | #1
On 3/16/23 10:33, Harini Katakam wrote:
> Align ZDMA DMA as well as coherent memory masks to 44 bit. This is
> required when using >32 bit memory regions.

It doesn't look like description aligned with the change below.
You are using 44 bit already and the patch itself just checking return value 
from that function.

M
  
Harini Katakam March 21, 2023, 3:04 p.m. UTC | #2
Hi Michal,

> -----Original Message-----
> From: Simek, Michal <michal.simek@amd.com>
> Sent: Tuesday, March 21, 2023 8:15 PM
> To: Katakam, Harini <harini.katakam@amd.com>; vkoul@kernel.org;
> romain.perier@gmail.com; allen.lkml@gmail.com; yukuai3@huawei.com
> Cc: dmaengine@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
> kernel@vger.kernel.org; harinikatakamlinux@gmail.com; Pandey, Radhey
> Shyam <radhey.shyam.pandey@amd.com>
> Subject: Re: [PATCH] dmaengine: zynqmp_dma: Sync DMA and coherent
> masks
> 
> 
> 
> On 3/16/23 10:33, Harini Katakam wrote:
> > Align ZDMA DMA as well as coherent memory masks to 44 bit. This is
> > required when using >32 bit memory regions.
> 
> It doesn't look like description aligned with the change below.
> You are using 44 bit already and the patch itself just checking return value
> from that function.

Current code sets dma_set_mask; I changed it to dma_set_mask_and_coherent

Regards,
Harini

> 
> M
  
Michal Simek March 21, 2023, 3:15 p.m. UTC | #3
On 3/21/23 16:04, Katakam, Harini wrote:
> Hi Michal,
> 
>> -----Original Message-----
>> From: Simek, Michal <michal.simek@amd.com>
>> Sent: Tuesday, March 21, 2023 8:15 PM
>> To: Katakam, Harini <harini.katakam@amd.com>; vkoul@kernel.org;
>> romain.perier@gmail.com; allen.lkml@gmail.com; yukuai3@huawei.com
>> Cc: dmaengine@vger.kernel.org; linux-arm-kernel@lists.infradead.org; linux-
>> kernel@vger.kernel.org; harinikatakamlinux@gmail.com; Pandey, Radhey
>> Shyam <radhey.shyam.pandey@amd.com>
>> Subject: Re: [PATCH] dmaengine: zynqmp_dma: Sync DMA and coherent
>> masks
>>
>>
>>
>> On 3/16/23 10:33, Harini Katakam wrote:
>>> Align ZDMA DMA as well as coherent memory masks to 44 bit. This is
>>> required when using >32 bit memory regions.
>>
>> It doesn't look like description aligned with the change below.
>> You are using 44 bit already and the patch itself just checking return value
>> from that function.
> 
> Current code sets dma_set_mask; I changed it to dma_set_mask_and_coherent

Ah ok. Then

Acked-by: Michal Simek <michal.simek@amd.com>

Thanks,
Michal
  
Vinod Koul March 31, 2023, 12:24 p.m. UTC | #4
On 16-03-23, 15:03, Harini Katakam wrote:
> Align ZDMA DMA as well as coherent memory masks to 44 bit. This is
> required when using >32 bit memory regions.

Applied, thanks
  

Patch

diff --git a/drivers/dma/xilinx/zynqmp_dma.c b/drivers/dma/xilinx/zynqmp_dma.c
index 3f4ee3954384..34d7d20ffc09 100644
--- a/drivers/dma/xilinx/zynqmp_dma.c
+++ b/drivers/dma/xilinx/zynqmp_dma.c
@@ -1051,7 +1051,11 @@  static int zynqmp_dma_probe(struct platform_device *pdev)
 	zdev->dev = &pdev->dev;
 	INIT_LIST_HEAD(&zdev->common.channels);
 
-	dma_set_mask(&pdev->dev, DMA_BIT_MASK(44));
+	ret = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(44));
+	if (ret) {
+		dev_err(&pdev->dev, "DMA not available for address range\n");
+		return ret;
+	}
 	dma_cap_set(DMA_MEMCPY, zdev->common.cap_mask);
 
 	p = &zdev->common;