Commit cfd162f6 authored by Peng Fan's avatar Peng Fan Committed by Jassi Brar
Browse files

mailbox: imx: extend irq to an array



To i.MX93 S401 MU, there are two interrupts: rx full and tx empty.
So extend irq to an array to prepare i.MX93 S401 MU support.

Signed-off-by: default avatarPeng Fan <peng.fan@nxp.com>
Signed-off-by: default avatarJassi Brar <jaswinder.singh@linaro.org>
parent 241aba6c
Loading
Loading
Loading
Loading
+7 −7
Original line number Original line Diff line number Diff line
@@ -80,7 +80,7 @@ struct imx_mu_priv {
	struct imx_mu_con_priv  con_priv[IMX_MU_CHANS];
	struct imx_mu_con_priv  con_priv[IMX_MU_CHANS];
	const struct imx_mu_dcfg	*dcfg;
	const struct imx_mu_dcfg	*dcfg;
	struct clk		*clk;
	struct clk		*clk;
	int			irq;
	int			irq[IMX_MU_CHANS];
	bool			suspend;
	bool			suspend;


	u32 xcr[4];
	u32 xcr[4];
@@ -551,11 +551,11 @@ static int imx_mu_startup(struct mbox_chan *chan)
	if (!priv->dev->pm_domain)
	if (!priv->dev->pm_domain)
		irq_flag |= IRQF_NO_SUSPEND;
		irq_flag |= IRQF_NO_SUSPEND;


	ret = request_irq(priv->irq, imx_mu_isr, irq_flag,
	ret = request_irq(priv->irq[0], imx_mu_isr, irq_flag,
			  cp->irq_desc, chan);
			  cp->irq_desc, chan);
	if (ret) {
	if (ret) {
		dev_err(priv->dev,
		dev_err(priv->dev,
			"Unable to acquire IRQ %d\n", priv->irq);
			"Unable to acquire IRQ %d\n", priv->irq[0]);
		return ret;
		return ret;
	}
	}


@@ -598,7 +598,7 @@ static void imx_mu_shutdown(struct mbox_chan *chan)
		break;
		break;
	}
	}


	free_irq(priv->irq, chan);
	free_irq(priv->irq[0], chan);
	pm_runtime_put_sync(priv->dev);
	pm_runtime_put_sync(priv->dev);
}
}


@@ -762,9 +762,9 @@ static int imx_mu_probe(struct platform_device *pdev)
	if (IS_ERR(priv->base))
	if (IS_ERR(priv->base))
		return PTR_ERR(priv->base);
		return PTR_ERR(priv->base);


	priv->irq = platform_get_irq(pdev, 0);
	priv->irq[0] = platform_get_irq(pdev, 0);
	if (priv->irq < 0)
	if (priv->irq[0] < 0)
		return priv->irq;
		return priv->irq[0];


	dcfg = of_device_get_match_data(dev);
	dcfg = of_device_get_match_data(dev);
	if (!dcfg)
	if (!dcfg)