summaryrefslogtreecommitdiff
path: root/drivers/mtd
diff options
context:
space:
mode:
authorHaojian Zhuang <haojian.zhuang@marvell.com>2009-09-10 06:27:23 (GMT)
committerEric Miao <eric.y.miao@gmail.com>2009-12-01 01:02:40 (GMT)
commit346e125967c39fc25263f3071dfc88224ae843f4 (patch)
tree2bb95839a96eb40d61f0bf1d94764d2c77a827f0 /drivers/mtd
parentdbf5986aed62620d3dde54e1b63889821c857675 (diff)
downloadlinux-346e125967c39fc25263f3071dfc88224ae843f4.tar.xz
pxa3xx_nand: disable nand irq in initialization
In some bootloader, IRQ is enabled. Writing nand triggers unexpected interrupts. So disable nand irq in initialization. After nand initialized and in working state, irq is controlled by nand driver. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/nand/pxa3xx_nand.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
index e75b1bf..11f3245 100644
--- a/drivers/mtd/nand/pxa3xx_nand.c
+++ b/drivers/mtd/nand/pxa3xx_nand.c
@@ -1244,6 +1244,9 @@ static int pxa3xx_nand_probe(struct platform_device *pdev)
if (ret)
goto fail_free_io;
+ /* initialize all interrupts to be disabled */
+ disable_int(info, NDSR_MASK);
+
ret = request_irq(irq, pxa3xx_nand_irq, IRQF_DISABLED,
pdev->name, info);
if (ret < 0) {