linux-spi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] spi: atmel: Fix PDC transfer setup bug
@ 2021-09-16 15:16 Ville Baillie
  2021-09-16 16:51 ` Dan.Sneddon
  0 siblings, 1 reply; 3+ messages in thread
From: Ville Baillie @ 2021-09-16 15:16 UTC (permalink / raw)
  To: tudor.ambarus, broonie, nicolas.ferre, alexandre.belloni,
	ludovic.desroches
  Cc: linux-spi, linux-arm-kernel, linux-kernel, dan.sneddon, Ville Baillie

From 614bcf515cc8dbd1b7573a2fbf369fc84fca0501 Mon Sep 17 00:00:00 2001
From: Ville Baillie <villeb@bytesnap.co.uk>
Date: Thu, 16 Sep 2021 14:16:46 +0000
Subject: [PATCH] spi: atmel: Fix PDC transfer setup bug

Commit d370f4b2808d ("spi: atmel: Switch to transfer_one transfer
method") refactored the code and changed a conditional causing
atmel_spi_dma_map_xfer to never be called in PDC mode. This causes the
driver to silently fail.

This patch changes the conditional to match the behaviour of the
previous commit before the refactor.

Signed-off-by: Ville Baillie <villeb@bytesnap.co.uk>
---
 drivers/spi/spi-atmel.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c
index 788dcdf25f00..f00e9c9b426e 100644
--- a/drivers/spi/spi-atmel.c
+++ b/drivers/spi/spi-atmel.c
@@ -1301,7 +1301,7 @@ static int atmel_spi_one_transfer(struct spi_master *master,
         * DMA map early, for performance (empties dcache ASAP) and
         * better fault reporting.
         */
-       if ((!master->cur_msg_mapped)
+       if ((!master->cur_msg->is_dma_mapped)
                && as->use_pdc) {
                if (atmel_spi_dma_map_xfer(as, xfer) < 0)
                        return -ENOMEM;
--
2.17.1


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

* Re: [PATCH] spi: atmel: Fix PDC transfer setup bug
  2021-09-16 15:16 [PATCH] spi: atmel: Fix PDC transfer setup bug Ville Baillie
@ 2021-09-16 16:51 ` Dan.Sneddon
  2021-09-17  7:37   ` Ville Baillie
  0 siblings, 1 reply; 3+ messages in thread
From: Dan.Sneddon @ 2021-09-16 16:51 UTC (permalink / raw)
  To: VilleB, Tudor.Ambarus, broonie, Nicolas.Ferre, alexandre.belloni,
	Ludovic.Desroches
  Cc: linux-spi, linux-arm-kernel, linux-kernel, Dan.Sneddon

Hi Ville,

On 9/16/21 8:16 AM, Ville Baillie wrote:
> [Some people who received this message don't often get email from villeb@bytesnap.co.uk. Learn why this is important at http://aka.ms/LearnAboutSenderIdentification.]
> 
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
>  From 614bcf515cc8dbd1b7573a2fbf369fc84fca0501 Mon Sep 17 00:00:00 2001
> From: Ville Baillie <villeb@bytesnap.co.uk>
> Date: Thu, 16 Sep 2021 14:16:46 +0000
> Subject: [PATCH] spi: atmel: Fix PDC transfer setup bug
> 
> Commit d370f4b2808d ("spi: atmel: Switch to transfer_one transfer
> method") refactored the code and changed a conditional causing
> atmel_spi_dma_map_xfer to never be called in PDC mode. This causes the
> driver to silently fail.
> 
> This patch changes the conditional to match the behaviour of the
> previous commit before the refactor.
> 
> Signed-off-by: Ville Baillie <villeb@bytesnap.co.uk>
> ---
>   drivers/spi/spi-atmel.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c
> index 788dcdf25f00..f00e9c9b426e 100644
> --- a/drivers/spi/spi-atmel.c
> +++ b/drivers/spi/spi-atmel.c
> @@ -1301,7 +1301,7 @@ static int atmel_spi_one_transfer(struct spi_master *master,
>           * DMA map early, for performance (empties dcache ASAP) and
>           * better fault reporting.
>           */
> -       if ((!master->cur_msg_mapped)
> +       if ((!master->cur_msg->is_dma_mapped)
>                  && as->use_pdc) {
>                  if (atmel_spi_dma_map_xfer(as, xfer) < 0)
>                          return -ENOMEM;
Looks like the same change should be made at the end of that same 
function where the call to atmel_spi_dma_unmap_xfer is made.
> --
> 2.17.1
> 


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

* RE: [PATCH] spi: atmel: Fix PDC transfer setup bug
  2021-09-16 16:51 ` Dan.Sneddon
@ 2021-09-17  7:37   ` Ville Baillie
  0 siblings, 0 replies; 3+ messages in thread
From: Ville Baillie @ 2021-09-17  7:37 UTC (permalink / raw)
  To: Dan.Sneddon, Tudor.Ambarus, broonie, Nicolas.Ferre,
	alexandre.belloni, Ludovic.Desroches
  Cc: linux-spi, linux-arm-kernel, linux-kernel

>Looks like the same change should be made at the end of that same function where the call to atmel_spi_dma_unmap_xfer is made.

Thanks Dan, I think you are correct. I will update the patch and send it out as V2.

Cheers
Ville

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

end of thread, other threads:[~2021-09-17  7:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-16 15:16 [PATCH] spi: atmel: Fix PDC transfer setup bug Ville Baillie
2021-09-16 16:51 ` Dan.Sneddon
2021-09-17  7:37   ` Ville Baillie

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).