From: Sascha Hauer <s.hauer@pengutronix.de> To: Robin Gong <yibin.gong@nxp.com> Cc: vkoul@kernel.org, shawnguo@kernel.org, u.kleine-koenig@pengutronix.de, robh+dt@kernel.org, festevam@gmail.com, dan.j.williams@intel.com, mark.rutland@arm.com, catalin.marinas@arm.com, will.deacon@arm.com, l.stach@pengutronix.de, martin.fuzzey@flowbird.group, kernel@pengutronix.de, linux-spi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-imx@nxp.com, dmaengine@vger.kernel.org, devicetree@vger.kernel.org Subject: Re: [PATCH v7 RESEND 07/13] spi: imx: fix ERR009165 Date: Wed, 13 May 2020 09:21:32 +0200 [thread overview] Message-ID: <20200513072132.GL5877@pengutronix.de> (raw) In-Reply-To: <1589218356-17475-8-git-send-email-yibin.gong@nxp.com> On Tue, May 12, 2020 at 01:32:30AM +0800, Robin Gong wrote: > Change to XCH mode even in dma mode, please refer to the below > errata: > https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf This patch is the one bisecting will end up with when somebody uses an older SDMA firmware or the ROM scripts. It should have a better description what happens and what should be done about it. Sascha > > Signed-off-by: Robin Gong <yibin.gong@nxp.com> > Acked-by: Mark Brown <broonie@kernel.org> > --- > drivers/spi/spi-imx.c | 16 ++++++++-------- > 1 file changed, 8 insertions(+), 8 deletions(-) > > diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c > index f4f28a4..70df8e6 100644 > --- a/drivers/spi/spi-imx.c > +++ b/drivers/spi/spi-imx.c > @@ -585,8 +585,8 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx, > ctrl |= mx51_ecspi_clkdiv(spi_imx, t->speed_hz, &clk); > spi_imx->spi_bus_clk = clk; > > - if (spi_imx->usedma) > - ctrl |= MX51_ECSPI_CTRL_SMC; > + /* ERR009165: work in XHC mode as PIO */ > + ctrl &= ~MX51_ECSPI_CTRL_SMC; > > writel(ctrl, spi_imx->base + MX51_ECSPI_CTRL); > > @@ -617,7 +617,7 @@ static void mx51_setup_wml(struct spi_imx_data *spi_imx) > * and enable DMA request. > */ > writel(MX51_ECSPI_DMA_RX_WML(spi_imx->wml - 1) | > - MX51_ECSPI_DMA_TX_WML(spi_imx->wml) | > + MX51_ECSPI_DMA_TX_WML(0) | > MX51_ECSPI_DMA_RXT_WML(spi_imx->wml) | > MX51_ECSPI_DMA_TEDEN | MX51_ECSPI_DMA_RXDEN | > MX51_ECSPI_DMA_RXTDEN, spi_imx->base + MX51_ECSPI_DMA); > @@ -1171,7 +1171,11 @@ static int spi_imx_dma_configure(struct spi_master *master) > tx.direction = DMA_MEM_TO_DEV; > tx.dst_addr = spi_imx->base_phys + MXC_CSPITXDATA; > tx.dst_addr_width = buswidth; > - tx.dst_maxburst = spi_imx->wml; > + /* > + * For ERR009165 with tx_wml = 0 could enlarge burst size to fifo size > + * to speed up fifo filling as possible. > + */ > + tx.dst_maxburst = spi_imx->devtype_data->fifo_size; > ret = dmaengine_slave_config(master->dma_tx, &tx); > if (ret) { > dev_err(spi_imx->dev, "TX dma configuration failed with %d\n", ret); > @@ -1265,10 +1269,6 @@ static int spi_imx_sdma_init(struct device *dev, struct spi_imx_data *spi_imx, > { > int ret; > > - /* use pio mode for i.mx6dl chip TKT238285 */ > - if (of_machine_is_compatible("fsl,imx6dl")) > - return 0; > - > spi_imx->wml = spi_imx->devtype_data->fifo_size / 2; > > /* Prepare for TX DMA: */ > -- > 2.7.4 > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
WARNING: multiple messages have this Message-ID (diff)
From: Sascha Hauer <s.hauer@pengutronix.de> To: Robin Gong <yibin.gong@nxp.com> Cc: mark.rutland@arm.com, devicetree@vger.kernel.org, catalin.marinas@arm.com, kernel@pengutronix.de, shawnguo@kernel.org, will.deacon@arm.com, linux-kernel@vger.kernel.org, linux-spi@vger.kernel.org, vkoul@kernel.org, robh+dt@kernel.org, linux-imx@nxp.com, martin.fuzzey@flowbird.group, u.kleine-koenig@pengutronix.de, dmaengine@vger.kernel.org, dan.j.williams@intel.com, festevam@gmail.com, linux-arm-kernel@lists.infradead.org, l.stach@pengutronix.de Subject: Re: [PATCH v7 RESEND 07/13] spi: imx: fix ERR009165 Date: Wed, 13 May 2020 09:21:32 +0200 [thread overview] Message-ID: <20200513072132.GL5877@pengutronix.de> (raw) In-Reply-To: <1589218356-17475-8-git-send-email-yibin.gong@nxp.com> On Tue, May 12, 2020 at 01:32:30AM +0800, Robin Gong wrote: > Change to XCH mode even in dma mode, please refer to the below > errata: > https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf This patch is the one bisecting will end up with when somebody uses an older SDMA firmware or the ROM scripts. It should have a better description what happens and what should be done about it. Sascha > > Signed-off-by: Robin Gong <yibin.gong@nxp.com> > Acked-by: Mark Brown <broonie@kernel.org> > --- > drivers/spi/spi-imx.c | 16 ++++++++-------- > 1 file changed, 8 insertions(+), 8 deletions(-) > > diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c > index f4f28a4..70df8e6 100644 > --- a/drivers/spi/spi-imx.c > +++ b/drivers/spi/spi-imx.c > @@ -585,8 +585,8 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx, > ctrl |= mx51_ecspi_clkdiv(spi_imx, t->speed_hz, &clk); > spi_imx->spi_bus_clk = clk; > > - if (spi_imx->usedma) > - ctrl |= MX51_ECSPI_CTRL_SMC; > + /* ERR009165: work in XHC mode as PIO */ > + ctrl &= ~MX51_ECSPI_CTRL_SMC; > > writel(ctrl, spi_imx->base + MX51_ECSPI_CTRL); > > @@ -617,7 +617,7 @@ static void mx51_setup_wml(struct spi_imx_data *spi_imx) > * and enable DMA request. > */ > writel(MX51_ECSPI_DMA_RX_WML(spi_imx->wml - 1) | > - MX51_ECSPI_DMA_TX_WML(spi_imx->wml) | > + MX51_ECSPI_DMA_TX_WML(0) | > MX51_ECSPI_DMA_RXT_WML(spi_imx->wml) | > MX51_ECSPI_DMA_TEDEN | MX51_ECSPI_DMA_RXDEN | > MX51_ECSPI_DMA_RXTDEN, spi_imx->base + MX51_ECSPI_DMA); > @@ -1171,7 +1171,11 @@ static int spi_imx_dma_configure(struct spi_master *master) > tx.direction = DMA_MEM_TO_DEV; > tx.dst_addr = spi_imx->base_phys + MXC_CSPITXDATA; > tx.dst_addr_width = buswidth; > - tx.dst_maxburst = spi_imx->wml; > + /* > + * For ERR009165 with tx_wml = 0 could enlarge burst size to fifo size > + * to speed up fifo filling as possible. > + */ > + tx.dst_maxburst = spi_imx->devtype_data->fifo_size; > ret = dmaengine_slave_config(master->dma_tx, &tx); > if (ret) { > dev_err(spi_imx->dev, "TX dma configuration failed with %d\n", ret); > @@ -1265,10 +1269,6 @@ static int spi_imx_sdma_init(struct device *dev, struct spi_imx_data *spi_imx, > { > int ret; > > - /* use pio mode for i.mx6dl chip TKT238285 */ > - if (of_machine_is_compatible("fsl,imx6dl")) > - return 0; > - > spi_imx->wml = spi_imx->devtype_data->fifo_size / 2; > > /* Prepare for TX DMA: */ > -- > 2.7.4 > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-05-13 7:21 UTC|newest] Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-05-11 17:32 [PATCH v7 RESEND 00/13] add ecspi ERR009165 for i.mx6/7 soc family Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 01/13] Revert "ARM: dts: imx6q: Use correct SDMA script for SPI5 core" Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 02/13] Revert "ARM: dts: imx6: Use correct SDMA script for SPI cores" Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 03/13] Revert "dmaengine: imx-sdma: fix context cache" Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-13 6:05 ` Sascha Hauer 2020-05-13 6:05 ` Sascha Hauer 2020-05-13 7:12 ` Fuzzey, Martin 2020-05-13 7:12 ` Fuzzey, Martin 2020-05-13 8:06 ` Robin Gong 2020-05-13 8:06 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 04/13] Revert "dmaengine: imx-sdma: refine to load context only once" Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 05/13] dmaengine: imx-sdma: remove dupilicated sdma_load_context Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-13 6:05 ` Sascha Hauer 2020-05-13 6:05 ` Sascha Hauer 2020-05-13 8:04 ` Robin Gong 2020-05-13 8:04 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 06/13] dmaengine: imx-sdma: add mcu_2_ecspi script Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 07/13] spi: imx: fix ERR009165 Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-13 7:21 ` Sascha Hauer [this message] 2020-05-13 7:21 ` Sascha Hauer 2020-05-13 8:38 ` Robin Gong 2020-05-13 8:38 ` Robin Gong 2020-05-13 8:48 ` Sascha Hauer 2020-05-13 8:48 ` Sascha Hauer 2020-05-13 8:52 ` Robin Gong 2020-05-13 8:52 ` Robin Gong 2020-05-13 9:20 ` Sascha Hauer 2020-05-13 9:20 ` Sascha Hauer 2020-05-13 15:48 ` Robin Gong 2020-05-13 15:48 ` Robin Gong 2020-05-13 7:33 ` Sascha Hauer 2020-05-13 7:33 ` Sascha Hauer 2020-05-13 9:05 ` Robin Gong 2020-05-13 9:05 ` Robin Gong 2020-05-13 9:20 ` Sascha Hauer 2020-05-13 9:20 ` Sascha Hauer 2020-05-13 9:36 ` Robin Gong 2020-05-13 9:36 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 08/13] spi: imx: remove ERR009165 workaround on i.mx6ul Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 09/13] spi: imx: add new i.mx6ul compatible name in binding doc Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 10/13] dmaengine: imx-sdma: remove ERR009165 on i.mx6ul Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 11/13] dma: imx-sdma: add i.mx6ul compatible name Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 12/13] dmaengine: imx-sdma: fix ecspi1 rx dma not work on i.mx8mm Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-11 17:32 ` [PATCH v7 RESEND 13/13] dmaengine: imx-sdma: add uart rom script Robin Gong 2020-05-11 17:32 ` Robin Gong 2020-05-13 21:06 ` Fabio Estevam 2020-05-13 21:06 ` Fabio Estevam 2020-05-14 1:45 ` Robin Gong 2020-05-14 1:45 ` Robin Gong 2020-05-13 7:20 ` [PATCH v7 RESEND 00/13] add ecspi ERR009165 for i.mx6/7 soc family Sascha Hauer 2020-05-13 7:20 ` Sascha Hauer 2020-05-13 8:20 ` Robin Gong 2020-05-13 8:20 ` Robin Gong
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200513072132.GL5877@pengutronix.de \ --to=s.hauer@pengutronix.de \ --cc=catalin.marinas@arm.com \ --cc=dan.j.williams@intel.com \ --cc=devicetree@vger.kernel.org \ --cc=dmaengine@vger.kernel.org \ --cc=festevam@gmail.com \ --cc=kernel@pengutronix.de \ --cc=l.stach@pengutronix.de \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-imx@nxp.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-spi@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=martin.fuzzey@flowbird.group \ --cc=robh+dt@kernel.org \ --cc=shawnguo@kernel.org \ --cc=u.kleine-koenig@pengutronix.de \ --cc=vkoul@kernel.org \ --cc=will.deacon@arm.com \ --cc=yibin.gong@nxp.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.