Re: [PATCH] spi: imx: Don't expect DMA for i.MX{25, 35, 50, 51, 53} cspi devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Marc,

Thus wrote Marc Kleine-Budde (mkl@xxxxxxxxxxxxxx):

> Hello Martin,

> On 15.05.2024 21:26:17, Martin Kaiser wrote:
> > Thus wrote Martin Kaiser (martin@xxxxxxxxx):

> > > > However this breaks SPI transfers, when I try to read out an MRAM I get:

> > > > 	root@ecu02:~ hexdump -C /dev/mtd4
> > > > 	[   71.813807] spi_imx 43fa4000.spi: I/O Error in DMA TX
> > > > 	[   71.819173] spi-nor spi0.2: SPI transfer failed: -110
> > > > 	[   71.829129] spi_master spi0: failed to transfer one message from queue
> > > > 	[   71.843962] spi_master spi0: noqueue transfer failed

> > > > So it would indeed be interesting if you ever managed to use DMA on
> > > > i.MX25.

> > > I believe so. Looking into my notes from 2016 (when I last tried this), I got
> > > the -110 error when the SMC bit in CONREG wasn't set. But this should now be
> > > done in mx31_prepare_transfer if DMA is used...

> > > I'll try to set up a test some time next week.

> > I can now reproduce the dma tx error. My test board uses a dummy spidev device
> > on cspi1 and configures loopback on the cspi1 controller (disabling loopback
> > makes no difference).

> > I'm relatively sure that this setup did work back in 2016/17.

> > Commit 24bb244e02a6 ("ARM: i.MX25: globally disable supervisor protect") was
> > required before any DMA transfers started working on imx25. As far as I can
> > see, this code is still present.

> > I'll look into this a bit more as time permits.

> have you found the time to look into this?

I did have another look but couldn't get DMA to work :-(

I got to the point where tx seemed to work and rx failed. The tx callback
function was called from the dma core and rx timed out. However, looking at
the mosi, miso and clk signals, there was no clock and no data transmission on
the bus.

The dev_dbg prints in imx-sdma didn't show anything that looked wrong...

I'll have another go some time soon. In the meantime, feel free to merge this
patch and disable DMA on imx25.

Best regards,
Martin




[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux