]> git.baikalelectronics.ru Git - uboot.git/commit
firmware: scmi: Add OP-TEE transport
authorEtienne Carriere <etienne.carriere@linaro.org>
Tue, 9 Nov 2021 16:08:24 +0000 (17:08 +0100)
committerTom Rini <trini@konsulko.com>
Tue, 23 Nov 2021 18:54:43 +0000 (13:54 -0500)
commiteb4ef57f6a50b3508620f95f5c412fcd77d55d9c
treea23f35a4e99a20ff11561fc3b59c79eae0ca526a
parente5880913201bb68f7f53bf06573f9233e347e6bb
firmware: scmi: Add OP-TEE transport

This change implements an SCMI transport for agent interfacing the
OP-TEE SCMI service. OP-TEE provides an SCMI PTA (Pseudo-TA) for
non-secure world to send SCMI messages over an identified channel.
The driver implemented here uses a SMT shared memory for passing
messages between client and server.

The implementation opens and releases channel resources for each
passed SCMI message so that resources allocated (sessions) or
registered (shared memory areas) in OP-TEE firmware are released for
example before relocation as the driver will likely allocate/register
them back when probed after relocation.

The integration of the driver using dedicated config switch
CONFIG_SCMI_AGENT_OPTEE is designed on the model posted to the
U-Boot ML by Patrick Delaunay [1].

Link: [1] https://lore.kernel.org/all/20211028191222.v3.4.Ib2e58ee67f4d023823d8b5404332dc4d7e847277@changeid/
Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
Cc: Wolfgang Denk <wd@denx.de>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
drivers/firmware/scmi/Kconfig
drivers/firmware/scmi/Makefile
drivers/firmware/scmi/optee_agent.c [new file with mode: 0644]