mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-09-28 09:11:34 +02:00
firmware: scmi: use multi channel in mailbox, optee and smccc agents
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@linaro.org>
This commit is contained in:
parent
db59fef0f8
commit
c08decd29e
@ -43,13 +43,9 @@ static int scmi_mbox_process_msg(struct udevice *dev,
|
|||||||
struct scmi_channel *channel,
|
struct scmi_channel *channel,
|
||||||
struct scmi_msg *msg)
|
struct scmi_msg *msg)
|
||||||
{
|
{
|
||||||
struct scmi_mbox_channel *chan = dev_get_plat(dev);
|
struct scmi_mbox_channel *chan = &channel->ref;
|
||||||
int ret;
|
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);
|
ret = scmi_write_msg_to_smt(dev, &chan->smt, msg);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -278,13 +278,10 @@ static int scmi_optee_process_msg(struct udevice *dev,
|
|||||||
struct scmi_channel *channel,
|
struct scmi_channel *channel,
|
||||||
struct scmi_msg *msg)
|
struct scmi_msg *msg)
|
||||||
{
|
{
|
||||||
|
struct scmi_optee_channel *chan = &channel->ref;
|
||||||
struct channel_session sess = { };
|
struct channel_session sess = { };
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
/* Support SCMI drivers upgraded to of_get_channel operator */
|
|
||||||
if (channel)
|
|
||||||
chan = &channel->ref;
|
|
||||||
|
|
||||||
ret = open_channel(dev, chan, &sess);
|
ret = open_channel(dev, chan, &sess);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -42,14 +42,10 @@ static int scmi_smccc_process_msg(struct udevice *dev,
|
|||||||
struct scmi_channel *channel,
|
struct scmi_channel *channel,
|
||||||
struct scmi_msg *msg)
|
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;
|
struct arm_smccc_res res;
|
||||||
int ret;
|
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);
|
ret = scmi_write_msg_to_smt(dev, &chan->smt, msg);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user