From: "Brian Norris" <computersforpeace@gmail.com>
To: "Artem Bityutskiy" <dedekind1@gmail.com>
Cc: Ricard Wanderlof <ricard.wanderlof@axis.com>,
Kevin Cernekee <cernekee@gmail.com>,
b35362@freescale.com, linux-mtd@lists.infradead.org,
Brian Norris <computersforpeace@gmail.com>,
David Woodhouse <dwmw2@infradead.org>
Subject: [PATCH 04/12] mtd: move mtd_oob_mode_t to shared kernel/user space
Date: Tue, 30 Aug 2011 18:45:39 -0700 [thread overview]
Message-ID: <1314755147-17756-5-git-send-email-computersforpeace@gmail.com> (raw)
In-Reply-To: <1314755147-17756-1-git-send-email-computersforpeace@gmail.com>
We will want to use the MTD_OOB_{PLACE,AUTO,RAW} modes in user-space
applications through the introduction of new ioctls, so we should make
this enum a shared type.
This enum is now anonymous and will be used in 8-bit fields (__u8 or
uint8_t).
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
---
drivers/mtd/onenand/onenand_base.c | 4 ++--
include/linux/mtd/mtd.h | 16 +---------------
include/mtd/mtd-abi.h | 15 +++++++++++++++
3 files changed, 18 insertions(+), 17 deletions(-)
diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c
index de98791..9edc8b1 100644
--- a/drivers/mtd/onenand/onenand_base.c
+++ b/drivers/mtd/onenand/onenand_base.c
@@ -1351,7 +1351,7 @@ static int onenand_read_oob_nolock(struct mtd_info *mtd, loff_t from,
struct mtd_ecc_stats stats;
int read = 0, thislen, column, oobsize;
size_t len = ops->ooblen;
- mtd_oob_mode_t mode = ops->mode;
+ uint8_t mode = ops->mode;
u_char *buf = ops->oobbuf;
int ret = 0, readcmd;
@@ -2074,7 +2074,7 @@ static int onenand_write_oob_nolock(struct mtd_info *mtd, loff_t to,
u_char *oobbuf;
size_t len = ops->ooblen;
const u_char *buf = ops->oobbuf;
- mtd_oob_mode_t mode = ops->mode;
+ uint8_t mode = ops->mode;
to += ops->ooboffs;
diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h
index ff7bae0..3b2c678 100644
--- a/include/linux/mtd/mtd.h
+++ b/include/linux/mtd/mtd.h
@@ -68,20 +68,6 @@ struct mtd_erase_region_info {
unsigned long *lockmap; /* If keeping bitmap of locks */
};
-/*
- * oob operation modes
- *
- * MTD_OOB_PLACE: oob data are placed at the given offset
- * MTD_OOB_AUTO: oob data are automatically placed at the free areas
- * which are defined by the ecclayout
- * MTD_OOB_RAW: mode to read oob and data without doing ECC checking
- */
-typedef enum {
- MTD_OOB_PLACE,
- MTD_OOB_AUTO,
- MTD_OOB_RAW,
-} mtd_oob_mode_t;
-
/**
* struct mtd_oob_ops - oob operation operands
* @mode: operation mode
@@ -102,7 +88,7 @@ typedef enum {
* OOB area.
*/
struct mtd_oob_ops {
- mtd_oob_mode_t mode;
+ uint8_t mode;
size_t len;
size_t retlen;
size_t ooblen;
diff --git a/include/mtd/mtd-abi.h b/include/mtd/mtd-abi.h
index 3bdda5c..af42c7a 100644
--- a/include/mtd/mtd-abi.h
+++ b/include/mtd/mtd-abi.h
@@ -45,6 +45,21 @@ struct mtd_oob_buf64 {
__u64 usr_ptr;
};
+/*
+ * oob operation modes
+ *
+ * MTD_OOB_PLACE: oob data are placed at the given offset (default)
+ * MTD_OOB_AUTO: oob data are automatically placed at the free areas
+ * which are defined by the internal ecclayout
+ * MTD_OOB_RAW: mode to read or write oob and data without doing ECC
+ * checking
+ */
+enum {
+ MTD_OOB_PLACE = 0,
+ MTD_OOB_AUTO = 1,
+ MTD_OOB_RAW = 2,
+};
+
#define MTD_ABSENT 0
#define MTD_RAM 1
#define MTD_ROM 2
--
1.7.5.4
next prev parent reply other threads:[~2011-08-31 1:49 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-31 1:45 [PATCH 00/12] mtd: various "no ECC" and MLC NAND work Brian Norris
2011-08-31 1:45 ` [PATCH 01/12] mtd: nand: initialize chip->oob_poi before write Brian Norris
2011-09-11 11:31 ` Artem Bityutskiy
2011-09-12 9:20 ` THOMSON, Adam (Adam)
2011-08-31 1:45 ` [PATCH 02/12] mtd: support writing OOB without ECC Brian Norris
2011-08-31 1:45 ` [PATCH 03/12] mtd: support reading " Brian Norris
2011-09-11 11:46 ` Artem Bityutskiy
2011-09-11 12:12 ` Artem Bityutskiy
2011-08-31 1:45 ` Brian Norris [this message]
2011-09-11 11:57 ` [PATCH 04/12] mtd: move mtd_oob_mode_t to shared kernel/user space Artem Bityutskiy
2011-09-11 12:28 ` Artem Bityutskiy
2011-09-13 22:29 ` Brian Norris
2011-08-31 1:45 ` [PATCH 05/12] mtd: rename MTD_OOB_* to MTD_OPS_* Brian Norris
2011-09-11 12:10 ` Artem Bityutskiy
2011-09-11 12:29 ` Artem Bityutskiy
2011-08-31 1:45 ` [PATCH 06/12] mtd: rename MTD_MODE_* to MTD_FILE_MODE_* Brian Norris
2011-08-31 1:45 ` [PATCH 07/12] mtd: add MEMWRITE ioctl Brian Norris
2011-09-09 16:59 ` [PATCH v2 " Brian Norris
2011-09-11 12:58 ` Artem Bityutskiy
2011-08-31 1:45 ` [PATCH 08/12] mtd: nand: document nand_chip.oob_poi Brian Norris
2011-09-11 11:58 ` Artem Bityutskiy
2011-08-31 1:45 ` [PATCH 09/12] mtd: document ABI Brian Norris
2011-09-11 12:32 ` Artem Bityutskiy
2011-08-31 1:45 ` [PATCH 10/12] mtd: nand: kill member `ops' of `struct nand_chip' Brian Norris
2011-09-11 12:35 ` Artem Bityutskiy
2011-08-31 1:45 ` [PATCH 11/12] mtd: kill old field for `struct mtd_info_user' Brian Norris
2011-09-11 12:35 ` Artem Bityutskiy
2011-08-31 1:45 ` [PATCH 12/12] mtd: nand: free allocated memory Brian Norris
2011-09-11 12:07 ` Artem Bityutskiy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1314755147-17756-5-git-send-email-computersforpeace@gmail.com \
--to=computersforpeace@gmail.com \
--cc=b35362@freescale.com \
--cc=cernekee@gmail.com \
--cc=dedekind1@gmail.com \
--cc=dwmw2@infradead.org \
--cc=linux-mtd@lists.infradead.org \
--cc=ricard.wanderlof@axis.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.