]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop spi-imx-remove-err009165-workaround-on-i.mx6ul.patch from 5.13 and 5.14
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Sep 2021 15:31:05 +0000 (17:31 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 Sep 2021 15:31:05 +0000 (17:31 +0200)
queue-5.13/series
queue-5.13/spi-imx-remove-err009165-workaround-on-i.mx6ul.patch [deleted file]
queue-5.14/series
queue-5.14/spi-imx-remove-err009165-workaround-on-i.mx6ul.patch [deleted file]

index 8716bee6dd61578d091b12d9e29bb24d2dbcf2eb..16f1998e2362ae88ec0a02c85233003d1735c87f 100644 (file)
@@ -185,7 +185,6 @@ media-platform-stm32-unprepare-clocks-at-handling-er.patch
 media-atomisp-fix-runtime-pm-imbalance-in-atomisp_pc.patch
 media-atomisp-pci-fix-error-return-code-in-atomisp_p.patch
 nfp-fix-return-statement-in-nfp_net_parse_meta.patch
-spi-imx-remove-err009165-workaround-on-i.mx6ul.patch
 ethtool-improve-compat-ioctl-handling.patch
 drm-amdgpu-fix-a-printing-message.patch
 drm-amd-amdgpu-update-debugfs-link_settings-output-l.patch
diff --git a/queue-5.13/spi-imx-remove-err009165-workaround-on-i.mx6ul.patch b/queue-5.13/spi-imx-remove-err009165-workaround-on-i.mx6ul.patch
deleted file mode 100644 (file)
index ce3e90c..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-From 1ea3c7e76a2dbff4ac9e25ef08ce67ecaabb803a Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 14 Jul 2021 18:20:48 +0800
-Subject: spi: imx: remove ERR009165 workaround on i.mx6ul
-
-From: Robin Gong <yibin.gong@nxp.com>
-
-[ Upstream commit 8eb1252bbedfb0e800bbbd3e9055a7db0ae2cac9 ]
-
-ERR009165 fixed on i.mx6ul/6ull/6sll. All other i.mx6/7 and
-i.mx8m/8mm still need this errata. Please refer to nxp official
-errata document from https://www.nxp.com/ .
-
-For removing workaround on those chips. Add new i.mx6ul type.
-
-Signed-off-by: Robin Gong <yibin.gong@nxp.com>
-Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
-Acked-by: Mark Brown <broonie@kernel.org>
-Signed-off-by: Shawn Guo <shawnguo@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/spi/spi-imx.c | 39 ++++++++++++++++++++++++++++++++++++---
- 1 file changed, 36 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c
-index ac86b3d1052d..113afee6a3c8 100644
---- a/drivers/spi/spi-imx.c
-+++ b/drivers/spi/spi-imx.c
-@@ -77,6 +77,11 @@ struct spi_imx_devtype_data {
-       bool has_slavemode;
-       unsigned int fifo_size;
-       bool dynamic_burst;
-+      /*
-+       * ERR009165 fixed or not:
-+       * https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf
-+       */
-+      bool tx_glitch_fixed;
-       enum spi_imx_devtype devtype;
- };
-@@ -622,8 +627,14 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx,
-       ctrl |= mx51_ecspi_clkdiv(spi_imx, spi_imx->spi_bus_clk, &clk);
-       spi_imx->spi_bus_clk = clk;
--      /* ERR009165: work in XHC mode as PIO */
--      ctrl &= ~MX51_ECSPI_CTRL_SMC;
-+      /*
-+       * ERR009165: work in XHC mode instead of SMC as PIO on the chips
-+       * before i.mx6ul.
-+       */
-+      if (spi_imx->usedma && spi_imx->devtype_data->tx_glitch_fixed)
-+              ctrl |= MX51_ECSPI_CTRL_SMC;
-+      else
-+              ctrl &= ~MX51_ECSPI_CTRL_SMC;
-       writel(ctrl, spi_imx->base + MX51_ECSPI_CTRL);
-@@ -632,12 +643,16 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx,
- static void mx51_setup_wml(struct spi_imx_data *spi_imx)
- {
-+      u32 tx_wml = 0;
-+
-+      if (spi_imx->devtype_data->tx_glitch_fixed)
-+              tx_wml = spi_imx->wml;
-       /*
-        * Configure the DMA register: setup the watermark
-        * and enable DMA request.
-        */
-       writel(MX51_ECSPI_DMA_RX_WML(spi_imx->wml - 1) |
--              MX51_ECSPI_DMA_TX_WML(0) |
-+              MX51_ECSPI_DMA_TX_WML(tx_wml) |
-               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);
-@@ -1028,6 +1043,23 @@ static struct spi_imx_devtype_data imx53_ecspi_devtype_data = {
-       .devtype = IMX53_ECSPI,
- };
-+static struct spi_imx_devtype_data imx6ul_ecspi_devtype_data = {
-+      .intctrl = mx51_ecspi_intctrl,
-+      .prepare_message = mx51_ecspi_prepare_message,
-+      .prepare_transfer = mx51_ecspi_prepare_transfer,
-+      .trigger = mx51_ecspi_trigger,
-+      .rx_available = mx51_ecspi_rx_available,
-+      .reset = mx51_ecspi_reset,
-+      .setup_wml = mx51_setup_wml,
-+      .fifo_size = 64,
-+      .has_dmamode = true,
-+      .dynamic_burst = true,
-+      .has_slavemode = true,
-+      .tx_glitch_fixed = true,
-+      .disable = mx51_ecspi_disable,
-+      .devtype = IMX51_ECSPI,
-+};
-+
- static const struct of_device_id spi_imx_dt_ids[] = {
-       { .compatible = "fsl,imx1-cspi", .data = &imx1_cspi_devtype_data, },
-       { .compatible = "fsl,imx21-cspi", .data = &imx21_cspi_devtype_data, },
-@@ -1036,6 +1068,7 @@ static const struct of_device_id spi_imx_dt_ids[] = {
-       { .compatible = "fsl,imx35-cspi", .data = &imx35_cspi_devtype_data, },
-       { .compatible = "fsl,imx51-ecspi", .data = &imx51_ecspi_devtype_data, },
-       { .compatible = "fsl,imx53-ecspi", .data = &imx53_ecspi_devtype_data, },
-+      { .compatible = "fsl,imx6ul-ecspi", .data = &imx6ul_ecspi_devtype_data, },
-       { /* sentinel */ }
- };
- MODULE_DEVICE_TABLE(of, spi_imx_dt_ids);
--- 
-2.30.2
-
index 703cfd282133871dddc38d5a4a9dc45ce325cc2e..37bede0d69255aafc4182c79c33da8931eb4f341 100644 (file)
@@ -209,7 +209,6 @@ media-platform-stm32-unprepare-clocks-at-handling-er.patch
 media-atomisp-fix-runtime-pm-imbalance-in-atomisp_pc.patch
 media-atomisp-pci-fix-error-return-code-in-atomisp_p.patch
 nfp-fix-return-statement-in-nfp_net_parse_meta.patch
-spi-imx-remove-err009165-workaround-on-i.mx6ul.patch
 ethtool-improve-compat-ioctl-handling.patch
 drm-amd-display-fixed-hardware-power-down-bypass-dur.patch
 drm-amdgpu-fix-a-printing-message.patch
diff --git a/queue-5.14/spi-imx-remove-err009165-workaround-on-i.mx6ul.patch b/queue-5.14/spi-imx-remove-err009165-workaround-on-i.mx6ul.patch
deleted file mode 100644 (file)
index 64e5cfc..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-From b7dcd66347e8fb1009218871650ec1cc157d1074 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 14 Jul 2021 18:20:48 +0800
-Subject: spi: imx: remove ERR009165 workaround on i.mx6ul
-
-From: Robin Gong <yibin.gong@nxp.com>
-
-[ Upstream commit 8eb1252bbedfb0e800bbbd3e9055a7db0ae2cac9 ]
-
-ERR009165 fixed on i.mx6ul/6ull/6sll. All other i.mx6/7 and
-i.mx8m/8mm still need this errata. Please refer to nxp official
-errata document from https://www.nxp.com/ .
-
-For removing workaround on those chips. Add new i.mx6ul type.
-
-Signed-off-by: Robin Gong <yibin.gong@nxp.com>
-Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
-Acked-by: Mark Brown <broonie@kernel.org>
-Signed-off-by: Shawn Guo <shawnguo@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/spi/spi-imx.c | 39 ++++++++++++++++++++++++++++++++++++---
- 1 file changed, 36 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c
-index d89b11205815..289ed3d4eda2 100644
---- a/drivers/spi/spi-imx.c
-+++ b/drivers/spi/spi-imx.c
-@@ -77,6 +77,11 @@ struct spi_imx_devtype_data {
-       bool has_slavemode;
-       unsigned int fifo_size;
-       bool dynamic_burst;
-+      /*
-+       * ERR009165 fixed or not:
-+       * https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf
-+       */
-+      bool tx_glitch_fixed;
-       enum spi_imx_devtype devtype;
- };
-@@ -622,8 +627,14 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx,
-       ctrl |= mx51_ecspi_clkdiv(spi_imx, spi_imx->spi_bus_clk, &clk);
-       spi_imx->spi_bus_clk = clk;
--      /* ERR009165: work in XHC mode as PIO */
--      ctrl &= ~MX51_ECSPI_CTRL_SMC;
-+      /*
-+       * ERR009165: work in XHC mode instead of SMC as PIO on the chips
-+       * before i.mx6ul.
-+       */
-+      if (spi_imx->usedma && spi_imx->devtype_data->tx_glitch_fixed)
-+              ctrl |= MX51_ECSPI_CTRL_SMC;
-+      else
-+              ctrl &= ~MX51_ECSPI_CTRL_SMC;
-       writel(ctrl, spi_imx->base + MX51_ECSPI_CTRL);
-@@ -632,12 +643,16 @@ static int mx51_ecspi_prepare_transfer(struct spi_imx_data *spi_imx,
- static void mx51_setup_wml(struct spi_imx_data *spi_imx)
- {
-+      u32 tx_wml = 0;
-+
-+      if (spi_imx->devtype_data->tx_glitch_fixed)
-+              tx_wml = spi_imx->wml;
-       /*
-        * Configure the DMA register: setup the watermark
-        * and enable DMA request.
-        */
-       writel(MX51_ECSPI_DMA_RX_WML(spi_imx->wml - 1) |
--              MX51_ECSPI_DMA_TX_WML(0) |
-+              MX51_ECSPI_DMA_TX_WML(tx_wml) |
-               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);
-@@ -1028,6 +1043,23 @@ static struct spi_imx_devtype_data imx53_ecspi_devtype_data = {
-       .devtype = IMX53_ECSPI,
- };
-+static struct spi_imx_devtype_data imx6ul_ecspi_devtype_data = {
-+      .intctrl = mx51_ecspi_intctrl,
-+      .prepare_message = mx51_ecspi_prepare_message,
-+      .prepare_transfer = mx51_ecspi_prepare_transfer,
-+      .trigger = mx51_ecspi_trigger,
-+      .rx_available = mx51_ecspi_rx_available,
-+      .reset = mx51_ecspi_reset,
-+      .setup_wml = mx51_setup_wml,
-+      .fifo_size = 64,
-+      .has_dmamode = true,
-+      .dynamic_burst = true,
-+      .has_slavemode = true,
-+      .tx_glitch_fixed = true,
-+      .disable = mx51_ecspi_disable,
-+      .devtype = IMX51_ECSPI,
-+};
-+
- static const struct of_device_id spi_imx_dt_ids[] = {
-       { .compatible = "fsl,imx1-cspi", .data = &imx1_cspi_devtype_data, },
-       { .compatible = "fsl,imx21-cspi", .data = &imx21_cspi_devtype_data, },
-@@ -1036,6 +1068,7 @@ static const struct of_device_id spi_imx_dt_ids[] = {
-       { .compatible = "fsl,imx35-cspi", .data = &imx35_cspi_devtype_data, },
-       { .compatible = "fsl,imx51-ecspi", .data = &imx51_ecspi_devtype_data, },
-       { .compatible = "fsl,imx53-ecspi", .data = &imx53_ecspi_devtype_data, },
-+      { .compatible = "fsl,imx6ul-ecspi", .data = &imx6ul_ecspi_devtype_data, },
-       { /* sentinel */ }
- };
- MODULE_DEVICE_TABLE(of, spi_imx_dt_ids);
--- 
-2.30.2
-