Thread (20 messages) 20 messages, 6 authors, 2018-07-24

[PATCH v6 5/5] mailbox: Add support for i.MX7D messaging unit

From: aisheng.dong@nxp.com (A.s. Dong)
Date: 2018-07-24 02:09:40
Also in: linux-devicetree

-----Original Message-----
From: Lucas Stach [mailto:l.stach at pengutronix.de]
Sent: Tuesday, July 24, 2018 1:20 AM
To: Oleksij Rempel <o.rempel@pengutronix.de>; Shawn Guo
[off-list ref]; Fabio Estevam [off-list ref]; Rob
Herring [off-list ref]; Mark Rutland [off-list ref]; A.s.
Dong [off-list ref]; Vladimir Zapolskiy
[off-list ref]
Cc: dl-linux-imx <redacted>; linux-arm-kernel at lists.infradead.org;
kernel at pengutronix.de; devicetree at vger.kernel.org
Subject: Re: [PATCH v6 5/5] mailbox: Add support for i.MX7D messaging unit
[...]
quoted
+}
+
+static int imx_mu_send_data(struct mbox_chan *chan, void *data) {
quoted
+	struct imx_mu_priv *priv = to_imx_mu_priv(chan->mbox);
+	struct imx_mu_con_priv *cp = chan->con_priv;
+	u32 *arg = data;
+
quoted
+	if (!imx_mu_last_tx_done(chan))
+		return -EBUSY;
+
quoted
+	imx_mu_write(priv, *arg, IMX_MU_xTRn(cp->idx));
+	imx_mu_rmw(priv, IMX_MU_xCR, IMX_MU_xSR_TEn(cp->idx), 0);
In multi-channel mode this RMW cycle needs some kind of locking. As this
register is also changed from the irq handler, this probably needs to be a
irqsave spinlock.
Good catch!
They do need to be protected.

Regards
Dong Aisheng
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help