Lines Matching +full:ipa +full:- +full:setup +full:- +full:ready

1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/net/qcom,ipa.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Qualcomm IP Accelerator (IPA)
10 - Alex Elder <elder@kernel.org>
13 This binding describes the Qualcomm IPA. The IPA is capable of offloading
17 The IPA sits between multiple independent "execution environments,"
18 including the Application Processor (AP) and the modem. The IPA presents
20 The GSI is an integral part of the IPA, but it is logically isolated
21 and has a distinct interrupt and a separately-defined address space.
28 - |
29 -------- ---------
31 | AP +<---. .----+ Modem |
32 | +--. | | .->+ |
34 -------- | | | | ---------
36 --+-+---+-+--
38 |-----------|
40 | IPA |
42 -------------
46 const: "qcom,sdm845-ipa"
50 - description: IPA registers
51 - description: IPA shared memory
52 - description: GSI registers
54 reg-names:
56 - const: ipa-reg
57 - const: ipa-shared
58 - const: gsi
66 clock-names:
71 - description: IPA interrupt (hardware IRQ)
72 - description: GSI interrupt (hardware IRQ)
73 - description: Modem clock query interrupt (smp2p interrupt)
74 - description: Modem setup ready interrupt (smp2p interrupt)
76 interrupt-names:
78 - const: ipa
79 - const: gsi
80 - const: ipa-clock-query
81 - const: ipa-setup-ready
85 - description: Interconnect path between IPA and main memory
86 - description: Interconnect path between IPA and internal memory
87 - description: Interconnect path between IPA and the AP subsystem
89 interconnect-names:
91 - const: memory
92 - const: imem
93 - const: config
95 qcom,smem-states:
96 $ref: /schemas/types.yaml#/definitions/phandle-array
99 - description: Whether the "ipa-clock-enabled" state bit is valid
100 - description: Whether the IPA clock is enabled (if valid)
102 qcom,smem-state-names:
103 $ref: /schemas/types.yaml#/definitions/string-array
106 - const: ipa-clock-enabled-valid
107 - const: ipa-clock-enabled
109 modem-init:
113 performing early IPA initialization, including loading and
116 modem-remoteproc:
120 the modem subsystem. This is requied so the IPA driver can
123 memory-region:
124 $ref: /schemas/types.yaml#/definitions/phandle-array
132 - compatible
133 - iommus
134 - reg
135 - clocks
136 - interrupts
137 - interconnects
138 - qcom,smem-states
139 - modem-remoteproc
142 - required:
143 - modem-init
144 - required:
145 - memory-region
150 - |
151 #include <dt-bindings/interrupt-controller/irq.h>
152 #include <dt-bindings/clock/qcom,rpmh.h>
153 #include <dt-bindings/interconnect/qcom,sdm845.h>
155 smp2p-mpss {
157 ipa_smp2p_out: ipa-ap-to-modem {
158 qcom,entry-name = "ipa";
159 #qcom,smem-state-cells = <1>;
162 ipa_smp2p_in: ipa-modem-to-ap {
163 qcom,entry-name = "ipa";
164 interrupt-controller;
165 #interrupt-cells = <2>;
168 ipa@1e40000 {
169 compatible = "qcom,sdm845-ipa";
171 modem-init;
172 modem-remoteproc = <&mss_pil>;
178 reg-names = "ipa-reg",
179 "ipa-shared",
182 interrupts-extended = <&intc 0 311 IRQ_TYPE_EDGE_RISING>,
186 interrupt-names = "ipa",
188 "ipa-clock-query",
189 "ipa-setup-ready";
192 clock-names = "core";
198 interconnect-names = "memory",
202 qcom,smem-states = <&ipa_smp2p_out 0>,
204 qcom,smem-state-names = "ipa-clock-enabled-valid",
205 "ipa-clock-enabled";