u-boot/drivers/firmware/scmi
Etienne Carriere 593eac9805 firmware: scmi: optee: use TEE shared memory for SCMI messages
Changes implementation when using TEE dynamically allocated shared
memory to synchronize with the Linux implementation where the legacy
SMT protocol cannot be used with such memory since it is expected from
device mapped memory whereas OP-TEE shared memory is cached and
hence should not be accessed using memcpy_toio()/memcpy_fromio().

This change implements the MSG shared memory protocol introduced
in Linux [1]. The protocol uses a simplified SMT header of 32bit
named MSG_SMT to carry SCMI protocol information and uses side channel
means to carry exchanged buffer size information, as TEE invocation API
parameters when used in the SCMI OP-TEE transport.

Link: [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f301bba0ca7392d16a6ea4f1d264a91f1fadea1a
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
2022-06-23 13:12:55 -04:00
..
Kconfig firmware: scmi: Add OP-TEE transport 2021-11-23 13:54:43 -05:00
mailbox_agent.c firmware: scmi: mailbox transport: use plat data, not priv data 2021-11-23 13:53:03 -05:00
Makefile firmware: scmi: Add OP-TEE transport 2021-11-23 13:54:43 -05:00
optee_agent.c firmware: scmi: optee: use TEE shared memory for SCMI messages 2022-06-23 13:12:55 -04:00
sandbox-scmi_agent.c clk: scmi: register scmi clocks with CCF 2022-03-02 17:42:06 -05:00
sandbox-scmi_devices.c sandbox: scmi: test against a single scmi agent 2022-03-02 17:42:06 -05:00
scmi_agent-uclass.c scmi: change parameter dev in devm_scmi_process_msg 2022-03-02 17:42:06 -05:00
smccc_agent.c firmware: scmi: smccc transport: simplify probe sequence 2021-11-23 13:53:03 -05:00
smt.c firmware: scmi: optee: use TEE shared memory for SCMI messages 2022-06-23 13:12:55 -04:00
smt.h firmware: scmi: optee: use TEE shared memory for SCMI messages 2022-06-23 13:12:55 -04:00