dma: mmp_pdma: add IRQF_SHARED when request irq

For some SOCes use mmp_pdma, they have several dma controllers
sharing same irq.
So add IRQF_SHARED to flag when request irq. It can make multiple
controllers share the same irq.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
This commit is contained in:
Chao Xie 2014-01-27 09:44:07 +08:00 committed by Vinod Koul
parent e3ddc97946
commit f0b5077744

View File

@ -867,8 +867,8 @@ static int mmp_pdma_chan_init(struct mmp_pdma_device *pdev, int idx, int irq)
phy->base = pdev->base; phy->base = pdev->base;
if (irq) { if (irq) {
ret = devm_request_irq(pdev->dev, irq, mmp_pdma_chan_handler, 0, ret = devm_request_irq(pdev->dev, irq, mmp_pdma_chan_handler,
"pdma", phy); IRQF_SHARED, "pdma", phy);
if (ret) { if (ret) {
dev_err(pdev->dev, "channel request irq fail!\n"); dev_err(pdev->dev, "channel request irq fail!\n");
return ret; return ret;
@ -957,8 +957,8 @@ static int mmp_pdma_probe(struct platform_device *op)
if (irq_num != dma_channels) { if (irq_num != dma_channels) {
/* all chan share one irq, demux inside */ /* all chan share one irq, demux inside */
irq = platform_get_irq(op, 0); irq = platform_get_irq(op, 0);
ret = devm_request_irq(pdev->dev, irq, mmp_pdma_int_handler, 0, ret = devm_request_irq(pdev->dev, irq, mmp_pdma_int_handler,
"pdma", pdev); IRQF_SHARED, "pdma", pdev);
if (ret) if (ret)
return ret; return ret;
} }