Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8cd79216 authored by Artem B. Bityuckiy's avatar Artem B. Bityuckiy Committed by Thomas Gleixner
Browse files

[JFFS2] Fix NOR only compile



Fix the bug that caouses problems when compiling for NOR.
We read  a newly erased block so we don't need to check ECC.

Define jffs2_is_writebuffered as zero if there is no wbuf.

Signed-off-by: default avatarArtem B. Bityuckiy <dedekind@infradead.org>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent c25bb1f5
Loading
Loading
Loading
Loading
+2 −5
Original line number Original line Diff line number Diff line
@@ -7,7 +7,7 @@
 *
 *
 * For licensing information, see the file 'LICENCE' in this directory.
 * For licensing information, see the file 'LICENCE' in this directory.
 *
 *
 * $Id: erase.c,v 1.75 2005/04/05 12:51:54 dedekind Exp $
 * $Id: erase.c,v 1.76 2005/05/03 15:11:40 dedekind Exp $
 *
 *
 */
 */


@@ -332,10 +332,7 @@ static void jffs2_mark_erased_block(struct jffs2_sb_info *c, struct jffs2_eraseb


			bad_offset = ofs;
			bad_offset = ofs;


			if (!jffs2_is_writebuffered(c) || !jffs2_cleanmarker_oob(c))
			ret = c->mtd->read(c->mtd, ofs, readlen, &retlen, ebuf);
			ret = c->mtd->read(c->mtd, ofs, readlen, &retlen, ebuf);
			else
				ret = c->mtd->read_ecc(c->mtd, ofs, readlen, &retlen, ebuf, NULL, c->oobinfo);


			if (ret) {
			if (ret) {
				printk(KERN_WARNING "Read of newly-erased block at 0x%08x failed: %d. Putting on bad_list\n", ofs, ret);
				printk(KERN_WARNING "Read of newly-erased block at 0x%08x failed: %d. Putting on bad_list\n", ofs, ret);
+3 −2
Original line number Original line Diff line number Diff line
@@ -7,7 +7,7 @@
 *
 *
 * For licensing information, see the file 'LICENCE' in this directory.
 * For licensing information, see the file 'LICENCE' in this directory.
 *
 *
 * $Id: os-linux.h,v 1.54 2005/02/09 09:23:53 pavlov Exp $
 * $Id: os-linux.h,v 1.56 2005/05/03 15:19:00 dedekind Exp $
 *
 *
 */
 */


@@ -99,11 +99,11 @@ static inline void jffs2_init_inode_info(struct jffs2_inode_info *f)




#define jffs2_is_readonly(c) (OFNI_BS_2SFFJ(c)->s_flags & MS_RDONLY)
#define jffs2_is_readonly(c) (OFNI_BS_2SFFJ(c)->s_flags & MS_RDONLY)
#define jffs2_is_writebuffered(c) (c->wbuf != NULL)


#ifndef CONFIG_JFFS2_FS_WRITEBUFFER
#ifndef CONFIG_JFFS2_FS_WRITEBUFFER
#define SECTOR_ADDR(x) ( ((unsigned long)(x) & ~(c->sector_size-1)) )
#define SECTOR_ADDR(x) ( ((unsigned long)(x) & ~(c->sector_size-1)) )
#define jffs2_can_mark_obsolete(c) (1)
#define jffs2_can_mark_obsolete(c) (1)
#define jffs2_is_writebuffered(c) (0)
#define jffs2_cleanmarker_oob(c) (0)
#define jffs2_cleanmarker_oob(c) (0)
#define jffs2_write_nand_cleanmarker(c,jeb) (-EIO)
#define jffs2_write_nand_cleanmarker(c,jeb) (-EIO)


@@ -125,6 +125,7 @@ static inline void jffs2_init_inode_info(struct jffs2_inode_info *f)


#else /* NAND and/or ECC'd NOR support present */
#else /* NAND and/or ECC'd NOR support present */


#define jffs2_is_writebuffered(c) (c->wbuf != NULL)
#define SECTOR_ADDR(x) ( ((unsigned long)(x) / (unsigned long)(c->sector_size)) * c->sector_size )
#define SECTOR_ADDR(x) ( ((unsigned long)(x) / (unsigned long)(c->sector_size)) * c->sector_size )
#define jffs2_can_mark_obsolete(c) ((c->mtd->type == MTD_NORFLASH && !(c->mtd->flags & MTD_ECC)) || c->mtd->type == MTD_RAM)
#define jffs2_can_mark_obsolete(c) ((c->mtd->type == MTD_NORFLASH && !(c->mtd->flags & MTD_ECC)) || c->mtd->type == MTD_RAM)
#define jffs2_cleanmarker_oob(c) (c->mtd->type == MTD_NANDFLASH)
#define jffs2_cleanmarker_oob(c) (c->mtd->type == MTD_NANDFLASH)