Message ID | 20121019111558.GD25164@beef (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Oct 19, 2012 at 16:45:58, Porter, Matt wrote: > On Fri, Oct 19, 2012 at 10:26:20AM +0000, Bedia, Vaibhav wrote: [...] > > > > I didn't see all the patches that you posted on edma-dmaengine-v3 > > but I do seem them on edma-dmaengine-am33xx-v3 branch. > > I see I referenced the wrong branch in the cover letter. Thanks for > testing and noticing this. Sorry to make you hunt for the correct > branch in that repo. ;) > No problem. > https://github.com/ohporter/linux/tree/edma-dmaengine-am33xx-v3 > is indeed the correct branch for those wanting to pull this in or > grab some of the not-to-be-merged drivers I used for testing. > > > I added a couple of patches to enable earlyprintk and build the DTB > > appended kernel image uImage-dtb.am335x-evm > > > > Here's what i see > > > > [...] > > <snip> > > > [ 0.175354] edma: probe of 49000000.edma failed with error -16 > > I missed an uninitialized pdata case in the bug fixes mentioned in > the changelog and the folks previously failing the same way didn't > hit the case I suspect you are hitting. Can you try this and let me > know how it works? > That doesn't help :( Looking at the original crash log, I suspect something is not correct with the irq portion, probably in the DT or the driver. "genirq: Flags mismatch irq 28. 00000000 (edma) vs. 00000000 (edma)" The warning below that is coming due to fail case in edma_probe not tracking the request_irq status properly and but IMO that's a separate issue. BTW, I am trying this on the EVM. Regards, Vaibhav -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/arm/common/edma.c b/arch/arm/common/edma.c index b761b7a..b43b327 100644 --- a/arch/arm/common/edma.c +++ b/arch/arm/common/edma.c @@ -1619,7 +1619,7 @@ static int __init edma_probe(struct platform_device *pdev) if (node) { pdata = devm_kzalloc(dev, - sizeof(struct edma_soc_info), + EDMA_MAX_CC*sizeof(struct edma_soc_info), GFP_KERNEL); edma_of_parse_dt(dev, node, pdata); info = &pdata;