1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/remoteproc/qcom,glink-rpm-edge.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Qualcomm G-Link RPM edge 8 9description: | 10 Qualcomm G-Link edge, a FIFO based mechanism for communication with Resource 11 Power Manager (RPM) on various Qualcomm platforms. 12 13maintainers: 14 - Bjorn Andersson <andersson@kernel.org> 15 16properties: 17 compatible: 18 const: qcom,glink-rpm 19 20 label: 21 $ref: /schemas/types.yaml#/definitions/string 22 description: 23 Name of the edge, used for debugging and identification purposes. The 24 node name will be used if this is not present. 25 26 interrupts: 27 maxItems: 1 28 29 mboxes: 30 items: 31 - description: rpm_hlos mailbox in APCS 32 33 qcom,remote-pid: 34 $ref: /schemas/types.yaml#/definitions/uint32 35 description: 36 The identifier for the remote processor as known by the rest of the 37 system. 38 39 qcom,rpm-msg-ram: 40 $ref: /schemas/types.yaml#/definitions/phandle 41 description: | 42 RPM message memory resource (compatible: qcom,rpm-msg-ram). 43 44 rpm-requests: 45 type: object 46 $ref: /schemas/soc/qcom/qcom,smd-rpm.yaml# 47 unevaluatedProperties: false 48 description: 49 Qualcomm Resource Power Manager (RPM) over G-Link 50 51 properties: 52 qcom,intents: 53 $ref: /schemas/types.yaml#/definitions/uint32-matrix 54 minItems: 1 55 maxItems: 32 56 items: 57 items: 58 - description: size of each intent to preallocate 59 - description: amount of intents to preallocate 60 minimum: 1 61 description: 62 List of (size, amount) pairs describing what intents should be 63 preallocated for this virtual channel. This can be used to tweak the 64 default intents available for the channel to meet expectations of the 65 remote. 66 67 required: 68 - qcom,glink-channels 69 70required: 71 - compatible 72 - interrupts 73 - mboxes 74 75anyOf: 76 - required: 77 - qcom,remote-pid 78 - required: 79 - qcom,rpm-msg-ram 80 81additionalProperties: false 82 83examples: 84 - | 85 #include <dt-bindings/interrupt-controller/arm-gic.h> 86 87 glink-edge { 88 compatible = "qcom,glink-rpm"; 89 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; 90 mboxes = <&apcs_glb 0>; 91 qcom,rpm-msg-ram = <&rpm_msg_ram>; 92 93 rpm-requests { 94 compatible = "qcom,rpm-msm8996"; 95 qcom,glink-channels = "rpm_requests"; 96 97 /* ... */ 98 }; 99 }; 100