summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/nand/pxa3xx_nand.c
diff options
context:
space:
mode:
authorRobert Jarzmik <robert.jarzmik@free.fr>2016-02-12 23:29:04 +0100
committerBrian Norris <computersforpeace@gmail.com>2016-03-05 04:06:41 +0100
commit9097103f06332d099c5ab06d1e7f22f4bcaca6e2 (patch)
tree81dea3454d20d1eaea0c3ee7686dede9dd6b42af /drivers/mtd/nand/pxa3xx_nand.c
parentmtd: nand: sunxi: remove direct mtd->priv accesses (diff)
downloadlinux-9097103f06332d099c5ab06d1e7f22f4bcaca6e2.tar.xz
linux-9097103f06332d099c5ab06d1e7f22f4bcaca6e2.zip
mtd: nand: pxa3xx_nand: fix dmaengine initialization
When the driver is initialized in a pure device-tree platform, the driver's probe fails allocating the dma channel : [ 525.624435] pxa3xx-nand 43100000.nand: no resource defined for data DMA [ 525.632088] pxa3xx-nand 43100000.nand: alloc nand resource failed The reason is that the DMA IO resource is not acquired through platform resources but by OF bindings. Fix this by ensuring that DMA IO resources are only queried in the non device-tree case. Fixes: 8f5ba31aa565 ("mtd: nand: pxa3xx-nand: switch to dmaengine") Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr> Acked-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Diffstat (limited to 'drivers/mtd/nand/pxa3xx_nand.c')
-rw-r--r--drivers/mtd/nand/pxa3xx_nand.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
index 56e8954dd02d..f100c4da0423 100644
--- a/drivers/mtd/nand/pxa3xx_nand.c
+++ b/drivers/mtd/nand/pxa3xx_nand.c
@@ -1795,7 +1795,7 @@ static int alloc_nand_resource(struct platform_device *pdev)
if (ret < 0)
return ret;
- if (use_dma) {
+ if (!np && use_dma) {
r = platform_get_resource(pdev, IORESOURCE_DMA, 0);
if (r == NULL) {
dev_err(&pdev->dev,