Every spi flash uses the same write disnable command, so unify this in
the common code.

Signed-off-by: Mike Frysinger <vap...@gentoo.org>
---
 drivers/mtd/spi/spi_flash_internal.h |    9 +++++++++
 drivers/mtd/spi/sst.c                |    2 +-
 2 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/drivers/mtd/spi/spi_flash_internal.h 
b/drivers/mtd/spi/spi_flash_internal.h
index f80f717..91e036a 100644
--- a/drivers/mtd/spi/spi_flash_internal.h
+++ b/drivers/mtd/spi/spi_flash_internal.h
@@ -20,6 +20,7 @@
 #define CMD_READ_ARRAY_LEGACY          0xe8
 
 #define CMD_PAGE_PROGRAM               0x02
+#define CMD_WRITE_DISABLE              0x04
 #define CMD_READ_STATUS                        0x05
 #define CMD_WRITE_ENABLE               0x06
 
@@ -62,6 +63,14 @@ static inline int spi_flash_cmd_write_enable(struct 
spi_flash *flash)
 }
 
 /*
+ * Disable writing on the SPI flash.
+ */
+static inline int spi_flash_cmd_write_disable(struct spi_flash *flash)
+{
+       return spi_flash_cmd(flash->spi, CMD_WRITE_DISABLE, NULL, 0);
+}
+
+/*
  * Same as spi_flash_cmd_read() except it also claims/releases the SPI
  * bus. Used as common part of the ->read() operation.
  */
diff --git a/drivers/mtd/spi/sst.c b/drivers/mtd/spi/sst.c
index 6691c1d..d1e8a93 100644
--- a/drivers/mtd/spi/sst.c
+++ b/drivers/mtd/spi/sst.c
@@ -105,7 +105,7 @@ sst_enable_writing(struct spi_flash *flash)
 static int
 sst_disable_writing(struct spi_flash *flash)
 {
-       int ret = spi_flash_cmd(flash->spi, CMD_SST_WRDI, NULL, 0);
+       int ret = spi_flash_cmd_write_disable(flash);
        if (ret)
                debug("SF: Disabling Write failed\n");
        return ret;
-- 
1.7.5.3

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to