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://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww > > .nxp.com%2Fdocs%2Fen%2Ferrata%2FIMX6DQCE.pdf&data=02%7C01%7Cyibin > > .gong%40nxp.com%7C67d3e78fe5ef4428b3af08d6ed7beb74%7C686ea1d3bc2b4c6f > > a92cd99c5c301635%7C0%7C1%7C636957513814970412&sdata=%2F9sbrDEmIpu > > OazcIAVpIrELZMEjO94%2Bjen7wOOlVsVk%3D&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://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit > > .kernel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Ffirmware%2Flinux- > > firmware.git%2Ftree%2Fimx%2Fsdma&data=02%7C01%7Cyibin.gong%40nxp. > > com%7C67d3e78fe5ef4428b3af08d6ed7beb74%7C686ea1d3bc2b4c6fa92cd99c5c30 > > 1635%7C0%7C1%7C636957513814970412&sdata=xXHBWpSaSLmMosb%2FajOAiXn > > nkxaYV6HCt25OOzgRLbI%3D&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(-) > >