summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYe.Li <B37916@freescale.com>2014-07-17 17:46:16 +0800
committerYe.Li <B37916@freescale.com>2014-07-17 18:01:55 +0800
commitbe2c5fd0cd52f2f63d2dc11cea213028e1303249 (patch)
tree13a852abd65aaaad35b6e935e89e79d9fd169081
parentaef061cd811fb4f2de6c81094225f66b3a16de50 (diff)
ENGR00323027 MTD:QuadSPI: Remove the M4 checking workaround
The QuadSPI driver has a workaround to check if M4 is using QuadSPI NOR flash. When M4 is running on QuadSPI NOR, the QuadSPI driver will quit. This workaround has a bug when system booting from QuadSPI NOR. Therefore, removed the workaround and disabled the QuadSPI driver in MCC specific DTB. The MCC DTB will let the QuadSPI driver to disabled, not conflict with M4. Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit 6733ca3382ddb6358f4ccf8dd4f16d8f65995241)
-rw-r--r--arch/arm/boot/dts/imx6sx-sdb-m4.dts4
-rw-r--r--drivers/mtd/spi-nor/fsl-quadspi.c13
2 files changed, 4 insertions, 13 deletions
diff --git a/arch/arm/boot/dts/imx6sx-sdb-m4.dts b/arch/arm/boot/dts/imx6sx-sdb-m4.dts
index aa52ca7308d8..3258075f27cd 100644
--- a/arch/arm/boot/dts/imx6sx-sdb-m4.dts
+++ b/arch/arm/boot/dts/imx6sx-sdb-m4.dts
@@ -35,3 +35,7 @@
&adc2 {
status = "disabled";
};
+
+&qspi2 {
+ status = "disabled";
+};
diff --git a/drivers/mtd/spi-nor/fsl-quadspi.c b/drivers/mtd/spi-nor/fsl-quadspi.c
index 02051622ef74..1694a89e315f 100644
--- a/drivers/mtd/spi-nor/fsl-quadspi.c
+++ b/drivers/mtd/spi-nor/fsl-quadspi.c
@@ -882,13 +882,6 @@ static void fsl_qspi_unprep(struct spi_nor *nor, enum spi_nor_ops ops)
clk_disable(q->clk_en);
}
-/* If the uboot enable the M4 to use the Quadspi, we should quit. */
-static bool fsl_m4_is_using(struct fsl_qspi *q)
-{
- return (readl(q->iobase + QUADSPI_BUF0CR) ==
- QUADSPI_BUFXCR_INVALID_MSTRID);
-}
-
static int fsl_qspi_probe(struct platform_device *pdev)
{
struct device_node *np = pdev->dev.of_node;
@@ -955,12 +948,6 @@ static int fsl_qspi_probe(struct platform_device *pdev)
goto map_failed;
}
- if (fsl_m4_is_using(q)) {
- dev_info(dev, "The M4 is using quadspi controller, we quit.\n");
- ret = -EINVAL;
- goto irq_failed;
- }
-
/* find the irq */
ret = platform_get_irq(pdev, 0);
if (ret < 0) {