summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/nand/fsl_upm.c
diff options
context:
space:
mode:
authorRoel Kluin <roel.kluin@gmail.com>2009-11-03 20:49:18 +0100
committerDavid Woodhouse <David.Woodhouse@intel.com>2009-11-30 10:50:46 +0100
commit35016dd7e92cf0eb5ae2e811445dd52320c348d0 (patch)
treeb836cd329ed1fae21e323f9eee9c15c012423a62 /drivers/mtd/nand/fsl_upm.c
parentmtd: m25p80: make command buffer DMA-safe (diff)
downloadlinux-35016dd7e92cf0eb5ae2e811445dd52320c348d0.tar.xz
linux-35016dd7e92cf0eb5ae2e811445dd52320c348d0.zip
mtd: ensure index is positive
The index is signed, make sure it is not negative when we read the array element. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/mtd/nand/fsl_upm.c')
-rw-r--r--drivers/mtd/nand/fsl_upm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/nand/fsl_upm.c b/drivers/mtd/nand/fsl_upm.c
index d120cd8d7267..071a60cb4204 100644
--- a/drivers/mtd/nand/fsl_upm.c
+++ b/drivers/mtd/nand/fsl_upm.c
@@ -112,7 +112,7 @@ static void fun_select_chip(struct mtd_info *mtd, int mchip_nr)
if (mchip_nr == -1) {
chip->cmd_ctrl(mtd, NAND_CMD_NONE, 0 | NAND_CTRL_CHANGE);
- } else if (mchip_nr >= 0) {
+ } else if (mchip_nr >= 0 && mchip_nr < NAND_MAX_CHIPS) {
fun->mchip_number = mchip_nr;
chip->IO_ADDR_R = fun->io_base + fun->mchip_offsets[mchip_nr];
chip->IO_ADDR_W = chip->IO_ADDR_R;