[PATCH 14/14] firmware: scmi: use multi channel in mailbox, optee and smccc agents

Etienne Carriere etienne.carriere at linaro.org
Fri May 13 08:26:22 CEST 2022


Updates .process_msg operators of the SCMI transport drivers that
supports multi-channel to use it now that drivers do provide
the reference through channel argument. These are the mailbox
agent, the optee agent and the smccc agent.

Signed-off-by: Etienne Carriere <etienne.carriere at linaro.org>
---
 drivers/firmware/scmi/mailbox_agent.c | 6 +-----
 drivers/firmware/scmi/optee_agent.c   | 5 +----
 drivers/firmware/scmi/smccc_agent.c   | 6 +-----
 3 files changed, 3 insertions(+), 14 deletions(-)

diff --git a/drivers/firmware/scmi/mailbox_agent.c b/drivers/firmware/scmi/mailbox_agent.c
index e63b67c5ee8..3efdab9e723 100644
--- a/drivers/firmware/scmi/mailbox_agent.c
+++ b/drivers/firmware/scmi/mailbox_agent.c
@@ -43,13 +43,9 @@ static int scmi_mbox_process_msg(struct udevice *dev,
 				 struct scmi_channel *channel,
 				 struct scmi_msg *msg)
 {
-	struct scmi_mbox_channel *chan = dev_get_plat(dev);
+	struct scmi_mbox_channel *chan = &channel->ref;
 	int ret;
 
-	/* Support SCMI drivers upgraded to of_get_channel operator */
-	if (channel)
-		chan = &channel->ref;
-
 	ret = scmi_write_msg_to_smt(dev, &chan->smt, msg);
 	if (ret)
 		return ret;
diff --git a/drivers/firmware/scmi/optee_agent.c b/drivers/firmware/scmi/optee_agent.c
index da5c2ec9754..2b2b8c1670a 100644
--- a/drivers/firmware/scmi/optee_agent.c
+++ b/drivers/firmware/scmi/optee_agent.c
@@ -278,13 +278,10 @@ static int scmi_optee_process_msg(struct udevice *dev,
 				  struct scmi_channel *channel,
 				  struct scmi_msg *msg)
 {
+	struct scmi_optee_channel *chan = &channel->ref;
 	struct channel_session sess = { };
 	int ret;
 
-	/* Support SCMI drivers upgraded to of_get_channel operator */
-	if (channel)
-		chan = &channel->ref;
-
 	ret = open_channel(dev, chan, &sess);
 	if (ret)
 		return ret;
diff --git a/drivers/firmware/scmi/smccc_agent.c b/drivers/firmware/scmi/smccc_agent.c
index 73a7e0a844a..bc2eb67335b 100644
--- a/drivers/firmware/scmi/smccc_agent.c
+++ b/drivers/firmware/scmi/smccc_agent.c
@@ -42,14 +42,10 @@ static int scmi_smccc_process_msg(struct udevice *dev,
 				  struct scmi_channel *channel,
 				  struct scmi_msg *msg)
 {
-	struct scmi_smccc_channel *chan = dev_get_plat(dev);
+	struct scmi_smccc_channel *chan = &channel->ref;
 	struct arm_smccc_res res;
 	int ret;
 
-	/* Support SCMI drivers upgraded to of_get_channel operator */
-	if (channel)
-		chan = &channel->ref;
-
 	ret = scmi_write_msg_to_smt(dev, &chan->smt, msg);
 	if (ret)
 		return ret;
-- 
2.25.1



More information about the U-Boot mailing list