mirror of
https://github.com/Evolution-X-Devices/kernel_oneplus_sm8550-devicetrees
synced 2026-02-01 09:04:24 +00:00
dt-bindings: qdsp: device-tree documentation for fastrpc and CDSP loader
Device-tree documentation for the fastrpc nodes which contain properties and IOMMU info for the various context banks and the CDSP loader driver node which enables loading of firmware images and bringing the subsystem out of reset during boot-up. Change-Id: I35d30d7753f24960ec04ccf013c07ce7c921aaeb
This commit is contained in:
16
bindings/qdsp/msm-cdsp-loader.txt
Normal file
16
bindings/qdsp/msm-cdsp-loader.txt
Normal file
@@ -0,0 +1,16 @@
|
||||
Qualcomm Technologies, Inc. CDSP Loader Driver
|
||||
|
||||
msm-cdsp-loader driver implements a mechanism to load the Compute DSP firmware images.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: This must be "qcom,msm-cdsp-loader".
|
||||
- qcom,proc-img-to-load: CDSP firmware name, must be "cdsp".
|
||||
|
||||
Example:
|
||||
The following is an example:
|
||||
|
||||
qcom,msm-cdsp-loader {
|
||||
compatible = "qcom,cdsp-loader";
|
||||
qcom,proc-img-to-load = "cdsp";
|
||||
};
|
||||
100
bindings/qdsp/msm-fastrpc.txt
Normal file
100
bindings/qdsp/msm-fastrpc.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
Qualcomm Technologies, Inc. FastRPC Driver
|
||||
|
||||
The MSM FastRPC driver implements an IPC (Inter-Processor Communication)
|
||||
mechanism that allows for clients to transparently make remote method
|
||||
invocations across DSP and APPS boundaries. This enables developers
|
||||
to offload tasks to the DSP and free up the application processor for
|
||||
other tasks.
|
||||
|
||||
Required properties:
|
||||
- compatible : Must be one of "qcom,msm-fastrpc-adsp" or "qcom,msm-fastrpc-compute"
|
||||
|
||||
Optional properties:
|
||||
- qcom,rpc-latency-us : FastRPC QoS latency vote
|
||||
- qcom,adsp-remoteheap-vmid : FastRPC remote heap VMID list
|
||||
- qcom,secure-context-bank : Bool indicating secure FastRPC context bank.
|
||||
- qcom,fastrpc-legacy-remote-heap : Bool indicating hypervisor is not supported.
|
||||
- qcom,fastrpc-adsp-audio-pdr : Flag to enable ADSP Audio PDR
|
||||
- qcom,secure-domains : FastRPC secure domain configuration
|
||||
- qcom,fastrpc-adsp-sensors-pdr : Flag to enable Sensors PDR
|
||||
|
||||
Optional subnodes:
|
||||
- qcom,msm_fastrpc_compute_cb : Child nodes representing the compute context banks
|
||||
- qcom,msm-fastrpc-rpmsg : Child node for rpmsg instead of glink for IPC
|
||||
|
||||
Subnode Required properties:
|
||||
- compatible : Must be "qcom,msm-fastrpc-compute-cb"
|
||||
- label : Label describing the channel this context bank belongs to
|
||||
- iommus : A list of phandle and IOMMU specifier pairs that describe the
|
||||
IOMMU master interfaces of the device
|
||||
- dma-coherent : A flag marking a context bank as I/O coherent
|
||||
- shared-cb : A value indicating how many fastrpc sessions can share a
|
||||
context bank
|
||||
|
||||
Example:
|
||||
qcom,msm_fastrpc {
|
||||
compatible = "qcom,msm-fastrpc-compute";
|
||||
qcom,fastrpc-rpmsg;
|
||||
qcom,rpc-latency-us = <235>;
|
||||
qcom,adsp-remoteheap-vmid = <22 37>;
|
||||
qcom,fastrpc-adsp-sensors-pdr;
|
||||
|
||||
qcom,msm_fastrpc_rpmsg {
|
||||
compatible = "qcom,msm-fastrpc-rpmsg";
|
||||
qcom,glink-channels = "fastrpcglink-apps-dsp";
|
||||
intents = <0x64 64>;
|
||||
};
|
||||
|
||||
qcom,msm_fastrpc_compute_cb_1 {
|
||||
compatible = "qcom,msm-fastrpc-compute-cb";
|
||||
label = "cdsprpc-smd";
|
||||
qcom,secure-context-bank;
|
||||
iommus = <&apps_smmu 0x1401 0x0>;
|
||||
dma-coherent;
|
||||
};
|
||||
qcom,msm_fastrpc_compute_cb_2 {
|
||||
compatible = "qcom,msm-fastrpc-compute-cb";
|
||||
label = "sdsprpc-smd";
|
||||
iommus = <&apps_smmu 0x1402 0x0>;
|
||||
shared-cb = <5>;
|
||||
};
|
||||
};
|
||||
|
||||
Legacy SMMU v1/v2:
|
||||
|
||||
Required properties:
|
||||
- compatible : Must be "qcom,msm-fastprc-legacy-compute-cb"
|
||||
|
||||
Required subnode:
|
||||
- qcom,msm_fastrpc_compute_cb : Child nodes representing the compute context
|
||||
banks
|
||||
|
||||
Required subnode properties:
|
||||
- qcom,adsp-shared-phandle : phandle that describe the context bank handle
|
||||
- qcom,adsp-shared-sids : A list of SID associated with the context bank
|
||||
- qcom,virtual-addr-pool : Virtual address range that the context bank
|
||||
will be using
|
||||
|
||||
Example:
|
||||
qcom,adsprpc_domains {
|
||||
compatible = "qcom,msm-fastrpc-legacy-compute-cb";
|
||||
qcom,msm_fastrpc_compute_cb {
|
||||
qcom,adsp-shared-phandle = <&adsp_shared>;
|
||||
qcom,adsp-shared-sids = <0x8 0x9>;
|
||||
qcom,virtual-addr-pool = <0x80000000 0x7FFFFFFF>;
|
||||
};
|
||||
};
|
||||
|
||||
Remote Heap:
|
||||
|
||||
Required properties:
|
||||
- compatible : Must be "qcom,msm-adsprpc-mem-region"
|
||||
- memory-region : CMA region which is owned by this device
|
||||
- restrict-access : Blocking vote for hyp_assign_phys function call
|
||||
|
||||
Example:
|
||||
qcom,adsprpc-mem {
|
||||
compatible = "qcom,msm-adsprpc-mem-region";
|
||||
memory-region = <&adsp_mem>;
|
||||
restrict-access;
|
||||
};
|
||||
Reference in New Issue
Block a user