[PATCH v3 00/12] misc: fastrpc: Add missing DSP FastRPC features

From: Srinivas Kandagatla
Date: Wed Jan 26 2022 - 08:54:29 EST


This patchset adds below DSP FastRPC features that have been missing in
upstream fastrpc driver and also cleans up channel context structure with kref.

- Add ablity to reflect if the DSP domain is secure/unsecure by creating
seperate device nodes for secured domain, this would used by SE policy
to restrict applications loading process on the DSP.
- Add new IOCTL to get DSP capabilites
- Add IOCTL to support mapping memory on the DSP.
- Add support for allocating secure memory for DSP
- Handle fdlist in put args
- Handle dma fds in invoke request.

Tested this series on DragonBoard 845c with TensoFlowLite.

Changes since v2:
- Add support for Secure Memory allocations.
- added handling fdlist and dmalist in and after invoke.
- removed unnecessary debug log
- removed dependency on yaml bindings and added new bindings to .txt


Jeya R (5):
misc: fastrpc: add support for FASTRPC_IOCTL_MEM_MAP/UNMAP
misc: fastrpc: Add support to get DSP capabilities
dt-bindings: misc: add property to support non-secure DSP
misc: fastrpc: check before loading process to the DSP
arm64: dts: qcom: add non-secure domain property to fastrpc nodes

Srinivas Kandagatla (2):
misc: fastrpc: separate fastrpc device from channel context
misc: fastrpc: add secure domain support

Vamsi Krishna Gattupalli (5):
dt-bindings: misc: add fastrpc domain vmid property
misc: fastrpc: Add support to secure memory map
misc: fastrpc: Add helper function to get list and page
misc: fastrpc: Add fdlist implementation
misc: fastrpc: Add dma handle implementation

.../devicetree/bindings/misc/qcom,fastrpc.txt | 10 +
arch/arm64/boot/dts/qcom/msm8916.dtsi | 1 +
arch/arm64/boot/dts/qcom/sdm845.dtsi | 2 +
arch/arm64/boot/dts/qcom/sm8150.dtsi | 3 +
arch/arm64/boot/dts/qcom/sm8250.dtsi | 3 +
arch/arm64/boot/dts/qcom/sm8350.dtsi | 3 +
drivers/misc/fastrpc.c | 552 ++++++++++++++++--
include/uapi/misc/fastrpc.h | 81 ++-
8 files changed, 607 insertions(+), 48 deletions(-)

--
2.21.0