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