mtd: onenand: add option and variable for cache program feature
Linux-MTD Mailing List
linux-mtd at lists.infradead.org
Fri Dec 3 11:59:02 EST 2010
Gitweb: http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=3e3198f1adda8e0fbd499bde806781237d6c841f
Commit: 3e3198f1adda8e0fbd499bde806781237d6c841f
Parent: 7ddbead6e6d3c730570a215ab9a6b1d126c54d34
Author: Roman Tereshonkov <roman.tereshonkov at nokia.com>
AuthorDate: Wed Nov 3 12:55:19 2010 +0200
Committer: David Woodhouse <David.Woodhouse at intel.com>
CommitDate: Fri Dec 3 16:27:54 2010 +0000
mtd: onenand: add option and variable for cache program feature
A new option is added for cache program feature. A new variable
ongoing is introduced for onenand_chip to handle the multi-command
cache program operation.
Signed-off-by: Roman Tereshonkov <roman.tereshonkov at nokia.com>
Acked-by: Kyungmin Park <kyungmin.park at samsung.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy at nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
---
include/linux/mtd/onenand.h | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/include/linux/mtd/onenand.h b/include/linux/mtd/onenand.h
index 0c8815b..6da3fe3 100644
--- a/include/linux/mtd/onenand.h
+++ b/include/linux/mtd/onenand.h
@@ -137,6 +137,14 @@ struct onenand_chip {
void *bbm;
void *priv;
+
+ /*
+ * Shows that the current operation is composed
+ * of sequence of commands. For example, cache program.
+ * Such command status OnGo bit is checked at the end of
+ * sequence.
+ */
+ unsigned int ongoing;
};
/*
@@ -171,6 +179,9 @@ struct onenand_chip {
#define ONENAND_IS_2PLANE(this) (0)
#endif
+#define ONENAND_IS_CACHE_PROGRAM(this) \
+ (this->options & ONENAND_HAS_CACHE_PROGRAM)
+
/* Check byte access in OneNAND */
#define ONENAND_CHECK_BYTE_ACCESS(addr) (addr & 0x1)
@@ -181,6 +192,7 @@ struct onenand_chip {
#define ONENAND_HAS_UNLOCK_ALL (0x0002)
#define ONENAND_HAS_2PLANE (0x0004)
#define ONENAND_HAS_4KB_PAGE (0x0008)
+#define ONENAND_HAS_CACHE_PROGRAM (0x0010)
#define ONENAND_SKIP_UNLOCK_CHECK (0x0100)
#define ONENAND_PAGEBUF_ALLOC (0x1000)
#define ONENAND_OOBBUF_ALLOC (0x2000)
More information about the linux-mtd-cvs
mailing list