mtd: Blackfin NFC: make sure to check NAND_ALE in cmd_ctrl
authorBarry Song <barry.song@analog.com>
Thu, 5 Aug 2010 15:07:42 +0000 (11:07 -0400)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Thu, 5 Aug 2010 15:14:09 +0000 (16:14 +0100)
The NAND base may send some controls which are neither CLE nor ALE, so
we need to explicitly check both instead of assuming things are always
one or the other.  Otherwise, we sometimes send out illegal addresses
to the NAND device.

Signed-off-by: Barry Song <barry.song@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/mtd/nand/bf5xx_nand.c

index ca39819..5c999e0 100644 (file)
@@ -203,7 +203,7 @@ static void bf5xx_nand_hwcontrol(struct mtd_info *mtd, int cmd,
 
        if (ctrl & NAND_CLE)
                bfin_write_NFC_CMD(cmd);
-       else
+       else if (ctrl & NAND_ALE)
                bfin_write_NFC_ADDR(cmd);
        SSYNC();
 }