diff options
author | Mika Korhonen <ext-mika.2.korhonen@nokia.com> | 2009-10-23 07:50:43 +0200 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2009-11-30 09:43:18 +0000 |
commit | 72073027ee95d059eb5a064da4a978efab36d4ab (patch) | |
tree | a7ee5f24092602d7fda6c34db6781c3de2d415d8 /include/linux/mtd | |
parent | 73885aeaca046a21183db598c2da46529e46fdab (diff) | |
download | kernel_samsung_espresso10-72073027ee95d059eb5a064da4a978efab36d4ab.zip kernel_samsung_espresso10-72073027ee95d059eb5a064da4a978efab36d4ab.tar.gz kernel_samsung_espresso10-72073027ee95d059eb5a064da4a978efab36d4ab.tar.bz2 |
mtd: OneNAND: multiblock erase support
Add support for multiblock erase command. OneNANDs (excluding Flex-OneNAND)
are capable of simultaneous erase of up to 64 eraseblocks which is much faster.
This changes the erase requests for regions covering multiple eraseblocks
to be performed using multiblock erase.
Signed-off-by: Mika Korhonen <ext-mika.2.korhonen@nokia.com>
Reviewed-by: Adrian Hunter <adrian.hunter@nokia.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'include/linux/mtd')
-rw-r--r-- | include/linux/mtd/flashchip.h | 4 | ||||
-rw-r--r-- | include/linux/mtd/onenand_regs.h | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/mtd/flashchip.h b/include/linux/mtd/flashchip.h index f350a48..d0bf422 100644 --- a/include/linux/mtd/flashchip.h +++ b/include/linux/mtd/flashchip.h @@ -41,9 +41,11 @@ typedef enum { /* These 2 come from nand_state_t, which has been unified here */ FL_READING, FL_CACHEDPRG, - /* These 2 come from onenand_state_t, which has been unified here */ + /* These 4 come from onenand_state_t, which has been unified here */ FL_RESETING, FL_OTPING, + FL_PREPARING_ERASE, + FL_VERIFYING_ERASE, FL_UNKNOWN } flstate_t; diff --git a/include/linux/mtd/onenand_regs.h b/include/linux/mtd/onenand_regs.h index acadbf5..cd6f3b4 100644 --- a/include/linux/mtd/onenand_regs.h +++ b/include/linux/mtd/onenand_regs.h @@ -131,6 +131,8 @@ #define ONENAND_CMD_LOCK_TIGHT (0x2C) #define ONENAND_CMD_UNLOCK_ALL (0x27) #define ONENAND_CMD_ERASE (0x94) +#define ONENAND_CMD_MULTIBLOCK_ERASE (0x95) +#define ONENAND_CMD_ERASE_VERIFY (0x71) #define ONENAND_CMD_RESET (0xF0) #define ONENAND_CMD_OTP_ACCESS (0x65) #define ONENAND_CMD_READID (0x90) |