summaryrefslogtreecommitdiffstats
path: root/drivers/mtd
diff options
context:
space:
mode:
authorBarry Song <barry.song@analog.com>2010-08-05 17:07:42 +0200
committerDavid Woodhouse <David.Woodhouse@intel.com>2010-08-05 17:14:09 +0200
commitfd508da2208696db146cd1be2bb2e8b799f6e3a2 (patch)
treec94f40fb8afa74e5ed22d0823478455a0c431a21 /drivers/mtd
parentmtd: Blackfin NFC: fix raw page write/read handling (diff)
downloadlinux-fd508da2208696db146cd1be2bb2e8b799f6e3a2.tar.xz
linux-fd508da2208696db146cd1be2bb2e8b799f6e3a2.zip
mtd: Blackfin NFC: make sure to check NAND_ALE in cmd_ctrl
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>
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/nand/bf5xx_nand.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/nand/bf5xx_nand.c b/drivers/mtd/nand/bf5xx_nand.c
index ca39819982bf..5c999e01db6f 100644
--- a/drivers/mtd/nand/bf5xx_nand.c
+++ b/drivers/mtd/nand/bf5xx_nand.c
@@ -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();
}