]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
firmware: qcom: scm: add support for object invocation
authorAmirreza Zarrabi <amirreza.zarrabi@oss.qualcomm.com>
Fri, 12 Sep 2025 04:07:41 +0000 (21:07 -0700)
committerBjorn Andersson <andersson@kernel.org>
Mon, 15 Sep 2025 13:42:53 +0000 (08:42 -0500)
commit4b700098c0fc4a76c5c1e54465c8f35e13755294
treeef4b6bf85c721520d71fea17bae8426c640338ba
parent8aa1e3a6f0ffbcfdf3bd7d87feb9090f96c54bc4
firmware: qcom: scm: add support for object invocation

Qualcomm TEE (QTEE) hosts Trusted Applications (TAs) and services in
the secure world, accessed via objects. A QTEE client can invoke these
objects to request services. Similarly, QTEE can request services from
the nonsecure world using objects exported to the secure world.

Add low-level primitives to facilitate the invocation of objects hosted
in QTEE, as well as those hosted in the nonsecure world.

If support for object invocation is available, the qcom_scm allocates
a dedicated child platform device. The driver for this device communicates
with QTEE using low-level primitives.

Tested-by: Neil Armstrong <neil.armstrong@linaro.org>
Tested-by: Harshal Dev <quic_hdev@quicinc.com>
Signed-off-by: Amirreza Zarrabi <amirreza.zarrabi@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250911-qcom-tee-using-tee-ss-without-mem-obj-v12-2-17f07a942b8d@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
drivers/firmware/qcom/qcom_scm.c
drivers/firmware/qcom/qcom_scm.h
include/linux/firmware/qcom/qcom_scm.h