public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH] [MTD] NAND: Wrong calculation of page number in nand_block_bad()
@ 2007-04-27 11:19 Knobloch, Thomas
  2007-04-27 17:03 ` Thomas Gleixner
  0 siblings, 1 reply; 5+ messages in thread
From: Knobloch, Thomas @ 2007-04-27 11:19 UTC (permalink / raw)
  To: linux-mtd


In case that there is no memory based bad block table available the
function nand_block_checkbad() in drivers/mtd/nand/nand_base.c will call
nand_block_bad() directly. When parameter 'getchip' is set to zero,
nand_block_bad() will not right shift the offset to calculate the
correct page number.

Signed-off-by: Thomas Knobloch <knobloch@siemens.com>

diff -uNr a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
--- a/drivers/mtd/nand/nand_base.c	2007-04-27 12:44:23.345198284
+0200
+++ b/drivers/mtd/nand/nand_base.c	2007-04-27 12:46:57.916226928
+0200
@@ -312,7 +312,7 @@
 		/* Select the NAND device */
 		chip->select_chip(mtd, chipnr);
 	} else
-		page = (int)ofs;
+		page = (int)(ofs >> chip->page_shift);
 
 	if (chip->options & NAND_BUSWIDTH_16) {
 		chip->cmdfunc(mtd, NAND_CMD_READOOB, chip->badblockpos &
0xFE,

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2007-05-02 17:48 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-27 11:19 [PATCH] [MTD] NAND: Wrong calculation of page number in nand_block_bad() Knobloch, Thomas
2007-04-27 17:03 ` Thomas Gleixner
2007-05-02 12:14   ` AW: [PATCH] [MTD] NAND: Wrong calculation of page number innand_block_bad() Knobloch, Thomas
2007-05-02 15:18     ` Thomas Gleixner
2007-05-02 17:48       ` Thomas Knobloch

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox