Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

dmaengine: cppi41: Fix an Oops happening in cppi41_dma_probe()

This fix an Oops happening on all platforms using the old dt bindings
(all platforms but da8xx).
This update cppi41_dma_probe() to use the index variable which is
required to keep compatibility between old and new dt bindings.

Fixes: 8e3ba95f4190 ("dmaengine: cppi41: use managed functions devm_*()")
Reported-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Alexandre Bailon <abailon@baylibre.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>

authored by

Alexandre Bailon and committed by
Vinod Koul
eda6f4e8 d7fd724e

+3 -3
+3 -3
drivers/dma/cppi41.c
··· 1038 1038 if (index < 0) 1039 1039 return index; 1040 1040 1041 - mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); 1041 + mem = platform_get_resource(pdev, IORESOURCE_MEM, index); 1042 1042 cdd->ctrl_mem = devm_ioremap_resource(dev, mem); 1043 1043 if (IS_ERR(cdd->ctrl_mem)) 1044 1044 return PTR_ERR(cdd->ctrl_mem); 1045 1045 1046 - mem = platform_get_resource(pdev, IORESOURCE_MEM, 1); 1046 + mem = platform_get_resource(pdev, IORESOURCE_MEM, index + 1); 1047 1047 cdd->sched_mem = devm_ioremap_resource(dev, mem); 1048 1048 if (IS_ERR(cdd->sched_mem)) 1049 1049 return PTR_ERR(cdd->sched_mem); 1050 1050 1051 - mem = platform_get_resource(pdev, IORESOURCE_MEM, 2); 1051 + mem = platform_get_resource(pdev, IORESOURCE_MEM, index + 2); 1052 1052 cdd->qmgr_mem = devm_ioremap_resource(dev, mem); 1053 1053 if (IS_ERR(cdd->qmgr_mem)) 1054 1054 return PTR_ERR(cdd->qmgr_mem);