You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by xi...@apache.org on 2021/07/17 16:00:55 UTC

[incubator-nuttx] 04/05: drivers/mtd: Implement MTDIOC_ERASESTATE for MTD drivers

This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git

commit 882a0964b32610cf73a40ac71af7e82944b4449f
Author: Gustavo Henrique Nihei <gu...@espressif.com>
AuthorDate: Fri Jul 16 14:16:41 2021 -0300

    drivers/mtd: Implement MTDIOC_ERASESTATE for MTD drivers
    
    Signed-off-by: Gustavo Henrique Nihei <gu...@espressif.com>
---
 drivers/mtd/filemtd.c   | 9 +++++++++
 drivers/mtd/gd25.c      | 9 +++++++++
 drivers/mtd/mx25lx.c    | 9 +++++++++
 drivers/mtd/mx25rxx.c   | 9 +++++++++
 drivers/mtd/n25qxxx.c   | 9 +++++++++
 drivers/mtd/rammtd.c    | 9 +++++++++
 drivers/mtd/s25fl1.c    | 9 +++++++++
 drivers/mtd/sector512.c | 9 +++++++++
 drivers/mtd/sst25.c     | 9 +++++++++
 drivers/mtd/w25.c       | 9 +++++++++
 drivers/mtd/w25qxxxjv.c | 9 +++++++++
 11 files changed, 99 insertions(+)

diff --git a/drivers/mtd/filemtd.c b/drivers/mtd/filemtd.c
index 752c356..a25ba1a 100644
--- a/drivers/mtd/filemtd.c
+++ b/drivers/mtd/filemtd.c
@@ -449,6 +449,15 @@ static int filemtd_ioctl(FAR struct mtd_dev_s *dev, int cmd,
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = CONFIG_FILEMTD_ERASESTATE;
+
+          ret = OK;
+        }
+        break;
+
       default:
         ret = -ENOTTY; /* Bad command */
         break;
diff --git a/drivers/mtd/gd25.c b/drivers/mtd/gd25.c
index 9c0b5b2..59289fa 100644
--- a/drivers/mtd/gd25.c
+++ b/drivers/mtd/gd25.c
@@ -957,6 +957,15 @@ static int gd25_ioctl(FAR struct mtd_dev_s *dev, int cmd, unsigned long arg)
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = GD25_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       case MTDIOC_XIPBASE:
       default:
         ret = -ENOTTY;
diff --git a/drivers/mtd/mx25lx.c b/drivers/mtd/mx25lx.c
index 5c5fd63..7ecca96 100644
--- a/drivers/mtd/mx25lx.c
+++ b/drivers/mtd/mx25lx.c
@@ -1093,6 +1093,15 @@ static int mx25l_ioctl(FAR struct mtd_dev_s *dev, int cmd, unsigned long arg)
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = MX25L_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       case MTDIOC_XIPBASE:
       default:
         ret = -ENOTTY; /* Bad command */
diff --git a/drivers/mtd/mx25rxx.c b/drivers/mtd/mx25rxx.c
index e992754..2b092d3 100644
--- a/drivers/mtd/mx25rxx.c
+++ b/drivers/mtd/mx25rxx.c
@@ -763,6 +763,15 @@ int mx25rxx_ioctl(FAR struct mtd_dev_s *dev, int cmd, unsigned long arg)
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = MX25RXX_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       default:
         ret = -ENOTTY; /* Bad/unsupported command */
         break;
diff --git a/drivers/mtd/n25qxxx.c b/drivers/mtd/n25qxxx.c
index e332639..cb3ca0a 100644
--- a/drivers/mtd/n25qxxx.c
+++ b/drivers/mtd/n25qxxx.c
@@ -1431,6 +1431,15 @@ static int n25qxxx_ioctl(FAR struct mtd_dev_s *dev,
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = N25QXXX_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       default:
         ret = -ENOTTY; /* Bad/unsupported command */
         break;
diff --git a/drivers/mtd/rammtd.c b/drivers/mtd/rammtd.c
index bacc389..47c80ab 100644
--- a/drivers/mtd/rammtd.c
+++ b/drivers/mtd/rammtd.c
@@ -410,6 +410,15 @@ static int ram_ioctl(FAR struct mtd_dev_s *dev, int cmd, unsigned long arg)
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = CONFIG_RAMMTD_ERASESTATE;
+
+          ret = OK;
+        }
+        break;
+
       default:
         ret = -ENOTTY; /* Bad command */
         break;
diff --git a/drivers/mtd/s25fl1.c b/drivers/mtd/s25fl1.c
index 91c4e96..dcf6d2a 100644
--- a/drivers/mtd/s25fl1.c
+++ b/drivers/mtd/s25fl1.c
@@ -1477,6 +1477,15 @@ static int s25fl1_ioctl(FAR struct mtd_dev_s *dev,
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = S25FL1_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       default:
         ret = -ENOTTY; /* Bad/unsupported command */
         break;
diff --git a/drivers/mtd/sector512.c b/drivers/mtd/sector512.c
index f670f9d..cad2b82 100644
--- a/drivers/mtd/sector512.c
+++ b/drivers/mtd/sector512.c
@@ -557,6 +557,15 @@ static int s512_ioctl(FAR struct mtd_dev_s *dev, int cmd, unsigned long arg)
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = CONFIG_MTD_SECT512_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       case MTDIOC_XIPBASE:
       default:
         ret = -ENOTTY; /* Bad command */
diff --git a/drivers/mtd/sst25.c b/drivers/mtd/sst25.c
index 8cde8ea..4e03389 100644
--- a/drivers/mtd/sst25.c
+++ b/drivers/mtd/sst25.c
@@ -1205,6 +1205,15 @@ static int sst25_ioctl(FAR struct mtd_dev_s *dev, int cmd, unsigned long arg)
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = SST25_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       case MTDIOC_XIPBASE:
       default:
         ret = -ENOTTY; /* Bad command */
diff --git a/drivers/mtd/w25.c b/drivers/mtd/w25.c
index a430ad7..4edc64f 100644
--- a/drivers/mtd/w25.c
+++ b/drivers/mtd/w25.c
@@ -1333,6 +1333,15 @@ static int w25_ioctl(FAR struct mtd_dev_s *dev, int cmd, unsigned long arg)
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = W25_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       case MTDIOC_XIPBASE:
       default:
         ret = -ENOTTY; /* Bad command */
diff --git a/drivers/mtd/w25qxxxjv.c b/drivers/mtd/w25qxxxjv.c
index 830a814..b371ce6 100644
--- a/drivers/mtd/w25qxxxjv.c
+++ b/drivers/mtd/w25qxxxjv.c
@@ -1437,6 +1437,15 @@ static int w25qxxxjv_ioctl(FAR struct mtd_dev_s *dev,
         }
         break;
 
+      case MTDIOC_ERASESTATE:
+        {
+          FAR uint8_t *result = (FAR uint8_t *)arg;
+          *result = W25QXXXJV_ERASED_STATE;
+
+          ret = OK;
+        }
+        break;
+
       default:
         ret = -ENOTTY; /* Bad/unsupported command */
         break;