diff options
author | Felix Fietkau <nbd@openwrt.org> | 2014-03-26 10:50:09 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2014-03-26 10:50:09 +0000 |
commit | d7a9700570eb6d3e55777cda1ae1503000692bb9 (patch) | |
tree | 8b5e673dcb2d98876d031a93934705a34c3336b6 /package/system/mtd/src/mtd.h | |
parent | 58ca40c218871497e81d4cffacea10bef2c265bf (diff) | |
download | master-187ad058-d7a9700570eb6d3e55777cda1ae1503000692bb9.tar.gz master-187ad058-d7a9700570eb6d3e55777cda1ae1503000692bb9.tar.bz2 master-187ad058-d7a9700570eb6d3e55777cda1ae1503000692bb9.zip |
mtd: add support for bad blocks in NAND flash
NAND flash is very likely to contain bad blocks.
Currently, mtd and therefore sysupgrade fails when it encounters a single bad block, potentially leaving an unbootable system.
This patch allows the mtd utility to skip bad blocks in NAND flash and complete sysupgrade successfully.
Patch by: Matthew Redfearn <matt.redfearn@nxp.com>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40021 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/system/mtd/src/mtd.h')
-rw-r--r-- | package/system/mtd/src/mtd.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/package/system/mtd/src/mtd.h b/package/system/mtd/src/mtd.h index c2133fc37c..d94f394396 100644 --- a/package/system/mtd/src/mtd.h +++ b/package/system/mtd/src/mtd.h @@ -15,6 +15,7 @@ extern int erasesize; extern int mtd_open(const char *mtd, bool block); extern int mtd_check_open(const char *mtd); +extern int mtd_block_is_bad(int fd, int offset); extern int mtd_erase_block(int fd, int offset); extern int mtd_write_buffer(int fd, const char *buf, int offset, int length); extern int mtd_write_jffs2(const char *mtd, const char *filename, const char *dir); |