hc
2025-02-14 bbb9540dc49f70f6b703d1c8d1b85fa5f602d86e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
Qualcomm Technologies, Inc. FastRPC Driver
 
The FastRPC 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.
 
- compatible:
   Usage: required
   Value type: <stringlist>
   Definition: must be "qcom,fastrpc"
 
- label
   Usage: required
   Value type: <string>
   Definition: should specify the dsp domain name this fastrpc
   corresponds to. must be one of this: "adsp", "mdsp", "sdsp", "cdsp"
 
- #address-cells
   Usage: required
   Value type: <u32>
   Definition: Must be 1
 
- #size-cells
   Usage: required
   Value type: <u32>
   Definition: Must be 0
 
= COMPUTE BANKS
Each subnode of the Fastrpc represents compute context banks available
on the dsp.
- All Compute context banks MUST contain the following properties:
 
- compatible:
   Usage: required
   Value type: <stringlist>
   Definition: must be "qcom,fastrpc-compute-cb"
 
- reg
   Usage: required
   Value type: <u32>
   Definition: Context Bank ID.
 
- qcom,nsessions:
   Usage: Optional
   Value type: <u32>
   Defination: A value indicating how many sessions can share this
           context bank. Defaults to 1 when this property
           is not specified.
 
Example:
 
adsp-pil {
   compatible = "qcom,msm8996-adsp-pil";
   ...
   smd-edge {
       label = "lpass";
       fastrpc {
           compatible = "qcom,fastrpc";
           qcom,smd-channels = "fastrpcsmd-apps-dsp";
           label = "adsp";
           #address-cells = <1>;
           #size-cells = <0>;
 
           cb@1 {
               compatible = "qcom,fastrpc-compute-cb";
               reg = <1>;
           };
 
           cb@2 {
               compatible = "qcom,fastrpc-compute-cb";
               reg = <2>;
           };
           ...
       };
   };
};