RE: [PATCH v5 00/15] add ecspi ERR009165 for i.mx6/7 soc family

From: Robin Gong
Date: Tue Jun 25 2019 - 04:06:05 EST


Thanks Shawn. If no comment here, I think you can merge dts patch firstly in your tree since
those dts patches are harmless, Mark and Vinod would merge SPI/DMA patches into
their trees? Hope imx/spi/dmaengin trees could merge into the same rc on linux-next, otherwise
SPI function maybe broken.
> -----Original Message-----
> From: Shawn Guo <shawnguo@xxxxxxxxxx>
> Sent: 2019å6æ24æ 8:17
> Subject: Re: [PATCH v5 00/15] add ecspi ERR009165 for i.mx6/7 soc family
>
> On Fri, Jun 21, 2019 at 08:42:48AM +0000, Robin Gong wrote:
> > Hello Shawn/Will,
> > Â Do you have comments for this V5 patch set? I got tags from Mark,
> > Vinod and Rob.
>
> I'm fine with the DTS change, but not sure how the series should be merged.
>
> Shawn
>
> >
> > On 2019-06-10 at 08:17 +0000, yibin.gong@xxxxxxx wrote:
> > > From: Robin Gong <yibin.gong@xxxxxxx>
> > >
> > > Â There is ecspi ERR009165 on i.mx6/7 soc family, which cause FIFO
> > > transfer to be send twice in DMA mode. Please get more information
> > > from:
> > > https://www
> > > .nxp.com%2Fdocs%2Fen%2Ferrata%2FIMX6DQCE.pdf&amp;data=02%7C01
> %7Cyibi
> > > n
> > > .gong%40nxp.com%7C67d3e78fe5ef4428b3af08d6ed7beb74%7C686ea1d
> 3bc2b4c6
> > > f
> > >
> a92cd99c5c301635%7C0%7C1%7C636957513814970412&amp;sdata=%2F9s
> brDEmIp
> > > u OazcIAVpIrELZMEjO94%2Bjen7wOOlVsVk%3D&amp;reserved=0. The
> > > workaround is adding new sdma ram script which works in XCHÂÂmode as
> > > PIO inside sdma instead of SMC mode, meanwhile, 'TX_THRESHOLD'
> > > should be 0. The issue should be exist on all legacy i.mx6/7 soc
> > > family before i.mx6ul.
> > > Â NXP fix this design issue from i.mx6ul, so newer chips including
> > > i.mx6ul/ 6ull/6sll do not need this workaroud anymore. All other
> > > i.mx6/7/8 chips still need this workaroud. This patch set add new
> > > 'fsl,imx6ul-ecspi'
> > > for ecspi driver and 'ecspi_fixed' in sdma driver to choose if need
> > > errata or not.
> > > Â The first two reverted patches should be the same issue, though,
> > > it seems 'fixed' by changing to other shp script. Hope Sean or
> > > Sascha could have the chance to test this patch set if could fix
> > > their issues.
> > > Â Besides, enable sdma support for i.mx8mm/8mq and fix ecspi1 not
> > > work on i.mx8mm because the event id is zero.
> > >
> > > PS:
> > > ÂÂÂPlease get sdma firmware from below linux-firmware and copy it to
> > > your local rootfs /lib/firmware/imx/sdma.
> > > https://git
> > > .kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Ffirmware%2Flinux-
> > >
> firmware.git%2Ftree%2Fimx%2Fsdma&amp;data=02%7C01%7Cyibin.gong%40
> nxp.
> > >
> com%7C67d3e78fe5ef4428b3af08d6ed7beb74%7C686ea1d3bc2b4c6fa92cd9
> 9c5c3
> > > 0
> > >
> 1635%7C0%7C1%7C636957513814970412&amp;sdata=xXHBWpSaSLmMosb
> %2FajOAiX
> > > n
> > > nkxaYV6HCt25OOzgRLbI%3D&amp;reserved=0
> > >
> > > v2:
> > > Â 1.Add commit log for reverted patches.
> > > Â 2.Add comment for 'ecspi_fixed' in sdma driver.
> > > Â 3.Add 'fsl,imx6sll-ecspi' compatible instead of 'fsl,imx6ul-ecspi'
> > > ÂÂÂÂrather than remove.
> > > v3:
> > > Â 1.Confirm with design team make sure ERR009165 fixed on
> > > i.mx6ul/i.mx6ull
> > > ÂÂÂÂ/i.mx6sll, not fixed on i.mx8m/8mm and other i.mx6/7 legacy
> > > chips.
> > > ÂÂÂÂCorrect dts related dts patch in v2.
> > > Â 2.Clean eratta information in binding doc and new 'tx_glitch_fixed'
> > > flag
> > > ÂÂÂÂin spi-imx driver to state ERR009165 fixed or not.
> > > Â 3.Enlarge burst size to fifo size for tx since tx_wml set to 0 in
> > > the
> > > ÂÂÂÂerrata workaroud, thus improve performance as possible.
> > > v4:
> > > Â 1.add Ack tag from Mark and Vinod
> > > Â 2. remove checking 'event_id1' zero as 'event_id0'.
> > > v5:
> > > Â 1.Add another patch for compatible with the current uart driver
> > > which
> > > ÂÂÂÂusing rom script, so both uart ram script and rom script
> > > supported
> > > ÂÂÂÂin latest firmware, by default uart rom script used. UART driver
> > > ÂÂÂÂwill be broken without this patch. Latest sdma firmware has been
> > > ÂÂÂÂalready updated in linux-firmware.
> > >
> > > Robin Gong (15):
> > > Â Revert "ARM: dts: imx6q: Use correct SDMA script for SPI5 core"
> > > Â Revert "ARM: dts: imx6: Use correct SDMA script for SPI cores"
> > > Â Revert "dmaengine: imx-sdma: refine to load context only once"
> > > Â dmaengine: imx-sdma: remove dupilicated sdma_load_context
> > > Â dmaengine: imx-sdma: add mcu_2_ecspi script
> > > Â spi: imx: fix ERR009165
> > > Â spi: imx: remove ERR009165 workaround on i.mx6ul
> > > Â spi: imx: add new i.mx6ul compatible name in binding doc
> > > Â dmaengine: imx-sdma: remove ERR009165 on i.mx6ul
> > > Â dma: imx-sdma: add i.mx6ul/6sx compatible name
> > > Â dmaengine: imx-sdma: fix ecspi1 rx dma not work on i.mx8mm
> > > Â ARM: dts: imx6ul: add dma support on ecspi
> > > Â ARM: dts: imx6sll: correct sdma compatible
> > > Â arm64: defconfig: Enable SDMA on i.mx8mq/8mm
> > > Â dmaengine: imx-sdma: add uart rom script
> > >
> > > Â.../devicetree/bindings/dma/fsl-imx-sdma.txtÂÂÂÂÂÂÂ|ÂÂ2 +
> > > Â.../devicetree/bindings/spi/fsl-imx-cspi.txtÂÂÂÂÂÂÂ|ÂÂ1 +
> > > Âarch/arm/boot/dts/imx6q.dtsiÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ2 +-
> > > Âarch/arm/boot/dts/imx6qdl.dtsiÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ8 +-
> > > Âarch/arm/boot/dts/imx6sll.dtsiÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ2 +-
> > > Âarch/arm/boot/dts/imx6ul.dtsiÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ8 ++
> > > Âarch/arm64/configs/defconfigÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ3 +
> > > Âdrivers/dma/imx-sdma.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ| 88
> > > ++++++++++++++++------
> > > Âdrivers/spi/spi-imx.cÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ| 61
> > > ++++++++++++---
> > > Âinclude/linux/platform_data/dma-imx-sdma.hÂÂÂÂÂÂÂÂÂ| 11 ++-
> > > Â10 files changed, 145 insertions(+), 41 deletions(-)
> > >