History log of /optee_os/core/drivers/scmi-msg/smt.c (Results 1 – 11 of 11)
Revision Date Author Comments
# 3f7122d9 15-Jan-2024 Etienne Carriere <etienne.carriere@foss.st.com>

drivers: scmi_msg: fix size_t trace format

Fix format specifier for size_t type argument.

Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@f

drivers: scmi_msg: fix size_t trace format

Fix format specifier for size_t type argument.

Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...


# 4a382700 29-Apr-2022 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: move entry functions to generic entry

Moves SCMI channel management entry helper functions from smt.c to
generic source file entry.c. This change will ease integration of
other SC

drivers: scmi-msg: move entry functions to generic entry

Moves SCMI channel management entry helper functions from smt.c to
generic source file entry.c. This change will ease integration of
other SCMI shared memory message passing protocol.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


# 598c63d3 10-May-2022 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: rename chan to channel

Renames local variables chan to channel in smt.c.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@li

drivers: scmi-msg: rename chan to channel

Renames local variables chan to channel in smt.c.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


# ae07e7ef 29-Apr-2022 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: handle invalid channels

Changes implementation channel_to_smt_hdr() of SMT message management
in scmi-msg driver to support being called with invalid channel ID
to relax implement

drivers: scmi-msg: handle invalid channels

Changes implementation channel_to_smt_hdr() of SMT message management
in scmi-msg driver to support being called with invalid channel ID
to relax implementation. On contrary, scmi_smt_init_agent_channel()
is expected to be called only for valid SMT channels.

By the way, with this change, scmi_entry_smt() read SMT header status
from shared memory after channel in successfully claimed, not before.
The change does not affect the communication and makes the implementation
more consistent. For consistency, I also rename local variables chan to
channel to be more explicit.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


# d9b0a06d 25-Apr-2022 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: rename secure buffer size macros

Renames macro SCMI_PLAYLOAD_MAX to SCMI_SEC_PAYLOAD_SIZE and
SCMI_PLAYLOAD_U32_MAX to SCMI_PAYLOAD_U32_SIZE to fix typo in macro name
(play to pay

drivers: scmi-msg: rename secure buffer size macros

Renames macro SCMI_PLAYLOAD_MAX to SCMI_SEC_PAYLOAD_SIZE and
SCMI_PLAYLOAD_U32_MAX to SCMI_PAYLOAD_U32_SIZE to fix typo in macro name
(play to pay) and make it clear that SCMI_SEC_PAYLOAD_SIZE is the size
of the secure buffer used to store a secure copy of the input SCMI
message payload, that is expected small.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


# 5c34a982 25-Apr-2022 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: rename channel entry lock functions

Renames scmi_channel_set_busy() and scmi_channel_release_busy()
to scmi_msg_claim_channel() and scmi_msg_release_channel(). This
change also mo

drivers: scmi-msg: rename channel entry lock functions

Renames scmi_channel_set_busy() and scmi_channel_release_busy()
to scmi_msg_claim_channel() and scmi_msg_release_channel(). This
change also moves the implementation from smt.c to entry.c in
the scmi-msg driver for alternate mailbox memory protocol support.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


# c2e4eb43 23-May-2021 Anton Rybakov <a.rybakov@omp.ru>

core_mmu: fix phys_to_virt() to check length

phys_to_virt() function without length parameter doesn`t
always have ability to find the correct mapping for
requested physical address. This is because

core_mmu: fix phys_to_virt() to check length

phys_to_virt() function without length parameter doesn`t
always have ability to find the correct mapping for
requested physical address. This is because physical
address can be mapped in the same time in different virtual
regions with different length. So the first found region
which contains the requested physical address possibly
doesn`t have enough mapped data. This is fixed by adding
the length parameter to phys_to_virt() function. Length
parameter can be set to 1 if caller knows that requested
(pa + len) doesn`t cross mapping granule boundary.

core_mmu_get_va() and io_pa_or_va() functions now are
take length parameter too as they based on phys_to_virt()
in case of MMU enabled.

Signed-off-by: Anton Rybakov <a.rybakov@omp.ru>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Tested-by: Etienne Carriere <etienne.carriere@linaro.org> (stm32mp1-157C_DK2)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6dlsabreauto)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6dlsabresd)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6qpsabreauto)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6sllevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6ulevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6ullevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx6ulzevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx7dsabresd)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx7ulpevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mmevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mnevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mqevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8mpevk)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8qmmek)
Tested-by: Clement Faure <clement.faure@nxp.com> (imx-mx8qxpmek)

show more ...


# 48f04743 07-Apr-2021 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: add scmi_smt_set_shared_buffer()

Dynamically set/release SCMI SMT shared buffer reference. This can be
used when the caller passes the SCMI SMT shared memory reference as part
of

drivers: scmi-msg: add scmi_smt_set_shared_buffer()

Dynamically set/release SCMI SMT shared buffer reference. This can be
used when the caller passes the SCMI SMT shared memory reference as part
of OP-TEE invocation parameters instead of using a statically allocated
buffer.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jerome Forissier <jerome@forissier.org>

show more ...


# 9ed56ecd 05-Apr-2021 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: stub exported API functions

Stub exported API functions from SCMI message drivers to make
the implementation more flexible.

Signed-off-by: Etienne Carriere <etienne.carriere@lina

drivers: scmi-msg: stub exported API functions

Stub exported API functions from SCMI message drivers to make
the implementation more flexible.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Jerome Forissier <jerome@forissier.org>

show more ...


# 659a1f88 09-Mar-2021 Etienne Carriere <etienne.carriere@linaro.org>

drivers: scmi-msg: rename agent_id to channel_id

Rename agent_id reference to channel_id to avoid confusion with the
agent identifiers used in SCMI protocol to identify agent, whereas
the drivers on

drivers: scmi-msg: rename agent_id to channel_id

Rename agent_id reference to channel_id to avoid confusion with the
agent identifiers used in SCMI protocol to identify agent, whereas
the drivers only reference an SCMI channel, whatever the agent ID
associated with the channel and knowing that an SCMI agent can have
several channels to communicate with the SCMI platform/server.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Jerome Forissier <jerome@forissier.org>

show more ...


# a58c4d70 16-Dec-2019 Etienne Carriere <etienne.carriere@linaro.org>

drivers/scmi-msg: smt entry points for incoming messages

This change implements SCMI channels for reading a SCMI message from a
shared memory and call the SCMI message drivers to route the message
t

drivers/scmi-msg: smt entry points for incoming messages

This change implements SCMI channels for reading a SCMI message from a
shared memory and call the SCMI message drivers to route the message
to the target platform services.

SMT refers to the shared memory management protocol which is used
to get/put message/response in shared memory. SMT is a 28byte header
stating shared memory state and exchanged protocol data.

The processing entry for a SCMI message can be a secure interrupt
(CFG_SCMI_MSG_SMT_INTERRUPT_ENTRY=y), and fastcall SMC
(CFG_SCMI_MSG_SMT_FASTCALL_ENTRY=y) or a threaded execution
context entry (CFG_SCMI_MSG_SMT_THREAD_ENTRY=y).

SMT description in this implementation is based on the SCP-firmware
implementation [1].

Link: [1] https://github.com/ARM-software/SCP-firmware.git

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...