xref: /linux/Documentation/devicetree/bindings/remoteproc/qcom,shikra-pas.yaml (revision b2128290c29902315e632ea59e0504d6bc9e9b42)
1*39176cdaSKomal Bajaj# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
2*39176cdaSKomal Bajaj%YAML 1.2
3*39176cdaSKomal Bajaj---
4*39176cdaSKomal Bajaj$id: http://devicetree.org/schemas/remoteproc/qcom,shikra-pas.yaml#
5*39176cdaSKomal Bajaj$schema: http://devicetree.org/meta-schemas/core.yaml#
6*39176cdaSKomal Bajaj
7*39176cdaSKomal Bajajtitle: Qualcomm Shikra SoC Peripheral Authentication Service
8*39176cdaSKomal Bajaj
9*39176cdaSKomal Bajajmaintainers:
10*39176cdaSKomal Bajaj  - Bibek Kumar Patro <bibek.patro@oss.qualcomm.com>
11*39176cdaSKomal Bajaj  - Komal Bajaj <komal.bajaj@oss.qualcomm.com>
12*39176cdaSKomal Bajaj
13*39176cdaSKomal Bajajdescription:
14*39176cdaSKomal Bajaj  Qualcomm Shikra SoC Peripheral Authentication Service loads and boots
15*39176cdaSKomal Bajaj  firmware on the Qualcomm DSP Hexagon cores.
16*39176cdaSKomal Bajaj
17*39176cdaSKomal Bajajproperties:
18*39176cdaSKomal Bajaj  compatible:
19*39176cdaSKomal Bajaj    enum:
20*39176cdaSKomal Bajaj      - qcom,shikra-cdsp-pas
21*39176cdaSKomal Bajaj      - qcom,shikra-lpaicp-pas
22*39176cdaSKomal Bajaj      - qcom,shikra-mpss-pas
23*39176cdaSKomal Bajaj
24*39176cdaSKomal Bajaj  reg:
25*39176cdaSKomal Bajaj    maxItems: 1
26*39176cdaSKomal Bajaj
27*39176cdaSKomal Bajaj  clocks:
28*39176cdaSKomal Bajaj    items:
29*39176cdaSKomal Bajaj      - description: XO clock
30*39176cdaSKomal Bajaj
31*39176cdaSKomal Bajaj  clock-names:
32*39176cdaSKomal Bajaj    items:
33*39176cdaSKomal Bajaj      - const: xo
34*39176cdaSKomal Bajaj
35*39176cdaSKomal Bajaj  memory-region:
36*39176cdaSKomal Bajaj    minItems: 1
37*39176cdaSKomal Bajaj    maxItems: 2
38*39176cdaSKomal Bajaj
39*39176cdaSKomal Bajaj  smd-edge: false
40*39176cdaSKomal Bajaj
41*39176cdaSKomal Bajaj  firmware-name:
42*39176cdaSKomal Bajaj    minItems: 1
43*39176cdaSKomal Bajaj    items:
44*39176cdaSKomal Bajaj      - description: Firmware name of the Hexagon core
45*39176cdaSKomal Bajaj      - description: Firmware name of the Hexagon Devicetree
46*39176cdaSKomal Bajaj
47*39176cdaSKomal Bajaj  glink-edge:
48*39176cdaSKomal Bajaj    $ref: /schemas/remoteproc/qcom,glink-edge.yaml#
49*39176cdaSKomal Bajaj    description:
50*39176cdaSKomal Bajaj      Qualcomm G-Link subnode which represents communication edge, channels
51*39176cdaSKomal Bajaj      and devices related to the remoteproc core.
52*39176cdaSKomal Bajaj    unevaluatedProperties: false
53*39176cdaSKomal Bajaj
54*39176cdaSKomal Bajaj  qcom,smem-states:
55*39176cdaSKomal Bajaj    $ref: /schemas/types.yaml#/definitions/phandle-array
56*39176cdaSKomal Bajaj    description: States used by the AP to signal the Hexagon core
57*39176cdaSKomal Bajaj    items:
58*39176cdaSKomal Bajaj      - description: Stop the remote processor
59*39176cdaSKomal Bajaj        items:
60*39176cdaSKomal Bajaj          - description: Phandle to the Shared Memory Point 2 Point device
61*39176cdaSKomal Bajaj              handling the communication with a remote processor
62*39176cdaSKomal Bajaj          - description: Single bit index to toggle in the value sent to
63*39176cdaSKomal Bajaj              the remote processor
64*39176cdaSKomal Bajaj            maximum: 32
65*39176cdaSKomal Bajaj
66*39176cdaSKomal Bajaj  qcom,smem-state-names:
67*39176cdaSKomal Bajaj    description: The names of the state bits used for SMP2P output
68*39176cdaSKomal Bajaj    items:
69*39176cdaSKomal Bajaj      - const: stop
70*39176cdaSKomal Bajaj
71*39176cdaSKomal Bajajrequired:
72*39176cdaSKomal Bajaj  - compatible
73*39176cdaSKomal Bajaj  - reg
74*39176cdaSKomal Bajaj  - memory-region
75*39176cdaSKomal Bajaj
76*39176cdaSKomal BajajallOf:
77*39176cdaSKomal Bajaj  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
78*39176cdaSKomal Bajaj
79*39176cdaSKomal Bajaj  - if:
80*39176cdaSKomal Bajaj      properties:
81*39176cdaSKomal Bajaj        compatible:
82*39176cdaSKomal Bajaj          enum:
83*39176cdaSKomal Bajaj            - qcom,shikra-cdsp-pas
84*39176cdaSKomal Bajaj            - qcom,shikra-mpss-pas
85*39176cdaSKomal Bajaj    then:
86*39176cdaSKomal Bajaj      properties:
87*39176cdaSKomal Bajaj        interrupts:
88*39176cdaSKomal Bajaj          minItems: 6
89*39176cdaSKomal Bajaj        interrupt-names:
90*39176cdaSKomal Bajaj          minItems: 6
91*39176cdaSKomal Bajaj        memory-region:
92*39176cdaSKomal Bajaj          maxItems: 1
93*39176cdaSKomal Bajaj        firmware-name:
94*39176cdaSKomal Bajaj          maxItems: 1
95*39176cdaSKomal Bajaj        power-domains:
96*39176cdaSKomal Bajaj          items:
97*39176cdaSKomal Bajaj            - description: CX power domain
98*39176cdaSKomal Bajaj        power-domain-names:
99*39176cdaSKomal Bajaj          items:
100*39176cdaSKomal Bajaj            - const: cx
101*39176cdaSKomal Bajaj
102*39176cdaSKomal Bajaj  - if:
103*39176cdaSKomal Bajaj      properties:
104*39176cdaSKomal Bajaj        compatible:
105*39176cdaSKomal Bajaj          enum:
106*39176cdaSKomal Bajaj            - qcom,shikra-lpaicp-pas
107*39176cdaSKomal Bajaj    then:
108*39176cdaSKomal Bajaj      properties:
109*39176cdaSKomal Bajaj        interrupts:
110*39176cdaSKomal Bajaj          maxItems: 5
111*39176cdaSKomal Bajaj        interrupt-names:
112*39176cdaSKomal Bajaj          maxItems: 5
113*39176cdaSKomal Bajaj        memory-region:
114*39176cdaSKomal Bajaj          minItems: 2
115*39176cdaSKomal Bajaj        firmware-name:
116*39176cdaSKomal Bajaj          minItems: 2
117*39176cdaSKomal Bajaj        power-domains: false
118*39176cdaSKomal Bajaj        power-domain-names: false
119*39176cdaSKomal Bajaj
120*39176cdaSKomal BajajunevaluatedProperties: false
121*39176cdaSKomal Bajaj
122*39176cdaSKomal Bajajexamples:
123*39176cdaSKomal Bajaj  - |
124*39176cdaSKomal Bajaj    #include <dt-bindings/clock/qcom,rpmcc.h>
125*39176cdaSKomal Bajaj    #include <dt-bindings/interconnect/qcom,icc.h>
126*39176cdaSKomal Bajaj    #include <dt-bindings/interconnect/qcom,rpm-icc.h>
127*39176cdaSKomal Bajaj    #include <dt-bindings/interconnect/qcom,shikra.h>
128*39176cdaSKomal Bajaj    #include <dt-bindings/interrupt-controller/arm-gic.h>
129*39176cdaSKomal Bajaj    #include <dt-bindings/interrupt-controller/irq.h>
130*39176cdaSKomal Bajaj    #include <dt-bindings/power/qcom-rpmpd.h>
131*39176cdaSKomal Bajaj
132*39176cdaSKomal Bajaj    remoteproc@b300000 {
133*39176cdaSKomal Bajaj        compatible = "qcom,shikra-cdsp-pas";
134*39176cdaSKomal Bajaj        reg = <0x0b300000 0x100000>;
135*39176cdaSKomal Bajaj
136*39176cdaSKomal Bajaj        interrupts-extended = <&intc GIC_SPI 265 IRQ_TYPE_EDGE_RISING>,
137*39176cdaSKomal Bajaj                              <&cdsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
138*39176cdaSKomal Bajaj                              <&cdsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
139*39176cdaSKomal Bajaj                              <&cdsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
140*39176cdaSKomal Bajaj                              <&cdsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
141*39176cdaSKomal Bajaj                              <&cdsp_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
142*39176cdaSKomal Bajaj        interrupt-names = "wdog", "fatal", "ready",
143*39176cdaSKomal Bajaj                          "handover", "stop-ack", "shutdown-ack";
144*39176cdaSKomal Bajaj
145*39176cdaSKomal Bajaj        clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
146*39176cdaSKomal Bajaj        clock-names = "xo";
147*39176cdaSKomal Bajaj
148*39176cdaSKomal Bajaj        interconnects = <&mem_noc MASTER_AMPSS_M0 RPM_ALWAYS_TAG
149*39176cdaSKomal Bajaj                         &mc_virt SLAVE_EBI_CH0 RPM_ALWAYS_TAG>;
150*39176cdaSKomal Bajaj
151*39176cdaSKomal Bajaj        power-domains = <&rpmpd RPMHPD_CX>;
152*39176cdaSKomal Bajaj        power-domain-names = "cx";
153*39176cdaSKomal Bajaj
154*39176cdaSKomal Bajaj        memory-region = <&cdsp_mem>;
155*39176cdaSKomal Bajaj
156*39176cdaSKomal Bajaj        qcom,smem-states = <&cdsp_smp2p_out 0>;
157*39176cdaSKomal Bajaj        qcom,smem-state-names = "stop";
158*39176cdaSKomal Bajaj
159*39176cdaSKomal Bajaj        firmware-name = "qcom/shikra/cdsp.mbn";
160*39176cdaSKomal Bajaj
161*39176cdaSKomal Bajaj        glink-edge {
162*39176cdaSKomal Bajaj            interrupts = <GIC_SPI 261 IRQ_TYPE_EDGE_RISING>;
163*39176cdaSKomal Bajaj            mboxes = <&apcs_glb 4>;
164*39176cdaSKomal Bajaj            qcom,remote-pid = <5>;
165*39176cdaSKomal Bajaj            label = "cdsp";
166*39176cdaSKomal Bajaj        };
167*39176cdaSKomal Bajaj    };
168