提交 f0b50777 编写于 作者: C Chao Xie 提交者: Vinod Koul

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: NChao Xie <chao.xie@marvell.com>
Signed-off-by: NVinod Koul <vinod.koul@intel.com>
上级 e3ddc979
...@@ -867,8 +867,8 @@ static int mmp_pdma_chan_init(struct mmp_pdma_device *pdev, int idx, int irq) ...@@ -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) ...@@ -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;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册