diff options
Diffstat (limited to 'package/boot/uboot-layerscape/patches/0071-driver-fsl_qspi-disable-AHB-buffer-prefetch.patch')
-rw-r--r-- | package/boot/uboot-layerscape/patches/0071-driver-fsl_qspi-disable-AHB-buffer-prefetch.patch | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/package/boot/uboot-layerscape/patches/0071-driver-fsl_qspi-disable-AHB-buffer-prefetch.patch b/package/boot/uboot-layerscape/patches/0071-driver-fsl_qspi-disable-AHB-buffer-prefetch.patch deleted file mode 100644 index a7cb7b4..0000000 --- a/package/boot/uboot-layerscape/patches/0071-driver-fsl_qspi-disable-AHB-buffer-prefetch.patch +++ /dev/null @@ -1,58 +0,0 @@ -From e2a5bba97cd6e42b2b631bd17012aa26ffdb5f67 Mon Sep 17 00:00:00 2001 -From: Yunhui Cui <yunhui.cui@nxp.com> -Date: Tue, 12 Jul 2016 10:30:08 +0800 -Subject: [PATCH 71/93] driver: fsl_qspi: disable AHB buffer prefetch - -Errata: A-009282: QuadSPI data pre-fetch can result in incorrect data -When we enable the CONFIG_SYS_FSL_QSPI_AHB, we need this errata workaround. - -Signed-off-by: Yunhui Cui <yunhui.cui@nxp.com> ---- - drivers/spi/fsl_qspi.c | 12 +++++++++++- - include/configs/ls1012a_common.h | 1 + - 2 files changed, 12 insertions(+), 1 deletion(-) - -diff --git a/drivers/spi/fsl_qspi.c b/drivers/spi/fsl_qspi.c -index 09759fa..f1c87f5 100644 ---- a/drivers/spi/fsl_qspi.c -+++ b/drivers/spi/fsl_qspi.c -@@ -441,13 +441,23 @@ static void qspi_enable_ddr_mode(struct fsl_qspi_priv *priv) - static void qspi_init_ahb_read(struct fsl_qspi_priv *priv) - { - struct fsl_qspi_regs *regs = priv->regs; -+ int rx_size = 0x80; - - /* AHB configuration for access buffer 0/1/2 .*/ - qspi_write32(priv->flags, ®s->buf0cr, QSPI_BUFXCR_INVALID_MSTRID); - qspi_write32(priv->flags, ®s->buf1cr, QSPI_BUFXCR_INVALID_MSTRID); - qspi_write32(priv->flags, ®s->buf2cr, QSPI_BUFXCR_INVALID_MSTRID); -+ -+#ifdef CONFIG_SYS_FSL_ERRATUM_A009282 -+ /*A-009282: QuadSPI data pre-fetch can result in incorrect data -+ *Workaround: Keep the read data size to 64 bits (8 Bytes), which -+ *disables the prefetch on the AHB buffer,and prevents this issue -+ *from occurring. -+ */ -+ rx_size = 0x1; -+#endif - qspi_write32(priv->flags, ®s->buf3cr, QSPI_BUF3CR_ALLMST_MASK | -- (0x80 << QSPI_BUF3CR_ADATSZ_SHIFT)); -+ (rx_size << QSPI_BUF3CR_ADATSZ_SHIFT)); - - /* We only use the buffer3 */ - qspi_write32(priv->flags, ®s->buf0ind, 0); -diff --git a/include/configs/ls1012a_common.h b/include/configs/ls1012a_common.h -index 47b8ec3..f0ae355 100644 ---- a/include/configs/ls1012a_common.h -+++ b/include/configs/ls1012a_common.h -@@ -68,6 +68,7 @@ - #define FSL_QSPI_FLASH_SIZE (1 << 26) - #define FSL_QSPI_FLASH_NUM 2 - #define CONFIG_SYS_FSL_QSPI_AHB -+#define CONFIG_SYS_FSL_ERRATUM_A009282 - - /* - * Environment --- -1.7.9.5 - |