[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <VE1PR04MB6638639EF4F580E04689538E89870@VE1PR04MB6638.eurprd04.prod.outlook.com>
Date: Wed, 25 Sep 2019 11:26:30 +0000
From: Robin Gong <yibin.gong@....com>
To: Schrempf Frieder <frieder.schrempf@...tron.de>
CC: "linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"vkoul@...nel.org" <vkoul@...nel.org>,
"dan.j.williams@...el.com" <dan.j.williams@...el.com>,
"shawnguo@...nel.org" <shawnguo@...nel.org>,
"s.hauer@...gutronix.de" <s.hauer@...gutronix.de>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
dl-linux-imx <linux-imx@....com>,
"dmaengine@...r.kernel.org" <dmaengine@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v5 11/15] dmaengine: imx-sdma: fix ecspi1 rx dma not work
on i.mx8mm
On 2019-9-24 21:28 Schrempf Frieder <frieder.schrempf@...tron.de> wrote:
>
> 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?
Could you check if the length of spi message is bigger than fifo_size during
spi_nor probe? If yes, at that time maybe sdma firmware not loaded.
if (transfer->len < spi_imx->devtype_data->fifo_size)
> Thanks,
> Frieder
Powered by blists - more mailing lists