Re: [PATCH v5 11/15] dmaengine: imx-sdma: fix ecspi1 rx dma not work on i.mx8mm
From: Schrempf Frieder
Date: Tue Sep 24 2019 - 09:27:45 EST
Hi Robin,
> From: Robin Gong <yibin.gong at nxp.com>
>
> Because the number of ecspi1 rx event on i.mx8mm is 0, the condition
> check ignore such special case without dma channel enabled, which caused
> ecspi1 rx works failed. Actually, no need to check event_id0/event_id1
> and replace checking 'event_id1' with 'DMA_DEV_TO_DEV', so that configure
> event_id1 only in case DEV_TO_DEV.
>
> Signed-off-by: Robin Gong <yibin.gong at nxp.com>
> Acked-by: Vinod Koul <vkoul at kernel.org>
I have a custom board with i.MX8MM and SPI flash on ecspi1. I'm
currently testing with v5.3 and as SPI didn't work, I tried two
different things:
1. Removing 'dmas' and 'dma-names' from the ecspi1 node in imx8mm.dtsi,
to use PIO instead of DMA. This works as expected and the driver
boots with the following messages:
spi_imx 30820000.spi: dma setup error -19, use pio
m25p80 spi0.0: mx25v8035f (1024 Kbytes)
spi_imx 30820000.spi: probed
2. Applying your patchset and use DMA. In this case, the flash also
works fine, but there are some error messages printed while booting:
spi_master spi0: I/O Error in DMA RX
m25p80 spi0.0: SPI transfer failed: -110
spi_master spi0: failed to transfer one message from queue
m25p80 spi0.0: mx25v8035f (1024 Kbytes)
spi_imx 30820000.spi: probed
It would be great to get your patches merged and fix SPI + DMA, but for
i.MX8MM, we need to get rid of the error messages. Do you have an idea,
what's wrong?
Thanks,
Frieder