diff --git a/drivers/mtd/spi/sst.c b/drivers/mtd/spi/sst.c
index dcc0bbe..04cc50a 100644
--- a/drivers/mtd/spi/sst.c
+++ b/drivers/mtd/spi/sst.c
@@ -94,24 +94,6 @@
 };
 
 static int
-sst_enable_writing(struct spi_flash *flash)
-{
-	int ret = spi_flash_cmd_write_enable(flash);
-	if (ret)
-		debug("SF: Enabling Write failed\n");
-	return ret;
-}
-
-static int
-sst_disable_writing(struct spi_flash *flash)
-{
-	int ret = spi_flash_cmd_write_disable(flash);
-	if (ret)
-		debug("SF: Disabling Write failed\n");
-	return ret;
-}
-
-static int
 sst_byte_write(struct spi_flash *flash, u32 offset, const void *buf)
 {
 	int ret;
@@ -125,7 +107,7 @@
 	debug("BP[%02x]: 0x%p => cmd = { 0x%02x 0x%06x }\n",
 		spi_w8r8(flash->spi, CMD_READ_STATUS), buf, cmd[0], offset);
 
-	ret = sst_enable_writing(flash);
+	ret = spi_flash_cmd_write_enable(flash);
 	if (ret)
 		return ret;
 
@@ -158,7 +140,7 @@
 	}
 	offset += actual;
 
-	ret = sst_enable_writing(flash);
+	ret = spi_flash_cmd_write_enable(flash);
 	if (ret)
 		goto done;
 
@@ -189,7 +171,7 @@
 	}
 
 	if (!ret)
-		ret = sst_disable_writing(flash);
+		ret = spi_flash_cmd_write_disable(flash);
 
 	/* If there is a single trailing byte, write it out */
 	if (!ret && actual != len)
@@ -209,7 +191,7 @@
 	int ret;
 	u8 cmd, status;
 
-	ret = sst_enable_writing(flash);
+	ret = spi_flash_cmd_write_enable(flash);
 	if (ret)
 		return ret;
 
