diff options
author | Vitaly Wool <vwool@ru.mvista.com> | 2005-11-02 11:54:46 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@mtd.linutronix.de> | 2005-11-06 20:15:21 -0500 |
commit | 49196f3332e661ccc221734c3103115d8cd4ee49 (patch) | |
tree | a3bc3c5304dbf6945479821a124dc5ba03475fe3 /drivers/mtd | |
parent | 46d0d0fb61ec6630dc2c844e3c5bf5ef44dedcbe (diff) |
[MTD] NAND nand_base: Fix shift for bad block check (16bit devices only)
In case of an odd offset, the result was shifted by 1 instead of 8
Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers/mtd')
-rw-r--r-- | drivers/mtd/nand/nand_base.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c index 4e22317397e8..c7b1ce38c63c 100644 --- a/drivers/mtd/nand/nand_base.c +++ b/drivers/mtd/nand/nand_base.c | |||
@@ -433,7 +433,7 @@ static int nand_block_bad(struct mtd_info *mtd, loff_t ofs, int getchip) | |||
433 | this->cmdfunc (mtd, NAND_CMD_READOOB, this->badblockpos & 0xFE, page & this->pagemask); | 433 | this->cmdfunc (mtd, NAND_CMD_READOOB, this->badblockpos & 0xFE, page & this->pagemask); |
434 | bad = cpu_to_le16(this->read_word(mtd)); | 434 | bad = cpu_to_le16(this->read_word(mtd)); |
435 | if (this->badblockpos & 0x1) | 435 | if (this->badblockpos & 0x1) |
436 | bad >>= 1; | 436 | bad >>= 8; |
437 | if ((bad & 0xFF) != 0xff) | 437 | if ((bad & 0xFF) != 0xff) |
438 | res = 1; | 438 | res = 1; |
439 | } else { | 439 | } else { |