CHROMIUM: WAR: drivers: soc: qcom: TrustZone user interface
This driver allocates an EL1 page of coherent memory visible to the Trust Zone executing at EL3. The buffer can be read and written from userspace by opening /dev/qcom_tz_mem. The driver supports multiple opens from different clients runing at EL0 but serializes all read and write requests. It also registers with the TZ to be notified of XPU interrupts happening in the EL3. Only support for 64bit SMC calls have been added. 1: Register IRQ: Owner: OEM Service: QCOM_SCM_SVC_OEM 0x00 Command: QCOM_SCM_USR_REGISTER_IRQ 0x02 reg[0] : IRQ Number 2: Read buffer Owner: OEM Service: QCOM_SCM_SVC_OEM 0x00 Command: QCOM_SCM_USR_READ 0x01 reg[0]: buffer physical address reg[1]: length requested 3: Write buffer Owner: OEM Service: QCOM_SCM_SVC_OEM 0x00 Command: QCOM_SCM_USR_WRITE 0x00 reg[0]: buffer physical address reg[1]: length requested BUG=b:132310400 TEST=Verifying XPU Violation in both trusted & Untrusted modes. (cherry picked from commit 7e1d31b4c18a145c56719c98bd19c59578759985 https://github.com/ldts/qualcomm-lt-kernel/commits/chromiumos-4.14-r4/trust-zone-release ) Change-Id: I7e772000dc803375790d6a938f2f606a1e56faea Signed-off-by:Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org> Signed-off-by:
Praveen Koya <pkoya@codeaurora.org> Signed-off-by:
Vamsi Singamsetty <vamssi@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1643390 Reviewed-by:
Julan Hsu <julanhsu@google.com> Tested-by:
Julan Hsu <julanhsu@google.com> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org>
Loading
Please sign in to comment